aboutsummaryrefslogtreecommitdiffstats
path: root/Application
diff options
context:
space:
mode:
authorLibravatar Oszkar Semerath <semerath@mit.bme.hu>2020-04-28 20:43:04 +0200
committerLibravatar Oszkar Semerath <semerath@mit.bme.hu>2020-04-28 20:43:04 +0200
commit8a7b9b436b31e6d2f5a0521a077c960ebdeb4cbe (patch)
treed525bef75519f364d637e0779f8e63d4199dee31 /Application
parentcheck expressions are mapped to WF constraints (diff)
downloadVIATRA-Generator-8a7b9b436b31e6d2f5a0521a077c960ebdeb4cbe.tar.gz
VIATRA-Generator-8a7b9b436b31e6d2f5a0521a077c960ebdeb4cbe.tar.zst
VIATRA-Generator-8a7b9b436b31e6d2f5a0521a077c960ebdeb4cbe.zip
initial commit
Diffstat (limited to 'Application')
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/.classpath9
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/.gitignore1
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/.project34
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/META-INF/MANIFEST.MF15
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/build.properties6
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup1
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/AbstractSolverLanguageIdeModule.java60
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialSolverLanguageContentAssistParser.java34
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/SolverLanguageParser.java187
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.g5882
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.tokens67
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageLexer.java1669
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.java17842
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeModule.xtend11
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeSetup.xtend20
-rw-r--r--Application/org.eclipse.viatra.solver.language.ide/xtend-gen/org/eclipse/viatra/solver/language/ide/.gitignore6
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/.classpath26
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/.gitignore1
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/.project34
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/META-INF/MANIFEST.MF15
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/build.properties6
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/src-gen/org/eclipse/viatra/solver/language/tests/SolverLanguageInjectorProvider.java69
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/src/org/eclipse/viatra/solver/language/tests/SolverLanguageParsingTest.xtend30
-rw-r--r--Application/org.eclipse.viatra.solver.language.tests/xtend-gen/org/eclipse/viatra/solver/language/tests/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/.classpath26
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/.gitignore1
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/.project34
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/META-INF/MANIFEST.MF18
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/build.properties6
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui.tests/src-gen/org/eclipse/viatra/solver/language/ui/tests/SolverLanguageUiInjectorProvider.java17
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/.classpath9
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/.gitignore1
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/.project34
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/META-INF/MANIFEST.MF26
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/build.properties7
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/plugin.xml434
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/AbstractSolverLanguageUiModule.java293
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/SolverLanguageExecutableExtensionFactory.java29
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/contentassist/AbstractSolverLanguageProposalProvider.java300
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/internal/LanguageActivator.java94
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageValidatorConfigurationBlock.java35
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/SolverLanguageUiModule.xtend24
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/contentassist/SolverLanguageProposalProvider.xtend12
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticHighlightCalculator.xtend58
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticTextAttributeProvider.xtend57
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageDescriptionLabelProvider.xtend24
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageLabelProvider.xtend31
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/outline/SolverLanguageOutlineTreeProvider.xtend15
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/quickfix/SolverLanguageQuickfixProvider.xtend24
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/contentassist/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/highlight/.gitignore6
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/labeling/.gitignore6
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/outline/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/quickfix/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language/.classpath9
-rw-r--r--Application/org.eclipse.viatra.solver.language/.gitignore1
-rw-r--r--Application/org.eclipse.viatra.solver.language/.launch/Generate SolverLanguage (vsc) Language Infrastructure.launch18
-rw-r--r--Application/org.eclipse.viatra.solver.language/.launch/Launch Runtime Eclipse.launch34
-rw-r--r--Application/org.eclipse.viatra.solver.language/.project34
-rw-r--r--Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF30
-rw-r--r--Application/org.eclipse.viatra.solver.language/build.properties20
-rw-r--r--Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore156
-rw-r--r--Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.genmodel131
-rw-r--r--Application/org.eclipse.viatra.solver.language/plugin.xml10
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/AbstractSolverLanguageRuntimeModule.java201
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguage.xtextbinbin0 -> 7297 bytes
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetupGenerated.java42
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageAntlrTokenFileProvider.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageParser.java40
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.g2575
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.tokens67
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageLexer.java1669
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java7214
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/scoping/AbstractSolverLanguageScopeProvider.java9
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java781
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSyntacticSequencer.java60
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/services/SolverLanguageGrammarAccess.java2124
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllInstances.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllObjects.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BasicInterpretation.java84
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanFalse.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanObject.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanTrue.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanValue.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CDInterpretation.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassInterpretation.java97
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClosureType.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ComplexObject.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Constraint.java109
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataObject.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultInterpretation.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumInterpretation.java61
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EqualsSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Error.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ErrorPredicate.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExistSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/False.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FieldRelationInterpretation.java117
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/GlobalRelationInterpretation.java162
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntObject.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntegerSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IrreflexiveClosure.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ModelSymbol.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiplicityDefinition.java94
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedObject.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Negative.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Object.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Parameter.java71
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PartialitySymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PatternBody.java40
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Polarity.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Positive.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java51
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateSymbol.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java40
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealObject.java48
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ReflexiveClosure.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java521
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java3460
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringObject.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringSymbol.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/True.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TruthValue.java20
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Unknown.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedObject.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllInstancesImpl.java196
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllObjectsImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BasicInterpretationImpl.java318
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanFalseImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanObjectImpl.java196
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanTrueImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanValueImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CDInterpretationImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassInterpretationImpl.java356
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClosureTypeImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComplexObjectImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConstraintImpl.java393
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataObjectImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultInterpretationImpl.java196
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumInterpretationImpl.java244
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EqualsSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorImpl.java40
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorPredicateImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExistSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FalseImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldRelationInterpretationImpl.java418
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/GlobalRelationInterpretationImpl.java563
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntObjectImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntegerSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IrreflexiveClosureImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ModelSymbolImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityDefinitionImpl.java296
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedObjectImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NegativeImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectImpl.java40
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ParameterImpl.java271
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PartialitySymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PatternBodyImpl.java169
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PolarityImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PositiveImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java207
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateSymbolImpl.java196
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java169
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealObjectImpl.java181
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReflexiveClosureImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java851
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java2007
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringObjectImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringSymbolImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TrueImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TruthValueImpl.java43
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnknownImpl.java41
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedObjectImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java179
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java1245
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java1464
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/AbstractSolverLanguageValidator.java19
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageConfigurableIssueCodesProvider.java22
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/GenerateSolverLanguage.mwe249
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguage.xtext154
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageRuntimeModule.xtend11
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetup.xtend15
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/generator/SolverLanguageGenerator.xtend25
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/scoping/SolverLanguageScopeProvider.xtend15
-rw-r--r--Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/validation/SolverLanguageValidator.xtend25
-rw-r--r--Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/.gitignore6
-rw-r--r--Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/generator/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/scoping/.gitignore3
-rw-r--r--Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/validation/.gitignore3
215 files changed, 61840 insertions, 0 deletions
diff --git a/Application/org.eclipse.viatra.solver.language.ide/.classpath b/Application/org.eclipse.viatra.solver.language.ide/.classpath
new file mode 100644
index 00000000..1287f96c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/.classpath
@@ -0,0 +1,9 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" path="src"/>
4 <classpathentry kind="src" path="src-gen"/>
5 <classpathentry kind="src" path="xtend-gen"/>
6 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
7 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
8 <classpathentry kind="output" path="bin"/>
9</classpath>
diff --git a/Application/org.eclipse.viatra.solver.language.ide/.gitignore b/Application/org.eclipse.viatra.solver.language.ide/.gitignore
new file mode 100644
index 00000000..ae3c1726
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/.gitignore
@@ -0,0 +1 @@
/bin/
diff --git a/Application/org.eclipse.viatra.solver.language.ide/.project b/Application/org.eclipse.viatra.solver.language.ide/.project
new file mode 100644
index 00000000..a27ef027
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/.project
@@ -0,0 +1,34 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>org.eclipse.viatra.solver.language.ide</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.jdt.core.javabuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.pde.ManifestBuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.SchemaBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 </buildSpec>
29 <natures>
30 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
31 <nature>org.eclipse.jdt.core.javanature</nature>
32 <nature>org.eclipse.pde.PluginNature</nature>
33 </natures>
34</projectDescription>
diff --git a/Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.core.resources.prefs b/Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000..4824b802
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
1eclipse.preferences.version=1
2encoding/<project>=UTF-8
diff --git a/Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.jdt.core.prefs b/Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Application/org.eclipse.viatra.solver.language.ide/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language.ide/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..4312e426
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
1Manifest-Version: 1.0
2Automatic-Module-Name: org.eclipse.viatra.solver.language.ide
3Bundle-ManifestVersion: 2
4Bundle-Name: org.eclipse.viatra.solver.language.ide
5Bundle-Vendor: My Company
6Bundle-Version: 1.0.0.qualifier
7Bundle-SymbolicName: org.eclipse.viatra.solver.language.ide; singleton:=true
8Bundle-ActivationPolicy: lazy
9Require-Bundle: org.eclipse.viatra.solver.language,
10 org.eclipse.xtext.ide,
11 org.eclipse.xtext.xbase.ide,
12 org.antlr.runtime;bundle-version="[3.2.0,3.2.1)"
13Bundle-RequiredExecutionEnvironment: JavaSE-1.8
14Export-Package: org.eclipse.viatra.solver.language.ide.contentassist.antlr,
15 org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal
diff --git a/Application/org.eclipse.viatra.solver.language.ide/build.properties b/Application/org.eclipse.viatra.solver.language.ide/build.properties
new file mode 100644
index 00000000..4c654e9b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/build.properties
@@ -0,0 +1,6 @@
1source.. = src/,\
2 src-gen/,\
3 xtend-gen/
4bin.includes = .,\
5 META-INF/
6bin.excludes = **/*.xtend
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup b/Application/org.eclipse.viatra.solver.language.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup
new file mode 100644
index 00000000..1fe43147
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/META-INF/services/org.eclipse.xtext.ISetup
@@ -0,0 +1 @@
org.eclipse.viatra.solver.language.ide.SolverLanguageIdeSetup
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/AbstractSolverLanguageIdeModule.java b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/AbstractSolverLanguageIdeModule.java
new file mode 100644
index 00000000..2962a81a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/AbstractSolverLanguageIdeModule.java
@@ -0,0 +1,60 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ide;
5
6import com.google.inject.Binder;
7import com.google.inject.name.Names;
8import org.eclipse.viatra.solver.language.ide.contentassist.antlr.SolverLanguageParser;
9import org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal.InternalSolverLanguageLexer;
10import org.eclipse.xtext.ide.DefaultIdeModule;
11import org.eclipse.xtext.ide.LexerIdeBindings;
12import org.eclipse.xtext.ide.editor.contentassist.FQNPrefixMatcher;
13import org.eclipse.xtext.ide.editor.contentassist.IPrefixMatcher;
14import org.eclipse.xtext.ide.editor.contentassist.IProposalConflictHelper;
15import org.eclipse.xtext.ide.editor.contentassist.antlr.AntlrProposalConflictHelper;
16import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser;
17import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
18import org.eclipse.xtext.ide.refactoring.IRenameStrategy2;
19import org.eclipse.xtext.ide.server.rename.IRenameService2;
20import org.eclipse.xtext.ide.server.rename.RenameService2;
21
22/**
23 * Manual modifications go to {@link SolverLanguageIdeModule}.
24 */
25@SuppressWarnings("all")
26public abstract class AbstractSolverLanguageIdeModule extends DefaultIdeModule {
27
28 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
29 public void configureContentAssistLexer(Binder binder) {
30 binder.bind(Lexer.class)
31 .annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST))
32 .to(InternalSolverLanguageLexer.class);
33 }
34
35 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
36 public Class<? extends IContentAssistParser> bindIContentAssistParser() {
37 return SolverLanguageParser.class;
38 }
39
40 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
41 public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() {
42 return AntlrProposalConflictHelper.class;
43 }
44
45 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
46 public Class<? extends IPrefixMatcher> bindIPrefixMatcher() {
47 return FQNPrefixMatcher.class;
48 }
49
50 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
51 public Class<? extends IRenameService2> bindIRenameService2() {
52 return RenameService2.class;
53 }
54
55 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
56 public Class<? extends IRenameStrategy2> bindIRenameStrategy2() {
57 return IRenameStrategy2.DefaultImpl.class;
58 }
59
60}
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialSolverLanguageContentAssistParser.java b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialSolverLanguageContentAssistParser.java
new file mode 100644
index 00000000..ee6e19b9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/PartialSolverLanguageContentAssistParser.java
@@ -0,0 +1,34 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ide.contentassist.antlr;
5
6import java.util.Collection;
7import java.util.Collections;
8import org.eclipse.xtext.AbstractRule;
9import org.eclipse.xtext.ide.editor.contentassist.antlr.FollowElement;
10import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
11import org.eclipse.xtext.ide.editor.partialEditing.IPartialEditingContentAssistParser;
12import org.eclipse.xtext.util.PolymorphicDispatcher;
13
14public class PartialSolverLanguageContentAssistParser extends SolverLanguageParser implements IPartialEditingContentAssistParser {
15
16 private AbstractRule rule;
17
18 @Override
19 public void initializeFor(AbstractRule rule) {
20 this.rule = rule;
21 }
22
23 @Override
24 protected Collection<FollowElement> getFollowElements(AbstractInternalContentAssistParser parser) {
25 if (rule == null || rule.eIsProxy())
26 return Collections.emptyList();
27 String methodName = "entryRule" + rule.getName();
28 PolymorphicDispatcher<Collection<FollowElement>> dispatcher =
29 new PolymorphicDispatcher<Collection<FollowElement>>(methodName, 0, 0, Collections.singletonList(parser));
30 dispatcher.invoke();
31 return parser.getFollowElements();
32 }
33
34}
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
new file mode 100644
index 00000000..0a4b46a5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/SolverLanguageParser.java
@@ -0,0 +1,187 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ide.contentassist.antlr;
5
6import com.google.common.collect.ImmutableMap;
7import com.google.inject.Inject;
8import com.google.inject.Singleton;
9import java.util.Map;
10import org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal.InternalSolverLanguageParser;
11import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
12import org.eclipse.xtext.AbstractElement;
13import org.eclipse.xtext.ide.editor.contentassist.antlr.AbstractContentAssistParser;
14
15public class SolverLanguageParser extends AbstractContentAssistParser {
16
17 @Singleton
18 public static final class NameMappings {
19
20 private final Map<AbstractElement, String> mappings;
21
22 @Inject
23 public NameMappings(SolverLanguageGrammarAccess grammarAccess) {
24 ImmutableMap.Builder<AbstractElement, String> builder = ImmutableMap.builder();
25 init(builder, grammarAccess);
26 this.mappings = builder.build();
27 }
28
29 public String getRuleName(AbstractElement element) {
30 return mappings.get(element);
31 }
32
33 private static void init(ImmutableMap.Builder<AbstractElement, String> builder, SolverLanguageGrammarAccess grammarAccess) {
34 builder.put(grammarAccess.getStatementAccess().getAlternatives(), "rule__Statement__Alternatives");
35 builder.put(grammarAccess.getBooleanValueAccess().getAlternatives(), "rule__BooleanValue__Alternatives");
36 builder.put(grammarAccess.getTruthValueAccess().getAlternatives(), "rule__TruthValue__Alternatives");
37 builder.put(grammarAccess.getInterpretationAccess().getAlternatives(), "rule__Interpretation__Alternatives");
38 builder.put(grammarAccess.getSymbolAccess().getAlternatives(), "rule__Symbol__Alternatives");
39 builder.put(grammarAccess.getPartialitySymbolAccess().getAlternatives(), "rule__PartialitySymbol__Alternatives");
40 builder.put(grammarAccess.getDataSymbolAccess().getAlternatives(), "rule__DataSymbol__Alternatives");
41 builder.put(grammarAccess.getComplexObjectAccess().getAlternatives(), "rule__ComplexObject__Alternatives");
42 builder.put(grammarAccess.getObjectAccess().getAlternatives(), "rule__Object__Alternatives");
43 builder.put(grammarAccess.getDataObjectAccess().getAlternatives(), "rule__DataObject__Alternatives");
44 builder.put(grammarAccess.getPredicateAccess().getAlternatives(), "rule__Predicate__Alternatives");
45 builder.put(grammarAccess.getPredicateSymbolAccess().getAlternatives_6(), "rule__PredicateSymbol__Alternatives_6");
46 builder.put(grammarAccess.getErrorPredicateAccess().getAlternatives_5(), "rule__ErrorPredicate__Alternatives_5");
47 builder.put(grammarAccess.getPatternBodyAccess().getAlternatives_1(), "rule__PatternBody__Alternatives_1");
48 builder.put(grammarAccess.getPolarityAccess().getAlternatives(), "rule__Polarity__Alternatives");
49 builder.put(grammarAccess.getConstraintAccess().getAlternatives_2(), "rule__Constraint__Alternatives_2");
50 builder.put(grammarAccess.getClosureTypeAccess().getAlternatives(), "rule__ClosureType__Alternatives");
51 builder.put(grammarAccess.getLiteralAccess().getAlternatives(), "rule__Literal__Alternatives");
52 builder.put(grammarAccess.getCDInterpretationAccess().getAlternatives(), "rule__CDInterpretation__Alternatives");
53 builder.put(grammarAccess.getMultiplicityDefinitionAccess().getAlternatives_2(), "rule__MultiplicityDefinition__Alternatives_2");
54 builder.put(grammarAccess.getREALLiteralAccess().getGroup(), "rule__REALLiteral__Group__0");
55 builder.put(grammarAccess.getINTLiteralAccess().getGroup(), "rule__INTLiteral__Group__0");
56 builder.put(grammarAccess.getBooleanValueAccess().getGroup_0(), "rule__BooleanValue__Group_0__0");
57 builder.put(grammarAccess.getBooleanValueAccess().getGroup_1(), "rule__BooleanValue__Group_1__0");
58 builder.put(grammarAccess.getTruthValueAccess().getGroup_0(), "rule__TruthValue__Group_0__0");
59 builder.put(grammarAccess.getTruthValueAccess().getGroup_1(), "rule__TruthValue__Group_1__0");
60 builder.put(grammarAccess.getTruthValueAccess().getGroup_2(), "rule__TruthValue__Group_2__0");
61 builder.put(grammarAccess.getTruthValueAccess().getGroup_3(), "rule__TruthValue__Group_3__0");
62 builder.put(grammarAccess.getBasicInterpretationAccess().getGroup(), "rule__BasicInterpretation__Group__0");
63 builder.put(grammarAccess.getExistSymbolAccess().getGroup(), "rule__ExistSymbol__Group__0");
64 builder.put(grammarAccess.getEqualsSymbolAccess().getGroup(), "rule__EqualsSymbol__Group__0");
65 builder.put(grammarAccess.getBooleanSymbolAccess().getGroup(), "rule__BooleanSymbol__Group__0");
66 builder.put(grammarAccess.getIntegerSymbolAccess().getGroup(), "rule__IntegerSymbol__Group__0");
67 builder.put(grammarAccess.getRealSymbolAccess().getGroup(), "rule__RealSymbol__Group__0");
68 builder.put(grammarAccess.getStringSymbolAccess().getGroup(), "rule__StringSymbol__Group__0");
69 builder.put(grammarAccess.getNamedObjectAccess().getGroup(), "rule__NamedObject__Group__0");
70 builder.put(grammarAccess.getPredicateSymbolAccess().getGroup(), "rule__PredicateSymbol__Group__0");
71 builder.put(grammarAccess.getPredicateSymbolAccess().getGroup_6_1(), "rule__PredicateSymbol__Group_6_1__0");
72 builder.put(grammarAccess.getPredicateSymbolAccess().getGroup_6_1_1(), "rule__PredicateSymbol__Group_6_1_1__0");
73 builder.put(grammarAccess.getErrorPredicateAccess().getGroup(), "rule__ErrorPredicate__Group__0");
74 builder.put(grammarAccess.getErrorPredicateAccess().getGroup_3(), "rule__ErrorPredicate__Group_3__0");
75 builder.put(grammarAccess.getErrorPredicateAccess().getGroup_5_1(), "rule__ErrorPredicate__Group_5_1__0");
76 builder.put(grammarAccess.getErrorPredicateAccess().getGroup_5_1_1(), "rule__ErrorPredicate__Group_5_1_1__0");
77 builder.put(grammarAccess.getParameterAccess().getGroup(), "rule__Parameter__Group__0");
78 builder.put(grammarAccess.getParameterAccess().getGroup_1(), "rule__Parameter__Group_1__0");
79 builder.put(grammarAccess.getPatternBodyAccess().getGroup(), "rule__PatternBody__Group__0");
80 builder.put(grammarAccess.getPolarityAccess().getGroup_0(), "rule__Polarity__Group_0__0");
81 builder.put(grammarAccess.getPolarityAccess().getGroup_1(), "rule__Polarity__Group_1__0");
82 builder.put(grammarAccess.getConstraintAccess().getGroup(), "rule__Constraint__Group__0");
83 builder.put(grammarAccess.getConstraintAccess().getGroup_2_0(), "rule__Constraint__Group_2_0__0");
84 builder.put(grammarAccess.getConstraintAccess().getGroup_2_1(), "rule__Constraint__Group_2_1__0");
85 builder.put(grammarAccess.getClosureTypeAccess().getGroup_0(), "rule__ClosureType__Group_0__0");
86 builder.put(grammarAccess.getClosureTypeAccess().getGroup_1(), "rule__ClosureType__Group_1__0");
87 builder.put(grammarAccess.getAllInstancesAccess().getGroup(), "rule__AllInstances__Group__0");
88 builder.put(grammarAccess.getAllObjectsAccess().getGroup(), "rule__AllObjects__Group__0");
89 builder.put(grammarAccess.getDefaultInterpretationAccess().getGroup(), "rule__DefaultInterpretation__Group__0");
90 builder.put(grammarAccess.getClassInterpretationAccess().getGroup(), "rule__ClassInterpretation__Group__0");
91 builder.put(grammarAccess.getClassInterpretationAccess().getGroup_3(), "rule__ClassInterpretation__Group_3__0");
92 builder.put(grammarAccess.getEnumInterpretationAccess().getGroup(), "rule__EnumInterpretation__Group__0");
93 builder.put(grammarAccess.getFieldRelationInterpretationAccess().getGroup(), "rule__FieldRelationInterpretation__Group__0");
94 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getGroup(), "rule__GlobalRelationInterpretation__Group__0");
95 builder.put(grammarAccess.getMultiplicityDefinitionAccess().getGroup(), "rule__MultiplicityDefinition__Group__0");
96 builder.put(grammarAccess.getProblemAccess().getStatementsAssignment(), "rule__Problem__StatementsAssignment");
97 builder.put(grammarAccess.getBasicInterpretationAccess().getSymbolAssignment_0(), "rule__BasicInterpretation__SymbolAssignment_0");
98 builder.put(grammarAccess.getBasicInterpretationAccess().getObjectsAssignment_2(), "rule__BasicInterpretation__ObjectsAssignment_2");
99 builder.put(grammarAccess.getBasicInterpretationAccess().getValueAssignment_5(), "rule__BasicInterpretation__ValueAssignment_5");
100 builder.put(grammarAccess.getModelSymbolAccess().getNameAssignment(), "rule__ModelSymbol__NameAssignment");
101 builder.put(grammarAccess.getNamedObjectAccess().getNameAssignment_1(), "rule__NamedObject__NameAssignment_1");
102 builder.put(grammarAccess.getUnnamedObjectAccess().getNameAssignment(), "rule__UnnamedObject__NameAssignment");
103 builder.put(grammarAccess.getBooleanObjectAccess().getValueAssignment(), "rule__BooleanObject__ValueAssignment");
104 builder.put(grammarAccess.getIntObjectAccess().getValueAssignment(), "rule__IntObject__ValueAssignment");
105 builder.put(grammarAccess.getRealObjectAccess().getValueAssignment(), "rule__RealObject__ValueAssignment");
106 builder.put(grammarAccess.getStringObjectAccess().getValueAssignment(), "rule__StringObject__ValueAssignment");
107 builder.put(grammarAccess.getPredicateSymbolAccess().getSymbolAssignment_1(), "rule__PredicateSymbol__SymbolAssignment_1");
108 builder.put(grammarAccess.getPredicateSymbolAccess().getParametersAssignment_3(), "rule__PredicateSymbol__ParametersAssignment_3");
109 builder.put(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_0(), "rule__PredicateSymbol__BodiesAssignment_6_1_0");
110 builder.put(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_1_1(), "rule__PredicateSymbol__BodiesAssignment_6_1_1_1");
111 builder.put(grammarAccess.getErrorPredicateAccess().getNameAssignment_2(), "rule__ErrorPredicate__NameAssignment_2");
112 builder.put(grammarAccess.getErrorPredicateAccess().getParametersAssignment_3_1(), "rule__ErrorPredicate__ParametersAssignment_3_1");
113 builder.put(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_0(), "rule__ErrorPredicate__BodiesAssignment_5_1_0");
114 builder.put(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_1_1(), "rule__ErrorPredicate__BodiesAssignment_5_1_1_1");
115 builder.put(grammarAccess.getParameterAccess().getVariableAssignment_0(), "rule__Parameter__VariableAssignment_0");
116 builder.put(grammarAccess.getParameterAccess().getTypeAssignment_1_1(), "rule__Parameter__TypeAssignment_1_1");
117 builder.put(grammarAccess.getPatternBodyAccess().getConstraintsAssignment_1_1(), "rule__PatternBody__ConstraintsAssignment_1_1");
118 builder.put(grammarAccess.getConstraintAccess().getPolarityAssignment_0(), "rule__Constraint__PolarityAssignment_0");
119 builder.put(grammarAccess.getConstraintAccess().getSymbolAssignment_1(), "rule__Constraint__SymbolAssignment_1");
120 builder.put(grammarAccess.getConstraintAccess().getParamsAssignment_2_0_1(), "rule__Constraint__ParamsAssignment_2_0_1");
121 builder.put(grammarAccess.getConstraintAccess().getClosureTypeAssignment_2_1_0(), "rule__Constraint__ClosureTypeAssignment_2_1_0");
122 builder.put(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_2(), "rule__Constraint__ParamsAssignment_2_1_2");
123 builder.put(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_3(), "rule__Constraint__ParamsAssignment_2_1_3");
124 builder.put(grammarAccess.getVariableAccess().getNameAssignment(), "rule__Variable__NameAssignment");
125 builder.put(grammarAccess.getAllInstancesAccess().getSymbolAssignment_1(), "rule__AllInstances__SymbolAssignment_1");
126 builder.put(grammarAccess.getDefaultInterpretationAccess().getInterpretationAssignment_1(), "rule__DefaultInterpretation__InterpretationAssignment_1");
127 builder.put(grammarAccess.getClassInterpretationAccess().getAbstractAssignment_0(), "rule__ClassInterpretation__AbstractAssignment_0");
128 builder.put(grammarAccess.getClassInterpretationAccess().getSymbolAssignment_2(), "rule__ClassInterpretation__SymbolAssignment_2");
129 builder.put(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1(), "rule__ClassInterpretation__SupertypesAssignment_3_1");
130 builder.put(grammarAccess.getClassInterpretationAccess().getFieltAssignment_5(), "rule__ClassInterpretation__FieltAssignment_5");
131 builder.put(grammarAccess.getEnumInterpretationAccess().getSymbolAssignment_1(), "rule__EnumInterpretation__SymbolAssignment_1");
132 builder.put(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3(), "rule__EnumInterpretation__ObjectsAssignment_3");
133 builder.put(grammarAccess.getFieldRelationInterpretationAccess().getContainmentAssignment_0(), "rule__FieldRelationInterpretation__ContainmentAssignment_0");
134 builder.put(grammarAccess.getFieldRelationInterpretationAccess().getSymbolAssignment_1(), "rule__FieldRelationInterpretation__SymbolAssignment_1");
135 builder.put(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityAssignment_3(), "rule__FieldRelationInterpretation__MultiplicityAssignment_3");
136 builder.put(grammarAccess.getFieldRelationInterpretationAccess().getTargetAssignment_4(), "rule__FieldRelationInterpretation__TargetAssignment_4");
137 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentAssignment_0(), "rule__GlobalRelationInterpretation__ContainmentAssignment_0");
138 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolAssignment_2(), "rule__GlobalRelationInterpretation__SymbolAssignment_2");
139 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityAssignment_4(), "rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4");
140 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getSourceAssignment_5(), "rule__GlobalRelationInterpretation__SourceAssignment_5");
141 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityAssignment_6(), "rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6");
142 builder.put(grammarAccess.getGlobalRelationInterpretationAccess().getTargetAssignment_7(), "rule__GlobalRelationInterpretation__TargetAssignment_7");
143 builder.put(grammarAccess.getMultiplicityDefinitionAccess().getLowerAssignment_0(), "rule__MultiplicityDefinition__LowerAssignment_0");
144 builder.put(grammarAccess.getMultiplicityDefinitionAccess().getUpperAssignment_2_0(), "rule__MultiplicityDefinition__UpperAssignment_2_0");
145 builder.put(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAssignment_2_1(), "rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1");
146 }
147 }
148
149 @Inject
150 private NameMappings nameMappings;
151
152 @Inject
153 private SolverLanguageGrammarAccess grammarAccess;
154
155 @Override
156 protected InternalSolverLanguageParser createParser() {
157 InternalSolverLanguageParser result = new InternalSolverLanguageParser(null);
158 result.setGrammarAccess(grammarAccess);
159 return result;
160 }
161
162 @Override
163 protected String getRuleName(AbstractElement element) {
164 return nameMappings.getRuleName(element);
165 }
166
167 @Override
168 protected String[] getInitialHiddenTokens() {
169 return new String[] { "RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT" };
170 }
171
172 public SolverLanguageGrammarAccess getGrammarAccess() {
173 return this.grammarAccess;
174 }
175
176 public void setGrammarAccess(SolverLanguageGrammarAccess grammarAccess) {
177 this.grammarAccess = grammarAccess;
178 }
179
180 public NameMappings getNameMappings() {
181 return nameMappings;
182 }
183
184 public void setNameMappings(NameMappings nameMappings) {
185 this.nameMappings = nameMappings;
186 }
187}
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.g b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.g
new file mode 100644
index 00000000..5a6ae569
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.g
@@ -0,0 +1,5882 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4grammar InternalSolverLanguage;
5
6options {
7 superClass=AbstractInternalContentAssistParser;
8}
9
10@lexer::header {
11package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
12
13// Hack: Use our own Lexer superclass by means of import.
14// Currently there is no other way to specify the superclass for the lexer.
15import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
16}
17
18@parser::header {
19package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
20
21import java.io.InputStream;
22import org.eclipse.xtext.*;
23import org.eclipse.xtext.parser.*;
24import org.eclipse.xtext.parser.impl.*;
25import org.eclipse.emf.ecore.util.EcoreUtil;
26import org.eclipse.emf.ecore.EObject;
27import org.eclipse.xtext.parser.antlr.XtextTokenStream;
28import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
29import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
30import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA;
31import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
32
33}
34@parser::members {
35 private SolverLanguageGrammarAccess grammarAccess;
36
37 public void setGrammarAccess(SolverLanguageGrammarAccess grammarAccess) {
38 this.grammarAccess = grammarAccess;
39 }
40
41 @Override
42 protected Grammar getGrammar() {
43 return grammarAccess.getGrammar();
44 }
45
46 @Override
47 protected String getValueForTokenName(String tokenName) {
48 return tokenName;
49 }
50}
51
52// Entry rule entryRuleProblem
53entryRuleProblem
54:
55{ before(grammarAccess.getProblemRule()); }
56 ruleProblem
57{ after(grammarAccess.getProblemRule()); }
58 EOF
59;
60
61// Rule Problem
62ruleProblem
63 @init {
64 int stackSize = keepStackSize();
65 }
66 :
67 (
68 { before(grammarAccess.getProblemAccess().getStatementsAssignment()); }
69 (rule__Problem__StatementsAssignment)*
70 { after(grammarAccess.getProblemAccess().getStatementsAssignment()); }
71 )
72;
73finally {
74 restoreStackSize(stackSize);
75}
76
77// Entry rule entryRuleStatement
78entryRuleStatement
79:
80{ before(grammarAccess.getStatementRule()); }
81 ruleStatement
82{ after(grammarAccess.getStatementRule()); }
83 EOF
84;
85
86// Rule Statement
87ruleStatement
88 @init {
89 int stackSize = keepStackSize();
90 }
91 :
92 (
93 { before(grammarAccess.getStatementAccess().getAlternatives()); }
94 (rule__Statement__Alternatives)
95 { after(grammarAccess.getStatementAccess().getAlternatives()); }
96 )
97;
98finally {
99 restoreStackSize(stackSize);
100}
101
102// Entry rule entryRuleREALLiteral
103entryRuleREALLiteral
104:
105{ before(grammarAccess.getREALLiteralRule()); }
106 ruleREALLiteral
107{ after(grammarAccess.getREALLiteralRule()); }
108 EOF
109;
110
111// Rule REALLiteral
112ruleREALLiteral
113 @init {
114 int stackSize = keepStackSize();
115 }
116 :
117 (
118 { before(grammarAccess.getREALLiteralAccess().getGroup()); }
119 (rule__REALLiteral__Group__0)
120 { after(grammarAccess.getREALLiteralAccess().getGroup()); }
121 )
122;
123finally {
124 restoreStackSize(stackSize);
125}
126
127// Entry rule entryRuleINTLiteral
128entryRuleINTLiteral
129:
130{ before(grammarAccess.getINTLiteralRule()); }
131 ruleINTLiteral
132{ after(grammarAccess.getINTLiteralRule()); }
133 EOF
134;
135
136// Rule INTLiteral
137ruleINTLiteral
138 @init {
139 int stackSize = keepStackSize();
140 }
141 :
142 (
143 { before(grammarAccess.getINTLiteralAccess().getGroup()); }
144 (rule__INTLiteral__Group__0)
145 { after(grammarAccess.getINTLiteralAccess().getGroup()); }
146 )
147;
148finally {
149 restoreStackSize(stackSize);
150}
151
152// Entry rule entryRuleBooleanValue
153entryRuleBooleanValue
154:
155{ before(grammarAccess.getBooleanValueRule()); }
156 ruleBooleanValue
157{ after(grammarAccess.getBooleanValueRule()); }
158 EOF
159;
160
161// Rule BooleanValue
162ruleBooleanValue
163 @init {
164 int stackSize = keepStackSize();
165 }
166 :
167 (
168 { before(grammarAccess.getBooleanValueAccess().getAlternatives()); }
169 (rule__BooleanValue__Alternatives)
170 { after(grammarAccess.getBooleanValueAccess().getAlternatives()); }
171 )
172;
173finally {
174 restoreStackSize(stackSize);
175}
176
177// Entry rule entryRuleTruthValue
178entryRuleTruthValue
179:
180{ before(grammarAccess.getTruthValueRule()); }
181 ruleTruthValue
182{ after(grammarAccess.getTruthValueRule()); }
183 EOF
184;
185
186// Rule TruthValue
187ruleTruthValue
188 @init {
189 int stackSize = keepStackSize();
190 }
191 :
192 (
193 { before(grammarAccess.getTruthValueAccess().getAlternatives()); }
194 (rule__TruthValue__Alternatives)
195 { after(grammarAccess.getTruthValueAccess().getAlternatives()); }
196 )
197;
198finally {
199 restoreStackSize(stackSize);
200}
201
202// Entry rule entryRuleInterpretation
203entryRuleInterpretation
204:
205{ before(grammarAccess.getInterpretationRule()); }
206 ruleInterpretation
207{ after(grammarAccess.getInterpretationRule()); }
208 EOF
209;
210
211// Rule Interpretation
212ruleInterpretation
213 @init {
214 int stackSize = keepStackSize();
215 }
216 :
217 (
218 { before(grammarAccess.getInterpretationAccess().getAlternatives()); }
219 (rule__Interpretation__Alternatives)
220 { after(grammarAccess.getInterpretationAccess().getAlternatives()); }
221 )
222;
223finally {
224 restoreStackSize(stackSize);
225}
226
227// Entry rule entryRuleBasicInterpretation
228entryRuleBasicInterpretation
229:
230{ before(grammarAccess.getBasicInterpretationRule()); }
231 ruleBasicInterpretation
232{ after(grammarAccess.getBasicInterpretationRule()); }
233 EOF
234;
235
236// Rule BasicInterpretation
237ruleBasicInterpretation
238 @init {
239 int stackSize = keepStackSize();
240 }
241 :
242 (
243 { before(grammarAccess.getBasicInterpretationAccess().getGroup()); }
244 (rule__BasicInterpretation__Group__0)
245 { after(grammarAccess.getBasicInterpretationAccess().getGroup()); }
246 )
247;
248finally {
249 restoreStackSize(stackSize);
250}
251
252// Entry rule entryRuleSymbol
253entryRuleSymbol
254:
255{ before(grammarAccess.getSymbolRule()); }
256 ruleSymbol
257{ after(grammarAccess.getSymbolRule()); }
258 EOF
259;
260
261// Rule Symbol
262ruleSymbol
263 @init {
264 int stackSize = keepStackSize();
265 }
266 :
267 (
268 { before(grammarAccess.getSymbolAccess().getAlternatives()); }
269 (rule__Symbol__Alternatives)
270 { after(grammarAccess.getSymbolAccess().getAlternatives()); }
271 )
272;
273finally {
274 restoreStackSize(stackSize);
275}
276
277// Entry rule entryRuleModelSymbol
278entryRuleModelSymbol
279:
280{ before(grammarAccess.getModelSymbolRule()); }
281 ruleModelSymbol
282{ after(grammarAccess.getModelSymbolRule()); }
283 EOF
284;
285
286// Rule ModelSymbol
287ruleModelSymbol
288 @init {
289 int stackSize = keepStackSize();
290 }
291 :
292 (
293 { before(grammarAccess.getModelSymbolAccess().getNameAssignment()); }
294 (rule__ModelSymbol__NameAssignment)
295 { after(grammarAccess.getModelSymbolAccess().getNameAssignment()); }
296 )
297;
298finally {
299 restoreStackSize(stackSize);
300}
301
302// Entry rule entryRulePartialitySymbol
303entryRulePartialitySymbol
304:
305{ before(grammarAccess.getPartialitySymbolRule()); }
306 rulePartialitySymbol
307{ after(grammarAccess.getPartialitySymbolRule()); }
308 EOF
309;
310
311// Rule PartialitySymbol
312rulePartialitySymbol
313 @init {
314 int stackSize = keepStackSize();
315 }
316 :
317 (
318 { before(grammarAccess.getPartialitySymbolAccess().getAlternatives()); }
319 (rule__PartialitySymbol__Alternatives)
320 { after(grammarAccess.getPartialitySymbolAccess().getAlternatives()); }
321 )
322;
323finally {
324 restoreStackSize(stackSize);
325}
326
327// Entry rule entryRuleExistSymbol
328entryRuleExistSymbol
329:
330{ before(grammarAccess.getExistSymbolRule()); }
331 ruleExistSymbol
332{ after(grammarAccess.getExistSymbolRule()); }
333 EOF
334;
335
336// Rule ExistSymbol
337ruleExistSymbol
338 @init {
339 int stackSize = keepStackSize();
340 }
341 :
342 (
343 { before(grammarAccess.getExistSymbolAccess().getGroup()); }
344 (rule__ExistSymbol__Group__0)
345 { after(grammarAccess.getExistSymbolAccess().getGroup()); }
346 )
347;
348finally {
349 restoreStackSize(stackSize);
350}
351
352// Entry rule entryRuleEqualsSymbol
353entryRuleEqualsSymbol
354:
355{ before(grammarAccess.getEqualsSymbolRule()); }
356 ruleEqualsSymbol
357{ after(grammarAccess.getEqualsSymbolRule()); }
358 EOF
359;
360
361// Rule EqualsSymbol
362ruleEqualsSymbol
363 @init {
364 int stackSize = keepStackSize();
365 }
366 :
367 (
368 { before(grammarAccess.getEqualsSymbolAccess().getGroup()); }
369 (rule__EqualsSymbol__Group__0)
370 { after(grammarAccess.getEqualsSymbolAccess().getGroup()); }
371 )
372;
373finally {
374 restoreStackSize(stackSize);
375}
376
377// Entry rule entryRuleDataSymbol
378entryRuleDataSymbol
379:
380{ before(grammarAccess.getDataSymbolRule()); }
381 ruleDataSymbol
382{ after(grammarAccess.getDataSymbolRule()); }
383 EOF
384;
385
386// Rule DataSymbol
387ruleDataSymbol
388 @init {
389 int stackSize = keepStackSize();
390 }
391 :
392 (
393 { before(grammarAccess.getDataSymbolAccess().getAlternatives()); }
394 (rule__DataSymbol__Alternatives)
395 { after(grammarAccess.getDataSymbolAccess().getAlternatives()); }
396 )
397;
398finally {
399 restoreStackSize(stackSize);
400}
401
402// Entry rule entryRuleBooleanSymbol
403entryRuleBooleanSymbol
404:
405{ before(grammarAccess.getBooleanSymbolRule()); }
406 ruleBooleanSymbol
407{ after(grammarAccess.getBooleanSymbolRule()); }
408 EOF
409;
410
411// Rule BooleanSymbol
412ruleBooleanSymbol
413 @init {
414 int stackSize = keepStackSize();
415 }
416 :
417 (
418 { before(grammarAccess.getBooleanSymbolAccess().getGroup()); }
419 (rule__BooleanSymbol__Group__0)
420 { after(grammarAccess.getBooleanSymbolAccess().getGroup()); }
421 )
422;
423finally {
424 restoreStackSize(stackSize);
425}
426
427// Entry rule entryRuleIntegerSymbol
428entryRuleIntegerSymbol
429:
430{ before(grammarAccess.getIntegerSymbolRule()); }
431 ruleIntegerSymbol
432{ after(grammarAccess.getIntegerSymbolRule()); }
433 EOF
434;
435
436// Rule IntegerSymbol
437ruleIntegerSymbol
438 @init {
439 int stackSize = keepStackSize();
440 }
441 :
442 (
443 { before(grammarAccess.getIntegerSymbolAccess().getGroup()); }
444 (rule__IntegerSymbol__Group__0)
445 { after(grammarAccess.getIntegerSymbolAccess().getGroup()); }
446 )
447;
448finally {
449 restoreStackSize(stackSize);
450}
451
452// Entry rule entryRuleRealSymbol
453entryRuleRealSymbol
454:
455{ before(grammarAccess.getRealSymbolRule()); }
456 ruleRealSymbol
457{ after(grammarAccess.getRealSymbolRule()); }
458 EOF
459;
460
461// Rule RealSymbol
462ruleRealSymbol
463 @init {
464 int stackSize = keepStackSize();
465 }
466 :
467 (
468 { before(grammarAccess.getRealSymbolAccess().getGroup()); }
469 (rule__RealSymbol__Group__0)
470 { after(grammarAccess.getRealSymbolAccess().getGroup()); }
471 )
472;
473finally {
474 restoreStackSize(stackSize);
475}
476
477// Entry rule entryRuleStringSymbol
478entryRuleStringSymbol
479:
480{ before(grammarAccess.getStringSymbolRule()); }
481 ruleStringSymbol
482{ after(grammarAccess.getStringSymbolRule()); }
483 EOF
484;
485
486// Rule StringSymbol
487ruleStringSymbol
488 @init {
489 int stackSize = keepStackSize();
490 }
491 :
492 (
493 { before(grammarAccess.getStringSymbolAccess().getGroup()); }
494 (rule__StringSymbol__Group__0)
495 { after(grammarAccess.getStringSymbolAccess().getGroup()); }
496 )
497;
498finally {
499 restoreStackSize(stackSize);
500}
501
502// Entry rule entryRuleComplexObject
503entryRuleComplexObject
504:
505{ before(grammarAccess.getComplexObjectRule()); }
506 ruleComplexObject
507{ after(grammarAccess.getComplexObjectRule()); }
508 EOF
509;
510
511// Rule ComplexObject
512ruleComplexObject
513 @init {
514 int stackSize = keepStackSize();
515 }
516 :
517 (
518 { before(grammarAccess.getComplexObjectAccess().getAlternatives()); }
519 (rule__ComplexObject__Alternatives)
520 { after(grammarAccess.getComplexObjectAccess().getAlternatives()); }
521 )
522;
523finally {
524 restoreStackSize(stackSize);
525}
526
527// Entry rule entryRuleObject
528entryRuleObject
529:
530{ before(grammarAccess.getObjectRule()); }
531 ruleObject
532{ after(grammarAccess.getObjectRule()); }
533 EOF
534;
535
536// Rule Object
537ruleObject
538 @init {
539 int stackSize = keepStackSize();
540 }
541 :
542 (
543 { before(grammarAccess.getObjectAccess().getAlternatives()); }
544 (rule__Object__Alternatives)
545 { after(grammarAccess.getObjectAccess().getAlternatives()); }
546 )
547;
548finally {
549 restoreStackSize(stackSize);
550}
551
552// Entry rule entryRuleNamedObject
553entryRuleNamedObject
554:
555{ before(grammarAccess.getNamedObjectRule()); }
556 ruleNamedObject
557{ after(grammarAccess.getNamedObjectRule()); }
558 EOF
559;
560
561// Rule NamedObject
562ruleNamedObject
563 @init {
564 int stackSize = keepStackSize();
565 }
566 :
567 (
568 { before(grammarAccess.getNamedObjectAccess().getGroup()); }
569 (rule__NamedObject__Group__0)
570 { after(grammarAccess.getNamedObjectAccess().getGroup()); }
571 )
572;
573finally {
574 restoreStackSize(stackSize);
575}
576
577// Entry rule entryRuleUnnamedObject
578entryRuleUnnamedObject
579:
580{ before(grammarAccess.getUnnamedObjectRule()); }
581 ruleUnnamedObject
582{ after(grammarAccess.getUnnamedObjectRule()); }
583 EOF
584;
585
586// Rule UnnamedObject
587ruleUnnamedObject
588 @init {
589 int stackSize = keepStackSize();
590 }
591 :
592 (
593 { before(grammarAccess.getUnnamedObjectAccess().getNameAssignment()); }
594 (rule__UnnamedObject__NameAssignment)
595 { after(grammarAccess.getUnnamedObjectAccess().getNameAssignment()); }
596 )
597;
598finally {
599 restoreStackSize(stackSize);
600}
601
602// Entry rule entryRuleDataObject
603entryRuleDataObject
604:
605{ before(grammarAccess.getDataObjectRule()); }
606 ruleDataObject
607{ after(grammarAccess.getDataObjectRule()); }
608 EOF
609;
610
611// Rule DataObject
612ruleDataObject
613 @init {
614 int stackSize = keepStackSize();
615 }
616 :
617 (
618 { before(grammarAccess.getDataObjectAccess().getAlternatives()); }
619 (rule__DataObject__Alternatives)
620 { after(grammarAccess.getDataObjectAccess().getAlternatives()); }
621 )
622;
623finally {
624 restoreStackSize(stackSize);
625}
626
627// Entry rule entryRuleBooleanObject
628entryRuleBooleanObject
629:
630{ before(grammarAccess.getBooleanObjectRule()); }
631 ruleBooleanObject
632{ after(grammarAccess.getBooleanObjectRule()); }
633 EOF
634;
635
636// Rule BooleanObject
637ruleBooleanObject
638 @init {
639 int stackSize = keepStackSize();
640 }
641 :
642 (
643 { before(grammarAccess.getBooleanObjectAccess().getValueAssignment()); }
644 (rule__BooleanObject__ValueAssignment)
645 { after(grammarAccess.getBooleanObjectAccess().getValueAssignment()); }
646 )
647;
648finally {
649 restoreStackSize(stackSize);
650}
651
652// Entry rule entryRuleIntObject
653entryRuleIntObject
654:
655{ before(grammarAccess.getIntObjectRule()); }
656 ruleIntObject
657{ after(grammarAccess.getIntObjectRule()); }
658 EOF
659;
660
661// Rule IntObject
662ruleIntObject
663 @init {
664 int stackSize = keepStackSize();
665 }
666 :
667 (
668 { before(grammarAccess.getIntObjectAccess().getValueAssignment()); }
669 (rule__IntObject__ValueAssignment)
670 { after(grammarAccess.getIntObjectAccess().getValueAssignment()); }
671 )
672;
673finally {
674 restoreStackSize(stackSize);
675}
676
677// Entry rule entryRuleRealObject
678entryRuleRealObject
679:
680{ before(grammarAccess.getRealObjectRule()); }
681 ruleRealObject
682{ after(grammarAccess.getRealObjectRule()); }
683 EOF
684;
685
686// Rule RealObject
687ruleRealObject
688 @init {
689 int stackSize = keepStackSize();
690 }
691 :
692 (
693 { before(grammarAccess.getRealObjectAccess().getValueAssignment()); }
694 (rule__RealObject__ValueAssignment)
695 { after(grammarAccess.getRealObjectAccess().getValueAssignment()); }
696 )
697;
698finally {
699 restoreStackSize(stackSize);
700}
701
702// Entry rule entryRuleStringObject
703entryRuleStringObject
704:
705{ before(grammarAccess.getStringObjectRule()); }
706 ruleStringObject
707{ after(grammarAccess.getStringObjectRule()); }
708 EOF
709;
710
711// Rule StringObject
712ruleStringObject
713 @init {
714 int stackSize = keepStackSize();
715 }
716 :
717 (
718 { before(grammarAccess.getStringObjectAccess().getValueAssignment()); }
719 (rule__StringObject__ValueAssignment)
720 { after(grammarAccess.getStringObjectAccess().getValueAssignment()); }
721 )
722;
723finally {
724 restoreStackSize(stackSize);
725}
726
727// Entry rule entryRulePredicate
728entryRulePredicate
729:
730{ before(grammarAccess.getPredicateRule()); }
731 rulePredicate
732{ after(grammarAccess.getPredicateRule()); }
733 EOF
734;
735
736// Rule Predicate
737rulePredicate
738 @init {
739 int stackSize = keepStackSize();
740 }
741 :
742 (
743 { before(grammarAccess.getPredicateAccess().getAlternatives()); }
744 (rule__Predicate__Alternatives)
745 { after(grammarAccess.getPredicateAccess().getAlternatives()); }
746 )
747;
748finally {
749 restoreStackSize(stackSize);
750}
751
752// Entry rule entryRulePredicateSymbol
753entryRulePredicateSymbol
754:
755{ before(grammarAccess.getPredicateSymbolRule()); }
756 rulePredicateSymbol
757{ after(grammarAccess.getPredicateSymbolRule()); }
758 EOF
759;
760
761// Rule PredicateSymbol
762rulePredicateSymbol
763 @init {
764 int stackSize = keepStackSize();
765 }
766 :
767 (
768 { before(grammarAccess.getPredicateSymbolAccess().getGroup()); }
769 (rule__PredicateSymbol__Group__0)
770 { after(grammarAccess.getPredicateSymbolAccess().getGroup()); }
771 )
772;
773finally {
774 restoreStackSize(stackSize);
775}
776
777// Entry rule entryRuleErrorPredicate
778entryRuleErrorPredicate
779:
780{ before(grammarAccess.getErrorPredicateRule()); }
781 ruleErrorPredicate
782{ after(grammarAccess.getErrorPredicateRule()); }
783 EOF
784;
785
786// Rule ErrorPredicate
787ruleErrorPredicate
788 @init {
789 int stackSize = keepStackSize();
790 }
791 :
792 (
793 { before(grammarAccess.getErrorPredicateAccess().getGroup()); }
794 (rule__ErrorPredicate__Group__0)
795 { after(grammarAccess.getErrorPredicateAccess().getGroup()); }
796 )
797;
798finally {
799 restoreStackSize(stackSize);
800}
801
802// Entry rule entryRuleParameter
803entryRuleParameter
804:
805{ before(grammarAccess.getParameterRule()); }
806 ruleParameter
807{ after(grammarAccess.getParameterRule()); }
808 EOF
809;
810
811// Rule Parameter
812ruleParameter
813 @init {
814 int stackSize = keepStackSize();
815 }
816 :
817 (
818 { before(grammarAccess.getParameterAccess().getGroup()); }
819 (rule__Parameter__Group__0)
820 { after(grammarAccess.getParameterAccess().getGroup()); }
821 )
822;
823finally {
824 restoreStackSize(stackSize);
825}
826
827// Entry rule entryRulePatternBody
828entryRulePatternBody
829:
830{ before(grammarAccess.getPatternBodyRule()); }
831 rulePatternBody
832{ after(grammarAccess.getPatternBodyRule()); }
833 EOF
834;
835
836// Rule PatternBody
837rulePatternBody
838 @init {
839 int stackSize = keepStackSize();
840 }
841 :
842 (
843 { before(grammarAccess.getPatternBodyAccess().getGroup()); }
844 (rule__PatternBody__Group__0)
845 { after(grammarAccess.getPatternBodyAccess().getGroup()); }
846 )
847;
848finally {
849 restoreStackSize(stackSize);
850}
851
852// Entry rule entryRulePolarity
853entryRulePolarity
854:
855{ before(grammarAccess.getPolarityRule()); }
856 rulePolarity
857{ after(grammarAccess.getPolarityRule()); }
858 EOF
859;
860
861// Rule Polarity
862rulePolarity
863 @init {
864 int stackSize = keepStackSize();
865 }
866 :
867 (
868 { before(grammarAccess.getPolarityAccess().getAlternatives()); }
869 (rule__Polarity__Alternatives)
870 { after(grammarAccess.getPolarityAccess().getAlternatives()); }
871 )
872;
873finally {
874 restoreStackSize(stackSize);
875}
876
877// Entry rule entryRuleConstraint
878entryRuleConstraint
879:
880{ before(grammarAccess.getConstraintRule()); }
881 ruleConstraint
882{ after(grammarAccess.getConstraintRule()); }
883 EOF
884;
885
886// Rule Constraint
887ruleConstraint
888 @init {
889 int stackSize = keepStackSize();
890 }
891 :
892 (
893 { before(grammarAccess.getConstraintAccess().getGroup()); }
894 (rule__Constraint__Group__0)
895 { after(grammarAccess.getConstraintAccess().getGroup()); }
896 )
897;
898finally {
899 restoreStackSize(stackSize);
900}
901
902// Entry rule entryRuleClosureType
903entryRuleClosureType
904:
905{ before(grammarAccess.getClosureTypeRule()); }
906 ruleClosureType
907{ after(grammarAccess.getClosureTypeRule()); }
908 EOF
909;
910
911// Rule ClosureType
912ruleClosureType
913 @init {
914 int stackSize = keepStackSize();
915 }
916 :
917 (
918 { before(grammarAccess.getClosureTypeAccess().getAlternatives()); }
919 (rule__ClosureType__Alternatives)
920 { after(grammarAccess.getClosureTypeAccess().getAlternatives()); }
921 )
922;
923finally {
924 restoreStackSize(stackSize);
925}
926
927// Entry rule entryRuleLiteral
928entryRuleLiteral
929:
930{ before(grammarAccess.getLiteralRule()); }
931 ruleLiteral
932{ after(grammarAccess.getLiteralRule()); }
933 EOF
934;
935
936// Rule Literal
937ruleLiteral
938 @init {
939 int stackSize = keepStackSize();
940 }
941 :
942 (
943 { before(grammarAccess.getLiteralAccess().getAlternatives()); }
944 (rule__Literal__Alternatives)
945 { after(grammarAccess.getLiteralAccess().getAlternatives()); }
946 )
947;
948finally {
949 restoreStackSize(stackSize);
950}
951
952// Entry rule entryRuleVariable
953entryRuleVariable
954:
955{ before(grammarAccess.getVariableRule()); }
956 ruleVariable
957{ after(grammarAccess.getVariableRule()); }
958 EOF
959;
960
961// Rule Variable
962ruleVariable
963 @init {
964 int stackSize = keepStackSize();
965 }
966 :
967 (
968 { before(grammarAccess.getVariableAccess().getNameAssignment()); }
969 (rule__Variable__NameAssignment)
970 { after(grammarAccess.getVariableAccess().getNameAssignment()); }
971 )
972;
973finally {
974 restoreStackSize(stackSize);
975}
976
977// Entry rule entryRuleAllInstances
978entryRuleAllInstances
979:
980{ before(grammarAccess.getAllInstancesRule()); }
981 ruleAllInstances
982{ after(grammarAccess.getAllInstancesRule()); }
983 EOF
984;
985
986// Rule AllInstances
987ruleAllInstances
988 @init {
989 int stackSize = keepStackSize();
990 }
991 :
992 (
993 { before(grammarAccess.getAllInstancesAccess().getGroup()); }
994 (rule__AllInstances__Group__0)
995 { after(grammarAccess.getAllInstancesAccess().getGroup()); }
996 )
997;
998finally {
999 restoreStackSize(stackSize);
1000}
1001
1002// Entry rule entryRuleAllObjects
1003entryRuleAllObjects
1004:
1005{ before(grammarAccess.getAllObjectsRule()); }
1006 ruleAllObjects
1007{ after(grammarAccess.getAllObjectsRule()); }
1008 EOF
1009;
1010
1011// Rule AllObjects
1012ruleAllObjects
1013 @init {
1014 int stackSize = keepStackSize();
1015 }
1016 :
1017 (
1018 { before(grammarAccess.getAllObjectsAccess().getGroup()); }
1019 (rule__AllObjects__Group__0)
1020 { after(grammarAccess.getAllObjectsAccess().getGroup()); }
1021 )
1022;
1023finally {
1024 restoreStackSize(stackSize);
1025}
1026
1027// Entry rule entryRuleDefaultInterpretation
1028entryRuleDefaultInterpretation
1029:
1030{ before(grammarAccess.getDefaultInterpretationRule()); }
1031 ruleDefaultInterpretation
1032{ after(grammarAccess.getDefaultInterpretationRule()); }
1033 EOF
1034;
1035
1036// Rule DefaultInterpretation
1037ruleDefaultInterpretation
1038 @init {
1039 int stackSize = keepStackSize();
1040 }
1041 :
1042 (
1043 { before(grammarAccess.getDefaultInterpretationAccess().getGroup()); }
1044 (rule__DefaultInterpretation__Group__0)
1045 { after(grammarAccess.getDefaultInterpretationAccess().getGroup()); }
1046 )
1047;
1048finally {
1049 restoreStackSize(stackSize);
1050}
1051
1052// Entry rule entryRuleCDInterpretation
1053entryRuleCDInterpretation
1054:
1055{ before(grammarAccess.getCDInterpretationRule()); }
1056 ruleCDInterpretation
1057{ after(grammarAccess.getCDInterpretationRule()); }
1058 EOF
1059;
1060
1061// Rule CDInterpretation
1062ruleCDInterpretation
1063 @init {
1064 int stackSize = keepStackSize();
1065 }
1066 :
1067 (
1068 { before(grammarAccess.getCDInterpretationAccess().getAlternatives()); }
1069 (rule__CDInterpretation__Alternatives)
1070 { after(grammarAccess.getCDInterpretationAccess().getAlternatives()); }
1071 )
1072;
1073finally {
1074 restoreStackSize(stackSize);
1075}
1076
1077// Entry rule entryRuleClassInterpretation
1078entryRuleClassInterpretation
1079:
1080{ before(grammarAccess.getClassInterpretationRule()); }
1081 ruleClassInterpretation
1082{ after(grammarAccess.getClassInterpretationRule()); }
1083 EOF
1084;
1085
1086// Rule ClassInterpretation
1087ruleClassInterpretation
1088 @init {
1089 int stackSize = keepStackSize();
1090 }
1091 :
1092 (
1093 { before(grammarAccess.getClassInterpretationAccess().getGroup()); }
1094 (rule__ClassInterpretation__Group__0)
1095 { after(grammarAccess.getClassInterpretationAccess().getGroup()); }
1096 )
1097;
1098finally {
1099 restoreStackSize(stackSize);
1100}
1101
1102// Entry rule entryRuleEnumInterpretation
1103entryRuleEnumInterpretation
1104:
1105{ before(grammarAccess.getEnumInterpretationRule()); }
1106 ruleEnumInterpretation
1107{ after(grammarAccess.getEnumInterpretationRule()); }
1108 EOF
1109;
1110
1111// Rule EnumInterpretation
1112ruleEnumInterpretation
1113 @init {
1114 int stackSize = keepStackSize();
1115 }
1116 :
1117 (
1118 { before(grammarAccess.getEnumInterpretationAccess().getGroup()); }
1119 (rule__EnumInterpretation__Group__0)
1120 { after(grammarAccess.getEnumInterpretationAccess().getGroup()); }
1121 )
1122;
1123finally {
1124 restoreStackSize(stackSize);
1125}
1126
1127// Entry rule entryRuleFieldRelationInterpretation
1128entryRuleFieldRelationInterpretation
1129:
1130{ before(grammarAccess.getFieldRelationInterpretationRule()); }
1131 ruleFieldRelationInterpretation
1132{ after(grammarAccess.getFieldRelationInterpretationRule()); }
1133 EOF
1134;
1135
1136// Rule FieldRelationInterpretation
1137ruleFieldRelationInterpretation
1138 @init {
1139 int stackSize = keepStackSize();
1140 }
1141 :
1142 (
1143 { before(grammarAccess.getFieldRelationInterpretationAccess().getGroup()); }
1144 (rule__FieldRelationInterpretation__Group__0)
1145 { after(grammarAccess.getFieldRelationInterpretationAccess().getGroup()); }
1146 )
1147;
1148finally {
1149 restoreStackSize(stackSize);
1150}
1151
1152// Entry rule entryRuleGlobalRelationInterpretation
1153entryRuleGlobalRelationInterpretation
1154:
1155{ before(grammarAccess.getGlobalRelationInterpretationRule()); }
1156 ruleGlobalRelationInterpretation
1157{ after(grammarAccess.getGlobalRelationInterpretationRule()); }
1158 EOF
1159;
1160
1161// Rule GlobalRelationInterpretation
1162ruleGlobalRelationInterpretation
1163 @init {
1164 int stackSize = keepStackSize();
1165 }
1166 :
1167 (
1168 { before(grammarAccess.getGlobalRelationInterpretationAccess().getGroup()); }
1169 (rule__GlobalRelationInterpretation__Group__0)
1170 { after(grammarAccess.getGlobalRelationInterpretationAccess().getGroup()); }
1171 )
1172;
1173finally {
1174 restoreStackSize(stackSize);
1175}
1176
1177// Entry rule entryRuleMultiplicityDefinition
1178entryRuleMultiplicityDefinition
1179:
1180{ before(grammarAccess.getMultiplicityDefinitionRule()); }
1181 ruleMultiplicityDefinition
1182{ after(grammarAccess.getMultiplicityDefinitionRule()); }
1183 EOF
1184;
1185
1186// Rule MultiplicityDefinition
1187ruleMultiplicityDefinition
1188 @init {
1189 int stackSize = keepStackSize();
1190 }
1191 :
1192 (
1193 { before(grammarAccess.getMultiplicityDefinitionAccess().getGroup()); }
1194 (rule__MultiplicityDefinition__Group__0)
1195 { after(grammarAccess.getMultiplicityDefinitionAccess().getGroup()); }
1196 )
1197;
1198finally {
1199 restoreStackSize(stackSize);
1200}
1201
1202rule__Statement__Alternatives
1203 @init {
1204 int stackSize = keepStackSize();
1205 }
1206:
1207 (
1208 { before(grammarAccess.getStatementAccess().getInterpretationParserRuleCall_0()); }
1209 ruleInterpretation
1210 { after(grammarAccess.getStatementAccess().getInterpretationParserRuleCall_0()); }
1211 )
1212 |
1213 (
1214 { before(grammarAccess.getStatementAccess().getPredicateParserRuleCall_1()); }
1215 rulePredicate
1216 { after(grammarAccess.getStatementAccess().getPredicateParserRuleCall_1()); }
1217 )
1218;
1219finally {
1220 restoreStackSize(stackSize);
1221}
1222
1223rule__BooleanValue__Alternatives
1224 @init {
1225 int stackSize = keepStackSize();
1226 }
1227:
1228 (
1229 { before(grammarAccess.getBooleanValueAccess().getGroup_0()); }
1230 (rule__BooleanValue__Group_0__0)
1231 { after(grammarAccess.getBooleanValueAccess().getGroup_0()); }
1232 )
1233 |
1234 (
1235 { before(grammarAccess.getBooleanValueAccess().getGroup_1()); }
1236 (rule__BooleanValue__Group_1__0)
1237 { after(grammarAccess.getBooleanValueAccess().getGroup_1()); }
1238 )
1239;
1240finally {
1241 restoreStackSize(stackSize);
1242}
1243
1244rule__TruthValue__Alternatives
1245 @init {
1246 int stackSize = keepStackSize();
1247 }
1248:
1249 (
1250 { before(grammarAccess.getTruthValueAccess().getGroup_0()); }
1251 (rule__TruthValue__Group_0__0)
1252 { after(grammarAccess.getTruthValueAccess().getGroup_0()); }
1253 )
1254 |
1255 (
1256 { before(grammarAccess.getTruthValueAccess().getGroup_1()); }
1257 (rule__TruthValue__Group_1__0)
1258 { after(grammarAccess.getTruthValueAccess().getGroup_1()); }
1259 )
1260 |
1261 (
1262 { before(grammarAccess.getTruthValueAccess().getGroup_2()); }
1263 (rule__TruthValue__Group_2__0)
1264 { after(grammarAccess.getTruthValueAccess().getGroup_2()); }
1265 )
1266 |
1267 (
1268 { before(grammarAccess.getTruthValueAccess().getGroup_3()); }
1269 (rule__TruthValue__Group_3__0)
1270 { after(grammarAccess.getTruthValueAccess().getGroup_3()); }
1271 )
1272;
1273finally {
1274 restoreStackSize(stackSize);
1275}
1276
1277rule__Interpretation__Alternatives
1278 @init {
1279 int stackSize = keepStackSize();
1280 }
1281:
1282 (
1283 { before(grammarAccess.getInterpretationAccess().getBasicInterpretationParserRuleCall_0()); }
1284 ruleBasicInterpretation
1285 { after(grammarAccess.getInterpretationAccess().getBasicInterpretationParserRuleCall_0()); }
1286 )
1287 |
1288 (
1289 { before(grammarAccess.getInterpretationAccess().getDefaultInterpretationParserRuleCall_1()); }
1290 ruleDefaultInterpretation
1291 { after(grammarAccess.getInterpretationAccess().getDefaultInterpretationParserRuleCall_1()); }
1292 )
1293 |
1294 (
1295 { before(grammarAccess.getInterpretationAccess().getCDInterpretationParserRuleCall_2()); }
1296 ruleCDInterpretation
1297 { after(grammarAccess.getInterpretationAccess().getCDInterpretationParserRuleCall_2()); }
1298 )
1299;
1300finally {
1301 restoreStackSize(stackSize);
1302}
1303
1304rule__Symbol__Alternatives
1305 @init {
1306 int stackSize = keepStackSize();
1307 }
1308:
1309 (
1310 { before(grammarAccess.getSymbolAccess().getModelSymbolParserRuleCall_0()); }
1311 ruleModelSymbol
1312 { after(grammarAccess.getSymbolAccess().getModelSymbolParserRuleCall_0()); }
1313 )
1314 |
1315 (
1316 { before(grammarAccess.getSymbolAccess().getPartialitySymbolParserRuleCall_1()); }
1317 rulePartialitySymbol
1318 { after(grammarAccess.getSymbolAccess().getPartialitySymbolParserRuleCall_1()); }
1319 )
1320 |
1321 (
1322 { before(grammarAccess.getSymbolAccess().getDataSymbolParserRuleCall_2()); }
1323 ruleDataSymbol
1324 { after(grammarAccess.getSymbolAccess().getDataSymbolParserRuleCall_2()); }
1325 )
1326;
1327finally {
1328 restoreStackSize(stackSize);
1329}
1330
1331rule__PartialitySymbol__Alternatives
1332 @init {
1333 int stackSize = keepStackSize();
1334 }
1335:
1336 (
1337 { before(grammarAccess.getPartialitySymbolAccess().getExistSymbolParserRuleCall_0()); }
1338 ruleExistSymbol
1339 { after(grammarAccess.getPartialitySymbolAccess().getExistSymbolParserRuleCall_0()); }
1340 )
1341 |
1342 (
1343 { before(grammarAccess.getPartialitySymbolAccess().getEqualsSymbolParserRuleCall_1()); }
1344 ruleEqualsSymbol
1345 { after(grammarAccess.getPartialitySymbolAccess().getEqualsSymbolParserRuleCall_1()); }
1346 )
1347;
1348finally {
1349 restoreStackSize(stackSize);
1350}
1351
1352rule__DataSymbol__Alternatives
1353 @init {
1354 int stackSize = keepStackSize();
1355 }
1356:
1357 (
1358 { before(grammarAccess.getDataSymbolAccess().getBooleanSymbolParserRuleCall_0()); }
1359 ruleBooleanSymbol
1360 { after(grammarAccess.getDataSymbolAccess().getBooleanSymbolParserRuleCall_0()); }
1361 )
1362 |
1363 (
1364 { before(grammarAccess.getDataSymbolAccess().getIntegerSymbolParserRuleCall_1()); }
1365 ruleIntegerSymbol
1366 { after(grammarAccess.getDataSymbolAccess().getIntegerSymbolParserRuleCall_1()); }
1367 )
1368 |
1369 (
1370 { before(grammarAccess.getDataSymbolAccess().getRealSymbolParserRuleCall_2()); }
1371 ruleRealSymbol
1372 { after(grammarAccess.getDataSymbolAccess().getRealSymbolParserRuleCall_2()); }
1373 )
1374 |
1375 (
1376 { before(grammarAccess.getDataSymbolAccess().getStringSymbolParserRuleCall_3()); }
1377 ruleStringSymbol
1378 { after(grammarAccess.getDataSymbolAccess().getStringSymbolParserRuleCall_3()); }
1379 )
1380;
1381finally {
1382 restoreStackSize(stackSize);
1383}
1384
1385rule__ComplexObject__Alternatives
1386 @init {
1387 int stackSize = keepStackSize();
1388 }
1389:
1390 (
1391 { before(grammarAccess.getComplexObjectAccess().getObjectParserRuleCall_0()); }
1392 ruleObject
1393 { after(grammarAccess.getComplexObjectAccess().getObjectParserRuleCall_0()); }
1394 )
1395 |
1396 (
1397 { before(grammarAccess.getComplexObjectAccess().getAllInstancesParserRuleCall_1()); }
1398 ruleAllInstances
1399 { after(grammarAccess.getComplexObjectAccess().getAllInstancesParserRuleCall_1()); }
1400 )
1401 |
1402 (
1403 { before(grammarAccess.getComplexObjectAccess().getAllObjectsParserRuleCall_2()); }
1404 ruleAllObjects
1405 { after(grammarAccess.getComplexObjectAccess().getAllObjectsParserRuleCall_2()); }
1406 )
1407;
1408finally {
1409 restoreStackSize(stackSize);
1410}
1411
1412rule__Object__Alternatives
1413 @init {
1414 int stackSize = keepStackSize();
1415 }
1416:
1417 (
1418 { before(grammarAccess.getObjectAccess().getNamedObjectParserRuleCall_0()); }
1419 ruleNamedObject
1420 { after(grammarAccess.getObjectAccess().getNamedObjectParserRuleCall_0()); }
1421 )
1422 |
1423 (
1424 { before(grammarAccess.getObjectAccess().getUnnamedObjectParserRuleCall_1()); }
1425 ruleUnnamedObject
1426 { after(grammarAccess.getObjectAccess().getUnnamedObjectParserRuleCall_1()); }
1427 )
1428 |
1429 (
1430 { before(grammarAccess.getObjectAccess().getDataObjectParserRuleCall_2()); }
1431 ruleDataObject
1432 { after(grammarAccess.getObjectAccess().getDataObjectParserRuleCall_2()); }
1433 )
1434;
1435finally {
1436 restoreStackSize(stackSize);
1437}
1438
1439rule__DataObject__Alternatives
1440 @init {
1441 int stackSize = keepStackSize();
1442 }
1443:
1444 (
1445 { before(grammarAccess.getDataObjectAccess().getBooleanObjectParserRuleCall_0()); }
1446 ruleBooleanObject
1447 { after(grammarAccess.getDataObjectAccess().getBooleanObjectParserRuleCall_0()); }
1448 )
1449 |
1450 (
1451 { before(grammarAccess.getDataObjectAccess().getIntObjectParserRuleCall_1()); }
1452 ruleIntObject
1453 { after(grammarAccess.getDataObjectAccess().getIntObjectParserRuleCall_1()); }
1454 )
1455 |
1456 (
1457 { before(grammarAccess.getDataObjectAccess().getRealObjectParserRuleCall_2()); }
1458 ruleRealObject
1459 { after(grammarAccess.getDataObjectAccess().getRealObjectParserRuleCall_2()); }
1460 )
1461 |
1462 (
1463 { before(grammarAccess.getDataObjectAccess().getStringObjectParserRuleCall_3()); }
1464 ruleStringObject
1465 { after(grammarAccess.getDataObjectAccess().getStringObjectParserRuleCall_3()); }
1466 )
1467;
1468finally {
1469 restoreStackSize(stackSize);
1470}
1471
1472rule__Predicate__Alternatives
1473 @init {
1474 int stackSize = keepStackSize();
1475 }
1476:
1477 (
1478 { before(grammarAccess.getPredicateAccess().getPredicateSymbolParserRuleCall_0()); }
1479 rulePredicateSymbol
1480 { after(grammarAccess.getPredicateAccess().getPredicateSymbolParserRuleCall_0()); }
1481 )
1482 |
1483 (
1484 { before(grammarAccess.getPredicateAccess().getErrorPredicateParserRuleCall_1()); }
1485 ruleErrorPredicate
1486 { after(grammarAccess.getPredicateAccess().getErrorPredicateParserRuleCall_1()); }
1487 )
1488;
1489finally {
1490 restoreStackSize(stackSize);
1491}
1492
1493rule__PredicateSymbol__Alternatives_6
1494 @init {
1495 int stackSize = keepStackSize();
1496 }
1497:
1498 (
1499 { before(grammarAccess.getPredicateSymbolAccess().getFalseKeyword_6_0()); }
1500 'false'
1501 { after(grammarAccess.getPredicateSymbolAccess().getFalseKeyword_6_0()); }
1502 )
1503 |
1504 (
1505 { before(grammarAccess.getPredicateSymbolAccess().getGroup_6_1()); }
1506 (rule__PredicateSymbol__Group_6_1__0)
1507 { after(grammarAccess.getPredicateSymbolAccess().getGroup_6_1()); }
1508 )
1509;
1510finally {
1511 restoreStackSize(stackSize);
1512}
1513
1514rule__ErrorPredicate__Alternatives_5
1515 @init {
1516 int stackSize = keepStackSize();
1517 }
1518:
1519 (
1520 { before(grammarAccess.getErrorPredicateAccess().getFalseKeyword_5_0()); }
1521 'false'
1522 { after(grammarAccess.getErrorPredicateAccess().getFalseKeyword_5_0()); }
1523 )
1524 |
1525 (
1526 { before(grammarAccess.getErrorPredicateAccess().getGroup_5_1()); }
1527 (rule__ErrorPredicate__Group_5_1__0)
1528 { after(grammarAccess.getErrorPredicateAccess().getGroup_5_1()); }
1529 )
1530;
1531finally {
1532 restoreStackSize(stackSize);
1533}
1534
1535rule__PatternBody__Alternatives_1
1536 @init {
1537 int stackSize = keepStackSize();
1538 }
1539:
1540 (
1541 { before(grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0()); }
1542 'true'
1543 { after(grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0()); }
1544 )
1545 |
1546 (
1547 { before(grammarAccess.getPatternBodyAccess().getConstraintsAssignment_1_1()); }
1548 (rule__PatternBody__ConstraintsAssignment_1_1)*
1549 { after(grammarAccess.getPatternBodyAccess().getConstraintsAssignment_1_1()); }
1550 )
1551;
1552finally {
1553 restoreStackSize(stackSize);
1554}
1555
1556rule__Polarity__Alternatives
1557 @init {
1558 int stackSize = keepStackSize();
1559 }
1560:
1561 (
1562 { before(grammarAccess.getPolarityAccess().getGroup_0()); }
1563 (rule__Polarity__Group_0__0)
1564 { after(grammarAccess.getPolarityAccess().getGroup_0()); }
1565 )
1566 |
1567 (
1568 { before(grammarAccess.getPolarityAccess().getGroup_1()); }
1569 (rule__Polarity__Group_1__0)
1570 { after(grammarAccess.getPolarityAccess().getGroup_1()); }
1571 )
1572;
1573finally {
1574 restoreStackSize(stackSize);
1575}
1576
1577rule__Constraint__Alternatives_2
1578 @init {
1579 int stackSize = keepStackSize();
1580 }
1581:
1582 (
1583 { before(grammarAccess.getConstraintAccess().getGroup_2_0()); }
1584 (rule__Constraint__Group_2_0__0)
1585 { after(grammarAccess.getConstraintAccess().getGroup_2_0()); }
1586 )
1587 |
1588 (
1589 { before(grammarAccess.getConstraintAccess().getGroup_2_1()); }
1590 (rule__Constraint__Group_2_1__0)
1591 { after(grammarAccess.getConstraintAccess().getGroup_2_1()); }
1592 )
1593;
1594finally {
1595 restoreStackSize(stackSize);
1596}
1597
1598rule__ClosureType__Alternatives
1599 @init {
1600 int stackSize = keepStackSize();
1601 }
1602:
1603 (
1604 { before(grammarAccess.getClosureTypeAccess().getGroup_0()); }
1605 (rule__ClosureType__Group_0__0)
1606 { after(grammarAccess.getClosureTypeAccess().getGroup_0()); }
1607 )
1608 |
1609 (
1610 { before(grammarAccess.getClosureTypeAccess().getGroup_1()); }
1611 (rule__ClosureType__Group_1__0)
1612 { after(grammarAccess.getClosureTypeAccess().getGroup_1()); }
1613 )
1614;
1615finally {
1616 restoreStackSize(stackSize);
1617}
1618
1619rule__Literal__Alternatives
1620 @init {
1621 int stackSize = keepStackSize();
1622 }
1623:
1624 (
1625 { before(grammarAccess.getLiteralAccess().getVariableParserRuleCall_0()); }
1626 ruleVariable
1627 { after(grammarAccess.getLiteralAccess().getVariableParserRuleCall_0()); }
1628 )
1629 |
1630 (
1631 { before(grammarAccess.getLiteralAccess().getDataObjectParserRuleCall_1()); }
1632 ruleDataObject
1633 { after(grammarAccess.getLiteralAccess().getDataObjectParserRuleCall_1()); }
1634 )
1635;
1636finally {
1637 restoreStackSize(stackSize);
1638}
1639
1640rule__CDInterpretation__Alternatives
1641 @init {
1642 int stackSize = keepStackSize();
1643 }
1644:
1645 (
1646 { before(grammarAccess.getCDInterpretationAccess().getClassInterpretationParserRuleCall_0()); }
1647 ruleClassInterpretation
1648 { after(grammarAccess.getCDInterpretationAccess().getClassInterpretationParserRuleCall_0()); }
1649 )
1650 |
1651 (
1652 { before(grammarAccess.getCDInterpretationAccess().getEnumInterpretationParserRuleCall_1()); }
1653 ruleEnumInterpretation
1654 { after(grammarAccess.getCDInterpretationAccess().getEnumInterpretationParserRuleCall_1()); }
1655 )
1656 |
1657 (
1658 { before(grammarAccess.getCDInterpretationAccess().getGlobalRelationInterpretationParserRuleCall_2()); }
1659 ruleGlobalRelationInterpretation
1660 { after(grammarAccess.getCDInterpretationAccess().getGlobalRelationInterpretationParserRuleCall_2()); }
1661 )
1662;
1663finally {
1664 restoreStackSize(stackSize);
1665}
1666
1667rule__MultiplicityDefinition__Alternatives_2
1668 @init {
1669 int stackSize = keepStackSize();
1670 }
1671:
1672 (
1673 { before(grammarAccess.getMultiplicityDefinitionAccess().getUpperAssignment_2_0()); }
1674 (rule__MultiplicityDefinition__UpperAssignment_2_0)
1675 { after(grammarAccess.getMultiplicityDefinitionAccess().getUpperAssignment_2_0()); }
1676 )
1677 |
1678 (
1679 { before(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAssignment_2_1()); }
1680 (rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1)
1681 { after(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAssignment_2_1()); }
1682 )
1683;
1684finally {
1685 restoreStackSize(stackSize);
1686}
1687
1688rule__REALLiteral__Group__0
1689 @init {
1690 int stackSize = keepStackSize();
1691 }
1692:
1693 rule__REALLiteral__Group__0__Impl
1694 rule__REALLiteral__Group__1
1695;
1696finally {
1697 restoreStackSize(stackSize);
1698}
1699
1700rule__REALLiteral__Group__0__Impl
1701 @init {
1702 int stackSize = keepStackSize();
1703 }
1704:
1705(
1706 { before(grammarAccess.getREALLiteralAccess().getHyphenMinusKeyword_0()); }
1707 ('-')?
1708 { after(grammarAccess.getREALLiteralAccess().getHyphenMinusKeyword_0()); }
1709)
1710;
1711finally {
1712 restoreStackSize(stackSize);
1713}
1714
1715rule__REALLiteral__Group__1
1716 @init {
1717 int stackSize = keepStackSize();
1718 }
1719:
1720 rule__REALLiteral__Group__1__Impl
1721 rule__REALLiteral__Group__2
1722;
1723finally {
1724 restoreStackSize(stackSize);
1725}
1726
1727rule__REALLiteral__Group__1__Impl
1728 @init {
1729 int stackSize = keepStackSize();
1730 }
1731:
1732(
1733 { before(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_1()); }
1734 RULE_INT
1735 { after(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_1()); }
1736)
1737;
1738finally {
1739 restoreStackSize(stackSize);
1740}
1741
1742rule__REALLiteral__Group__2
1743 @init {
1744 int stackSize = keepStackSize();
1745 }
1746:
1747 rule__REALLiteral__Group__2__Impl
1748 rule__REALLiteral__Group__3
1749;
1750finally {
1751 restoreStackSize(stackSize);
1752}
1753
1754rule__REALLiteral__Group__2__Impl
1755 @init {
1756 int stackSize = keepStackSize();
1757 }
1758:
1759(
1760 { before(grammarAccess.getREALLiteralAccess().getFullStopKeyword_2()); }
1761 '.'
1762 { after(grammarAccess.getREALLiteralAccess().getFullStopKeyword_2()); }
1763)
1764;
1765finally {
1766 restoreStackSize(stackSize);
1767}
1768
1769rule__REALLiteral__Group__3
1770 @init {
1771 int stackSize = keepStackSize();
1772 }
1773:
1774 rule__REALLiteral__Group__3__Impl
1775;
1776finally {
1777 restoreStackSize(stackSize);
1778}
1779
1780rule__REALLiteral__Group__3__Impl
1781 @init {
1782 int stackSize = keepStackSize();
1783 }
1784:
1785(
1786 { before(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_3()); }
1787 RULE_INT
1788 { after(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_3()); }
1789)
1790;
1791finally {
1792 restoreStackSize(stackSize);
1793}
1794
1795
1796rule__INTLiteral__Group__0
1797 @init {
1798 int stackSize = keepStackSize();
1799 }
1800:
1801 rule__INTLiteral__Group__0__Impl
1802 rule__INTLiteral__Group__1
1803;
1804finally {
1805 restoreStackSize(stackSize);
1806}
1807
1808rule__INTLiteral__Group__0__Impl
1809 @init {
1810 int stackSize = keepStackSize();
1811 }
1812:
1813(
1814 { before(grammarAccess.getINTLiteralAccess().getHyphenMinusKeyword_0()); }
1815 ('-')?
1816 { after(grammarAccess.getINTLiteralAccess().getHyphenMinusKeyword_0()); }
1817)
1818;
1819finally {
1820 restoreStackSize(stackSize);
1821}
1822
1823rule__INTLiteral__Group__1
1824 @init {
1825 int stackSize = keepStackSize();
1826 }
1827:
1828 rule__INTLiteral__Group__1__Impl
1829;
1830finally {
1831 restoreStackSize(stackSize);
1832}
1833
1834rule__INTLiteral__Group__1__Impl
1835 @init {
1836 int stackSize = keepStackSize();
1837 }
1838:
1839(
1840 { before(grammarAccess.getINTLiteralAccess().getINTTerminalRuleCall_1()); }
1841 RULE_INT
1842 { after(grammarAccess.getINTLiteralAccess().getINTTerminalRuleCall_1()); }
1843)
1844;
1845finally {
1846 restoreStackSize(stackSize);
1847}
1848
1849
1850rule__BooleanValue__Group_0__0
1851 @init {
1852 int stackSize = keepStackSize();
1853 }
1854:
1855 rule__BooleanValue__Group_0__0__Impl
1856 rule__BooleanValue__Group_0__1
1857;
1858finally {
1859 restoreStackSize(stackSize);
1860}
1861
1862rule__BooleanValue__Group_0__0__Impl
1863 @init {
1864 int stackSize = keepStackSize();
1865 }
1866:
1867(
1868 { before(grammarAccess.getBooleanValueAccess().getBooleanTrueAction_0_0()); }
1869 ()
1870 { after(grammarAccess.getBooleanValueAccess().getBooleanTrueAction_0_0()); }
1871)
1872;
1873finally {
1874 restoreStackSize(stackSize);
1875}
1876
1877rule__BooleanValue__Group_0__1
1878 @init {
1879 int stackSize = keepStackSize();
1880 }
1881:
1882 rule__BooleanValue__Group_0__1__Impl
1883;
1884finally {
1885 restoreStackSize(stackSize);
1886}
1887
1888rule__BooleanValue__Group_0__1__Impl
1889 @init {
1890 int stackSize = keepStackSize();
1891 }
1892:
1893(
1894 { before(grammarAccess.getBooleanValueAccess().getTrueKeyword_0_1()); }
1895 'true'
1896 { after(grammarAccess.getBooleanValueAccess().getTrueKeyword_0_1()); }
1897)
1898;
1899finally {
1900 restoreStackSize(stackSize);
1901}
1902
1903
1904rule__BooleanValue__Group_1__0
1905 @init {
1906 int stackSize = keepStackSize();
1907 }
1908:
1909 rule__BooleanValue__Group_1__0__Impl
1910 rule__BooleanValue__Group_1__1
1911;
1912finally {
1913 restoreStackSize(stackSize);
1914}
1915
1916rule__BooleanValue__Group_1__0__Impl
1917 @init {
1918 int stackSize = keepStackSize();
1919 }
1920:
1921(
1922 { before(grammarAccess.getBooleanValueAccess().getFalseKeyword_1_0()); }
1923 'false'
1924 { after(grammarAccess.getBooleanValueAccess().getFalseKeyword_1_0()); }
1925)
1926;
1927finally {
1928 restoreStackSize(stackSize);
1929}
1930
1931rule__BooleanValue__Group_1__1
1932 @init {
1933 int stackSize = keepStackSize();
1934 }
1935:
1936 rule__BooleanValue__Group_1__1__Impl
1937;
1938finally {
1939 restoreStackSize(stackSize);
1940}
1941
1942rule__BooleanValue__Group_1__1__Impl
1943 @init {
1944 int stackSize = keepStackSize();
1945 }
1946:
1947(
1948 { before(grammarAccess.getBooleanValueAccess().getBooleanFalseAction_1_1()); }
1949 ()
1950 { after(grammarAccess.getBooleanValueAccess().getBooleanFalseAction_1_1()); }
1951)
1952;
1953finally {
1954 restoreStackSize(stackSize);
1955}
1956
1957
1958rule__TruthValue__Group_0__0
1959 @init {
1960 int stackSize = keepStackSize();
1961 }
1962:
1963 rule__TruthValue__Group_0__0__Impl
1964 rule__TruthValue__Group_0__1
1965;
1966finally {
1967 restoreStackSize(stackSize);
1968}
1969
1970rule__TruthValue__Group_0__0__Impl
1971 @init {
1972 int stackSize = keepStackSize();
1973 }
1974:
1975(
1976 { before(grammarAccess.getTruthValueAccess().getTrueAction_0_0()); }
1977 ()
1978 { after(grammarAccess.getTruthValueAccess().getTrueAction_0_0()); }
1979)
1980;
1981finally {
1982 restoreStackSize(stackSize);
1983}
1984
1985rule__TruthValue__Group_0__1
1986 @init {
1987 int stackSize = keepStackSize();
1988 }
1989:
1990 rule__TruthValue__Group_0__1__Impl
1991;
1992finally {
1993 restoreStackSize(stackSize);
1994}
1995
1996rule__TruthValue__Group_0__1__Impl
1997 @init {
1998 int stackSize = keepStackSize();
1999 }
2000:
2001(
2002 { before(grammarAccess.getTruthValueAccess().getTrueKeyword_0_1()); }
2003 'true'
2004 { after(grammarAccess.getTruthValueAccess().getTrueKeyword_0_1()); }
2005)
2006;
2007finally {
2008 restoreStackSize(stackSize);
2009}
2010
2011
2012rule__TruthValue__Group_1__0
2013 @init {
2014 int stackSize = keepStackSize();
2015 }
2016:
2017 rule__TruthValue__Group_1__0__Impl
2018 rule__TruthValue__Group_1__1
2019;
2020finally {
2021 restoreStackSize(stackSize);
2022}
2023
2024rule__TruthValue__Group_1__0__Impl
2025 @init {
2026 int stackSize = keepStackSize();
2027 }
2028:
2029(
2030 { before(grammarAccess.getTruthValueAccess().getFalseAction_1_0()); }
2031 ()
2032 { after(grammarAccess.getTruthValueAccess().getFalseAction_1_0()); }
2033)
2034;
2035finally {
2036 restoreStackSize(stackSize);
2037}
2038
2039rule__TruthValue__Group_1__1
2040 @init {
2041 int stackSize = keepStackSize();
2042 }
2043:
2044 rule__TruthValue__Group_1__1__Impl
2045;
2046finally {
2047 restoreStackSize(stackSize);
2048}
2049
2050rule__TruthValue__Group_1__1__Impl
2051 @init {
2052 int stackSize = keepStackSize();
2053 }
2054:
2055(
2056 { before(grammarAccess.getTruthValueAccess().getFalseKeyword_1_1()); }
2057 'false'
2058 { after(grammarAccess.getTruthValueAccess().getFalseKeyword_1_1()); }
2059)
2060;
2061finally {
2062 restoreStackSize(stackSize);
2063}
2064
2065
2066rule__TruthValue__Group_2__0
2067 @init {
2068 int stackSize = keepStackSize();
2069 }
2070:
2071 rule__TruthValue__Group_2__0__Impl
2072 rule__TruthValue__Group_2__1
2073;
2074finally {
2075 restoreStackSize(stackSize);
2076}
2077
2078rule__TruthValue__Group_2__0__Impl
2079 @init {
2080 int stackSize = keepStackSize();
2081 }
2082:
2083(
2084 { before(grammarAccess.getTruthValueAccess().getUnknownAction_2_0()); }
2085 ()
2086 { after(grammarAccess.getTruthValueAccess().getUnknownAction_2_0()); }
2087)
2088;
2089finally {
2090 restoreStackSize(stackSize);
2091}
2092
2093rule__TruthValue__Group_2__1
2094 @init {
2095 int stackSize = keepStackSize();
2096 }
2097:
2098 rule__TruthValue__Group_2__1__Impl
2099;
2100finally {
2101 restoreStackSize(stackSize);
2102}
2103
2104rule__TruthValue__Group_2__1__Impl
2105 @init {
2106 int stackSize = keepStackSize();
2107 }
2108:
2109(
2110 { before(grammarAccess.getTruthValueAccess().getUnknownKeyword_2_1()); }
2111 'unknown'
2112 { after(grammarAccess.getTruthValueAccess().getUnknownKeyword_2_1()); }
2113)
2114;
2115finally {
2116 restoreStackSize(stackSize);
2117}
2118
2119
2120rule__TruthValue__Group_3__0
2121 @init {
2122 int stackSize = keepStackSize();
2123 }
2124:
2125 rule__TruthValue__Group_3__0__Impl
2126 rule__TruthValue__Group_3__1
2127;
2128finally {
2129 restoreStackSize(stackSize);
2130}
2131
2132rule__TruthValue__Group_3__0__Impl
2133 @init {
2134 int stackSize = keepStackSize();
2135 }
2136:
2137(
2138 { before(grammarAccess.getTruthValueAccess().getErrorAction_3_0()); }
2139 ()
2140 { after(grammarAccess.getTruthValueAccess().getErrorAction_3_0()); }
2141)
2142;
2143finally {
2144 restoreStackSize(stackSize);
2145}
2146
2147rule__TruthValue__Group_3__1
2148 @init {
2149 int stackSize = keepStackSize();
2150 }
2151:
2152 rule__TruthValue__Group_3__1__Impl
2153;
2154finally {
2155 restoreStackSize(stackSize);
2156}
2157
2158rule__TruthValue__Group_3__1__Impl
2159 @init {
2160 int stackSize = keepStackSize();
2161 }
2162:
2163(
2164 { before(grammarAccess.getTruthValueAccess().getErrorKeyword_3_1()); }
2165 'error'
2166 { after(grammarAccess.getTruthValueAccess().getErrorKeyword_3_1()); }
2167)
2168;
2169finally {
2170 restoreStackSize(stackSize);
2171}
2172
2173
2174rule__BasicInterpretation__Group__0
2175 @init {
2176 int stackSize = keepStackSize();
2177 }
2178:
2179 rule__BasicInterpretation__Group__0__Impl
2180 rule__BasicInterpretation__Group__1
2181;
2182finally {
2183 restoreStackSize(stackSize);
2184}
2185
2186rule__BasicInterpretation__Group__0__Impl
2187 @init {
2188 int stackSize = keepStackSize();
2189 }
2190:
2191(
2192 { before(grammarAccess.getBasicInterpretationAccess().getSymbolAssignment_0()); }
2193 (rule__BasicInterpretation__SymbolAssignment_0)
2194 { after(grammarAccess.getBasicInterpretationAccess().getSymbolAssignment_0()); }
2195)
2196;
2197finally {
2198 restoreStackSize(stackSize);
2199}
2200
2201rule__BasicInterpretation__Group__1
2202 @init {
2203 int stackSize = keepStackSize();
2204 }
2205:
2206 rule__BasicInterpretation__Group__1__Impl
2207 rule__BasicInterpretation__Group__2
2208;
2209finally {
2210 restoreStackSize(stackSize);
2211}
2212
2213rule__BasicInterpretation__Group__1__Impl
2214 @init {
2215 int stackSize = keepStackSize();
2216 }
2217:
2218(
2219 { before(grammarAccess.getBasicInterpretationAccess().getLeftParenthesisKeyword_1()); }
2220 '('
2221 { after(grammarAccess.getBasicInterpretationAccess().getLeftParenthesisKeyword_1()); }
2222)
2223;
2224finally {
2225 restoreStackSize(stackSize);
2226}
2227
2228rule__BasicInterpretation__Group__2
2229 @init {
2230 int stackSize = keepStackSize();
2231 }
2232:
2233 rule__BasicInterpretation__Group__2__Impl
2234 rule__BasicInterpretation__Group__3
2235;
2236finally {
2237 restoreStackSize(stackSize);
2238}
2239
2240rule__BasicInterpretation__Group__2__Impl
2241 @init {
2242 int stackSize = keepStackSize();
2243 }
2244:
2245(
2246 { before(grammarAccess.getBasicInterpretationAccess().getObjectsAssignment_2()); }
2247 (rule__BasicInterpretation__ObjectsAssignment_2)*
2248 { after(grammarAccess.getBasicInterpretationAccess().getObjectsAssignment_2()); }
2249)
2250;
2251finally {
2252 restoreStackSize(stackSize);
2253}
2254
2255rule__BasicInterpretation__Group__3
2256 @init {
2257 int stackSize = keepStackSize();
2258 }
2259:
2260 rule__BasicInterpretation__Group__3__Impl
2261 rule__BasicInterpretation__Group__4
2262;
2263finally {
2264 restoreStackSize(stackSize);
2265}
2266
2267rule__BasicInterpretation__Group__3__Impl
2268 @init {
2269 int stackSize = keepStackSize();
2270 }
2271:
2272(
2273 { before(grammarAccess.getBasicInterpretationAccess().getRightParenthesisKeyword_3()); }
2274 ')'
2275 { after(grammarAccess.getBasicInterpretationAccess().getRightParenthesisKeyword_3()); }
2276)
2277;
2278finally {
2279 restoreStackSize(stackSize);
2280}
2281
2282rule__BasicInterpretation__Group__4
2283 @init {
2284 int stackSize = keepStackSize();
2285 }
2286:
2287 rule__BasicInterpretation__Group__4__Impl
2288 rule__BasicInterpretation__Group__5
2289;
2290finally {
2291 restoreStackSize(stackSize);
2292}
2293
2294rule__BasicInterpretation__Group__4__Impl
2295 @init {
2296 int stackSize = keepStackSize();
2297 }
2298:
2299(
2300 { before(grammarAccess.getBasicInterpretationAccess().getColonKeyword_4()); }
2301 ':'
2302 { after(grammarAccess.getBasicInterpretationAccess().getColonKeyword_4()); }
2303)
2304;
2305finally {
2306 restoreStackSize(stackSize);
2307}
2308
2309rule__BasicInterpretation__Group__5
2310 @init {
2311 int stackSize = keepStackSize();
2312 }
2313:
2314 rule__BasicInterpretation__Group__5__Impl
2315;
2316finally {
2317 restoreStackSize(stackSize);
2318}
2319
2320rule__BasicInterpretation__Group__5__Impl
2321 @init {
2322 int stackSize = keepStackSize();
2323 }
2324:
2325(
2326 { before(grammarAccess.getBasicInterpretationAccess().getValueAssignment_5()); }
2327 (rule__BasicInterpretation__ValueAssignment_5)
2328 { after(grammarAccess.getBasicInterpretationAccess().getValueAssignment_5()); }
2329)
2330;
2331finally {
2332 restoreStackSize(stackSize);
2333}
2334
2335
2336rule__ExistSymbol__Group__0
2337 @init {
2338 int stackSize = keepStackSize();
2339 }
2340:
2341 rule__ExistSymbol__Group__0__Impl
2342 rule__ExistSymbol__Group__1
2343;
2344finally {
2345 restoreStackSize(stackSize);
2346}
2347
2348rule__ExistSymbol__Group__0__Impl
2349 @init {
2350 int stackSize = keepStackSize();
2351 }
2352:
2353(
2354 { before(grammarAccess.getExistSymbolAccess().getExistsKeyword_0()); }
2355 'exists'
2356 { after(grammarAccess.getExistSymbolAccess().getExistsKeyword_0()); }
2357)
2358;
2359finally {
2360 restoreStackSize(stackSize);
2361}
2362
2363rule__ExistSymbol__Group__1
2364 @init {
2365 int stackSize = keepStackSize();
2366 }
2367:
2368 rule__ExistSymbol__Group__1__Impl
2369;
2370finally {
2371 restoreStackSize(stackSize);
2372}
2373
2374rule__ExistSymbol__Group__1__Impl
2375 @init {
2376 int stackSize = keepStackSize();
2377 }
2378:
2379(
2380 { before(grammarAccess.getExistSymbolAccess().getExistSymbolAction_1()); }
2381 ()
2382 { after(grammarAccess.getExistSymbolAccess().getExistSymbolAction_1()); }
2383)
2384;
2385finally {
2386 restoreStackSize(stackSize);
2387}
2388
2389
2390rule__EqualsSymbol__Group__0
2391 @init {
2392 int stackSize = keepStackSize();
2393 }
2394:
2395 rule__EqualsSymbol__Group__0__Impl
2396 rule__EqualsSymbol__Group__1
2397;
2398finally {
2399 restoreStackSize(stackSize);
2400}
2401
2402rule__EqualsSymbol__Group__0__Impl
2403 @init {
2404 int stackSize = keepStackSize();
2405 }
2406:
2407(
2408 { before(grammarAccess.getEqualsSymbolAccess().getEqualsKeyword_0()); }
2409 'equals'
2410 { after(grammarAccess.getEqualsSymbolAccess().getEqualsKeyword_0()); }
2411)
2412;
2413finally {
2414 restoreStackSize(stackSize);
2415}
2416
2417rule__EqualsSymbol__Group__1
2418 @init {
2419 int stackSize = keepStackSize();
2420 }
2421:
2422 rule__EqualsSymbol__Group__1__Impl
2423;
2424finally {
2425 restoreStackSize(stackSize);
2426}
2427
2428rule__EqualsSymbol__Group__1__Impl
2429 @init {
2430 int stackSize = keepStackSize();
2431 }
2432:
2433(
2434 { before(grammarAccess.getEqualsSymbolAccess().getEqualsSymbolAction_1()); }
2435 ()
2436 { after(grammarAccess.getEqualsSymbolAccess().getEqualsSymbolAction_1()); }
2437)
2438;
2439finally {
2440 restoreStackSize(stackSize);
2441}
2442
2443
2444rule__BooleanSymbol__Group__0
2445 @init {
2446 int stackSize = keepStackSize();
2447 }
2448:
2449 rule__BooleanSymbol__Group__0__Impl
2450 rule__BooleanSymbol__Group__1
2451;
2452finally {
2453 restoreStackSize(stackSize);
2454}
2455
2456rule__BooleanSymbol__Group__0__Impl
2457 @init {
2458 int stackSize = keepStackSize();
2459 }
2460:
2461(
2462 { before(grammarAccess.getBooleanSymbolAccess().getBoolKeyword_0()); }
2463 'bool'
2464 { after(grammarAccess.getBooleanSymbolAccess().getBoolKeyword_0()); }
2465)
2466;
2467finally {
2468 restoreStackSize(stackSize);
2469}
2470
2471rule__BooleanSymbol__Group__1
2472 @init {
2473 int stackSize = keepStackSize();
2474 }
2475:
2476 rule__BooleanSymbol__Group__1__Impl
2477;
2478finally {
2479 restoreStackSize(stackSize);
2480}
2481
2482rule__BooleanSymbol__Group__1__Impl
2483 @init {
2484 int stackSize = keepStackSize();
2485 }
2486:
2487(
2488 { before(grammarAccess.getBooleanSymbolAccess().getBooleanSymbolAction_1()); }
2489 ()
2490 { after(grammarAccess.getBooleanSymbolAccess().getBooleanSymbolAction_1()); }
2491)
2492;
2493finally {
2494 restoreStackSize(stackSize);
2495}
2496
2497
2498rule__IntegerSymbol__Group__0
2499 @init {
2500 int stackSize = keepStackSize();
2501 }
2502:
2503 rule__IntegerSymbol__Group__0__Impl
2504 rule__IntegerSymbol__Group__1
2505;
2506finally {
2507 restoreStackSize(stackSize);
2508}
2509
2510rule__IntegerSymbol__Group__0__Impl
2511 @init {
2512 int stackSize = keepStackSize();
2513 }
2514:
2515(
2516 { before(grammarAccess.getIntegerSymbolAccess().getIntKeyword_0()); }
2517 'int'
2518 { after(grammarAccess.getIntegerSymbolAccess().getIntKeyword_0()); }
2519)
2520;
2521finally {
2522 restoreStackSize(stackSize);
2523}
2524
2525rule__IntegerSymbol__Group__1
2526 @init {
2527 int stackSize = keepStackSize();
2528 }
2529:
2530 rule__IntegerSymbol__Group__1__Impl
2531;
2532finally {
2533 restoreStackSize(stackSize);
2534}
2535
2536rule__IntegerSymbol__Group__1__Impl
2537 @init {
2538 int stackSize = keepStackSize();
2539 }
2540:
2541(
2542 { before(grammarAccess.getIntegerSymbolAccess().getIntegerSymbolAction_1()); }
2543 ()
2544 { after(grammarAccess.getIntegerSymbolAccess().getIntegerSymbolAction_1()); }
2545)
2546;
2547finally {
2548 restoreStackSize(stackSize);
2549}
2550
2551
2552rule__RealSymbol__Group__0
2553 @init {
2554 int stackSize = keepStackSize();
2555 }
2556:
2557 rule__RealSymbol__Group__0__Impl
2558 rule__RealSymbol__Group__1
2559;
2560finally {
2561 restoreStackSize(stackSize);
2562}
2563
2564rule__RealSymbol__Group__0__Impl
2565 @init {
2566 int stackSize = keepStackSize();
2567 }
2568:
2569(
2570 { before(grammarAccess.getRealSymbolAccess().getRealKeyword_0()); }
2571 'real'
2572 { after(grammarAccess.getRealSymbolAccess().getRealKeyword_0()); }
2573)
2574;
2575finally {
2576 restoreStackSize(stackSize);
2577}
2578
2579rule__RealSymbol__Group__1
2580 @init {
2581 int stackSize = keepStackSize();
2582 }
2583:
2584 rule__RealSymbol__Group__1__Impl
2585;
2586finally {
2587 restoreStackSize(stackSize);
2588}
2589
2590rule__RealSymbol__Group__1__Impl
2591 @init {
2592 int stackSize = keepStackSize();
2593 }
2594:
2595(
2596 { before(grammarAccess.getRealSymbolAccess().getRealSymbolAction_1()); }
2597 ()
2598 { after(grammarAccess.getRealSymbolAccess().getRealSymbolAction_1()); }
2599)
2600;
2601finally {
2602 restoreStackSize(stackSize);
2603}
2604
2605
2606rule__StringSymbol__Group__0
2607 @init {
2608 int stackSize = keepStackSize();
2609 }
2610:
2611 rule__StringSymbol__Group__0__Impl
2612 rule__StringSymbol__Group__1
2613;
2614finally {
2615 restoreStackSize(stackSize);
2616}
2617
2618rule__StringSymbol__Group__0__Impl
2619 @init {
2620 int stackSize = keepStackSize();
2621 }
2622:
2623(
2624 { before(grammarAccess.getStringSymbolAccess().getStringKeyword_0()); }
2625 'string'
2626 { after(grammarAccess.getStringSymbolAccess().getStringKeyword_0()); }
2627)
2628;
2629finally {
2630 restoreStackSize(stackSize);
2631}
2632
2633rule__StringSymbol__Group__1
2634 @init {
2635 int stackSize = keepStackSize();
2636 }
2637:
2638 rule__StringSymbol__Group__1__Impl
2639;
2640finally {
2641 restoreStackSize(stackSize);
2642}
2643
2644rule__StringSymbol__Group__1__Impl
2645 @init {
2646 int stackSize = keepStackSize();
2647 }
2648:
2649(
2650 { before(grammarAccess.getStringSymbolAccess().getStringSymbolAction_1()); }
2651 ()
2652 { after(grammarAccess.getStringSymbolAccess().getStringSymbolAction_1()); }
2653)
2654;
2655finally {
2656 restoreStackSize(stackSize);
2657}
2658
2659
2660rule__NamedObject__Group__0
2661 @init {
2662 int stackSize = keepStackSize();
2663 }
2664:
2665 rule__NamedObject__Group__0__Impl
2666 rule__NamedObject__Group__1
2667;
2668finally {
2669 restoreStackSize(stackSize);
2670}
2671
2672rule__NamedObject__Group__0__Impl
2673 @init {
2674 int stackSize = keepStackSize();
2675 }
2676:
2677(
2678 { before(grammarAccess.getNamedObjectAccess().getApostropheKeyword_0()); }
2679 '\''
2680 { after(grammarAccess.getNamedObjectAccess().getApostropheKeyword_0()); }
2681)
2682;
2683finally {
2684 restoreStackSize(stackSize);
2685}
2686
2687rule__NamedObject__Group__1
2688 @init {
2689 int stackSize = keepStackSize();
2690 }
2691:
2692 rule__NamedObject__Group__1__Impl
2693 rule__NamedObject__Group__2
2694;
2695finally {
2696 restoreStackSize(stackSize);
2697}
2698
2699rule__NamedObject__Group__1__Impl
2700 @init {
2701 int stackSize = keepStackSize();
2702 }
2703:
2704(
2705 { before(grammarAccess.getNamedObjectAccess().getNameAssignment_1()); }
2706 (rule__NamedObject__NameAssignment_1)
2707 { after(grammarAccess.getNamedObjectAccess().getNameAssignment_1()); }
2708)
2709;
2710finally {
2711 restoreStackSize(stackSize);
2712}
2713
2714rule__NamedObject__Group__2
2715 @init {
2716 int stackSize = keepStackSize();
2717 }
2718:
2719 rule__NamedObject__Group__2__Impl
2720;
2721finally {
2722 restoreStackSize(stackSize);
2723}
2724
2725rule__NamedObject__Group__2__Impl
2726 @init {
2727 int stackSize = keepStackSize();
2728 }
2729:
2730(
2731 { before(grammarAccess.getNamedObjectAccess().getApostropheKeyword_2()); }
2732 '\''
2733 { after(grammarAccess.getNamedObjectAccess().getApostropheKeyword_2()); }
2734)
2735;
2736finally {
2737 restoreStackSize(stackSize);
2738}
2739
2740
2741rule__PredicateSymbol__Group__0
2742 @init {
2743 int stackSize = keepStackSize();
2744 }
2745:
2746 rule__PredicateSymbol__Group__0__Impl
2747 rule__PredicateSymbol__Group__1
2748;
2749finally {
2750 restoreStackSize(stackSize);
2751}
2752
2753rule__PredicateSymbol__Group__0__Impl
2754 @init {
2755 int stackSize = keepStackSize();
2756 }
2757:
2758(
2759 { before(grammarAccess.getPredicateSymbolAccess().getPredicateKeyword_0()); }
2760 'predicate'
2761 { after(grammarAccess.getPredicateSymbolAccess().getPredicateKeyword_0()); }
2762)
2763;
2764finally {
2765 restoreStackSize(stackSize);
2766}
2767
2768rule__PredicateSymbol__Group__1
2769 @init {
2770 int stackSize = keepStackSize();
2771 }
2772:
2773 rule__PredicateSymbol__Group__1__Impl
2774 rule__PredicateSymbol__Group__2
2775;
2776finally {
2777 restoreStackSize(stackSize);
2778}
2779
2780rule__PredicateSymbol__Group__1__Impl
2781 @init {
2782 int stackSize = keepStackSize();
2783 }
2784:
2785(
2786 { before(grammarAccess.getPredicateSymbolAccess().getSymbolAssignment_1()); }
2787 (rule__PredicateSymbol__SymbolAssignment_1)
2788 { after(grammarAccess.getPredicateSymbolAccess().getSymbolAssignment_1()); }
2789)
2790;
2791finally {
2792 restoreStackSize(stackSize);
2793}
2794
2795rule__PredicateSymbol__Group__2
2796 @init {
2797 int stackSize = keepStackSize();
2798 }
2799:
2800 rule__PredicateSymbol__Group__2__Impl
2801 rule__PredicateSymbol__Group__3
2802;
2803finally {
2804 restoreStackSize(stackSize);
2805}
2806
2807rule__PredicateSymbol__Group__2__Impl
2808 @init {
2809 int stackSize = keepStackSize();
2810 }
2811:
2812(
2813 { before(grammarAccess.getPredicateSymbolAccess().getLeftParenthesisKeyword_2()); }
2814 '('
2815 { after(grammarAccess.getPredicateSymbolAccess().getLeftParenthesisKeyword_2()); }
2816)
2817;
2818finally {
2819 restoreStackSize(stackSize);
2820}
2821
2822rule__PredicateSymbol__Group__3
2823 @init {
2824 int stackSize = keepStackSize();
2825 }
2826:
2827 rule__PredicateSymbol__Group__3__Impl
2828 rule__PredicateSymbol__Group__4
2829;
2830finally {
2831 restoreStackSize(stackSize);
2832}
2833
2834rule__PredicateSymbol__Group__3__Impl
2835 @init {
2836 int stackSize = keepStackSize();
2837 }
2838:
2839(
2840 { before(grammarAccess.getPredicateSymbolAccess().getParametersAssignment_3()); }
2841 (rule__PredicateSymbol__ParametersAssignment_3)*
2842 { after(grammarAccess.getPredicateSymbolAccess().getParametersAssignment_3()); }
2843)
2844;
2845finally {
2846 restoreStackSize(stackSize);
2847}
2848
2849rule__PredicateSymbol__Group__4
2850 @init {
2851 int stackSize = keepStackSize();
2852 }
2853:
2854 rule__PredicateSymbol__Group__4__Impl
2855 rule__PredicateSymbol__Group__5
2856;
2857finally {
2858 restoreStackSize(stackSize);
2859}
2860
2861rule__PredicateSymbol__Group__4__Impl
2862 @init {
2863 int stackSize = keepStackSize();
2864 }
2865:
2866(
2867 { before(grammarAccess.getPredicateSymbolAccess().getRightParenthesisKeyword_4()); }
2868 ')'
2869 { after(grammarAccess.getPredicateSymbolAccess().getRightParenthesisKeyword_4()); }
2870)
2871;
2872finally {
2873 restoreStackSize(stackSize);
2874}
2875
2876rule__PredicateSymbol__Group__5
2877 @init {
2878 int stackSize = keepStackSize();
2879 }
2880:
2881 rule__PredicateSymbol__Group__5__Impl
2882 rule__PredicateSymbol__Group__6
2883;
2884finally {
2885 restoreStackSize(stackSize);
2886}
2887
2888rule__PredicateSymbol__Group__5__Impl
2889 @init {
2890 int stackSize = keepStackSize();
2891 }
2892:
2893(
2894 { before(grammarAccess.getPredicateSymbolAccess().getColonKeyword_5()); }
2895 ':'
2896 { after(grammarAccess.getPredicateSymbolAccess().getColonKeyword_5()); }
2897)
2898;
2899finally {
2900 restoreStackSize(stackSize);
2901}
2902
2903rule__PredicateSymbol__Group__6
2904 @init {
2905 int stackSize = keepStackSize();
2906 }
2907:
2908 rule__PredicateSymbol__Group__6__Impl
2909 rule__PredicateSymbol__Group__7
2910;
2911finally {
2912 restoreStackSize(stackSize);
2913}
2914
2915rule__PredicateSymbol__Group__6__Impl
2916 @init {
2917 int stackSize = keepStackSize();
2918 }
2919:
2920(
2921 { before(grammarAccess.getPredicateSymbolAccess().getAlternatives_6()); }
2922 (rule__PredicateSymbol__Alternatives_6)
2923 { after(grammarAccess.getPredicateSymbolAccess().getAlternatives_6()); }
2924)
2925;
2926finally {
2927 restoreStackSize(stackSize);
2928}
2929
2930rule__PredicateSymbol__Group__7
2931 @init {
2932 int stackSize = keepStackSize();
2933 }
2934:
2935 rule__PredicateSymbol__Group__7__Impl
2936;
2937finally {
2938 restoreStackSize(stackSize);
2939}
2940
2941rule__PredicateSymbol__Group__7__Impl
2942 @init {
2943 int stackSize = keepStackSize();
2944 }
2945:
2946(
2947 { before(grammarAccess.getPredicateSymbolAccess().getFullStopKeyword_7()); }
2948 '.'
2949 { after(grammarAccess.getPredicateSymbolAccess().getFullStopKeyword_7()); }
2950)
2951;
2952finally {
2953 restoreStackSize(stackSize);
2954}
2955
2956
2957rule__PredicateSymbol__Group_6_1__0
2958 @init {
2959 int stackSize = keepStackSize();
2960 }
2961:
2962 rule__PredicateSymbol__Group_6_1__0__Impl
2963 rule__PredicateSymbol__Group_6_1__1
2964;
2965finally {
2966 restoreStackSize(stackSize);
2967}
2968
2969rule__PredicateSymbol__Group_6_1__0__Impl
2970 @init {
2971 int stackSize = keepStackSize();
2972 }
2973:
2974(
2975 { before(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_0()); }
2976 (rule__PredicateSymbol__BodiesAssignment_6_1_0)
2977 { after(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_0()); }
2978)
2979;
2980finally {
2981 restoreStackSize(stackSize);
2982}
2983
2984rule__PredicateSymbol__Group_6_1__1
2985 @init {
2986 int stackSize = keepStackSize();
2987 }
2988:
2989 rule__PredicateSymbol__Group_6_1__1__Impl
2990;
2991finally {
2992 restoreStackSize(stackSize);
2993}
2994
2995rule__PredicateSymbol__Group_6_1__1__Impl
2996 @init {
2997 int stackSize = keepStackSize();
2998 }
2999:
3000(
3001 { before(grammarAccess.getPredicateSymbolAccess().getGroup_6_1_1()); }
3002 (rule__PredicateSymbol__Group_6_1_1__0)*
3003 { after(grammarAccess.getPredicateSymbolAccess().getGroup_6_1_1()); }
3004)
3005;
3006finally {
3007 restoreStackSize(stackSize);
3008}
3009
3010
3011rule__PredicateSymbol__Group_6_1_1__0
3012 @init {
3013 int stackSize = keepStackSize();
3014 }
3015:
3016 rule__PredicateSymbol__Group_6_1_1__0__Impl
3017 rule__PredicateSymbol__Group_6_1_1__1
3018;
3019finally {
3020 restoreStackSize(stackSize);
3021}
3022
3023rule__PredicateSymbol__Group_6_1_1__0__Impl
3024 @init {
3025 int stackSize = keepStackSize();
3026 }
3027:
3028(
3029 { before(grammarAccess.getPredicateSymbolAccess().getVerticalLineKeyword_6_1_1_0()); }
3030 '|'
3031 { after(grammarAccess.getPredicateSymbolAccess().getVerticalLineKeyword_6_1_1_0()); }
3032)
3033;
3034finally {
3035 restoreStackSize(stackSize);
3036}
3037
3038rule__PredicateSymbol__Group_6_1_1__1
3039 @init {
3040 int stackSize = keepStackSize();
3041 }
3042:
3043 rule__PredicateSymbol__Group_6_1_1__1__Impl
3044;
3045finally {
3046 restoreStackSize(stackSize);
3047}
3048
3049rule__PredicateSymbol__Group_6_1_1__1__Impl
3050 @init {
3051 int stackSize = keepStackSize();
3052 }
3053:
3054(
3055 { before(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_1_1()); }
3056 (rule__PredicateSymbol__BodiesAssignment_6_1_1_1)
3057 { after(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_1_1()); }
3058)
3059;
3060finally {
3061 restoreStackSize(stackSize);
3062}
3063
3064
3065rule__ErrorPredicate__Group__0
3066 @init {
3067 int stackSize = keepStackSize();
3068 }
3069:
3070 rule__ErrorPredicate__Group__0__Impl
3071 rule__ErrorPredicate__Group__1
3072;
3073finally {
3074 restoreStackSize(stackSize);
3075}
3076
3077rule__ErrorPredicate__Group__0__Impl
3078 @init {
3079 int stackSize = keepStackSize();
3080 }
3081:
3082(
3083 { before(grammarAccess.getErrorPredicateAccess().getErrorPredicateAction_0()); }
3084 ()
3085 { after(grammarAccess.getErrorPredicateAccess().getErrorPredicateAction_0()); }
3086)
3087;
3088finally {
3089 restoreStackSize(stackSize);
3090}
3091
3092rule__ErrorPredicate__Group__1
3093 @init {
3094 int stackSize = keepStackSize();
3095 }
3096:
3097 rule__ErrorPredicate__Group__1__Impl
3098 rule__ErrorPredicate__Group__2
3099;
3100finally {
3101 restoreStackSize(stackSize);
3102}
3103
3104rule__ErrorPredicate__Group__1__Impl
3105 @init {
3106 int stackSize = keepStackSize();
3107 }
3108:
3109(
3110 { before(grammarAccess.getErrorPredicateAccess().getErrorKeyword_1()); }
3111 'error'
3112 { after(grammarAccess.getErrorPredicateAccess().getErrorKeyword_1()); }
3113)
3114;
3115finally {
3116 restoreStackSize(stackSize);
3117}
3118
3119rule__ErrorPredicate__Group__2
3120 @init {
3121 int stackSize = keepStackSize();
3122 }
3123:
3124 rule__ErrorPredicate__Group__2__Impl
3125 rule__ErrorPredicate__Group__3
3126;
3127finally {
3128 restoreStackSize(stackSize);
3129}
3130
3131rule__ErrorPredicate__Group__2__Impl
3132 @init {
3133 int stackSize = keepStackSize();
3134 }
3135:
3136(
3137 { before(grammarAccess.getErrorPredicateAccess().getNameAssignment_2()); }
3138 (rule__ErrorPredicate__NameAssignment_2)?
3139 { after(grammarAccess.getErrorPredicateAccess().getNameAssignment_2()); }
3140)
3141;
3142finally {
3143 restoreStackSize(stackSize);
3144}
3145
3146rule__ErrorPredicate__Group__3
3147 @init {
3148 int stackSize = keepStackSize();
3149 }
3150:
3151 rule__ErrorPredicate__Group__3__Impl
3152 rule__ErrorPredicate__Group__4
3153;
3154finally {
3155 restoreStackSize(stackSize);
3156}
3157
3158rule__ErrorPredicate__Group__3__Impl
3159 @init {
3160 int stackSize = keepStackSize();
3161 }
3162:
3163(
3164 { before(grammarAccess.getErrorPredicateAccess().getGroup_3()); }
3165 (rule__ErrorPredicate__Group_3__0)
3166 { after(grammarAccess.getErrorPredicateAccess().getGroup_3()); }
3167)
3168;
3169finally {
3170 restoreStackSize(stackSize);
3171}
3172
3173rule__ErrorPredicate__Group__4
3174 @init {
3175 int stackSize = keepStackSize();
3176 }
3177:
3178 rule__ErrorPredicate__Group__4__Impl
3179 rule__ErrorPredicate__Group__5
3180;
3181finally {
3182 restoreStackSize(stackSize);
3183}
3184
3185rule__ErrorPredicate__Group__4__Impl
3186 @init {
3187 int stackSize = keepStackSize();
3188 }
3189:
3190(
3191 { before(grammarAccess.getErrorPredicateAccess().getColonKeyword_4()); }
3192 ':'
3193 { after(grammarAccess.getErrorPredicateAccess().getColonKeyword_4()); }
3194)
3195;
3196finally {
3197 restoreStackSize(stackSize);
3198}
3199
3200rule__ErrorPredicate__Group__5
3201 @init {
3202 int stackSize = keepStackSize();
3203 }
3204:
3205 rule__ErrorPredicate__Group__5__Impl
3206 rule__ErrorPredicate__Group__6
3207;
3208finally {
3209 restoreStackSize(stackSize);
3210}
3211
3212rule__ErrorPredicate__Group__5__Impl
3213 @init {
3214 int stackSize = keepStackSize();
3215 }
3216:
3217(
3218 { before(grammarAccess.getErrorPredicateAccess().getAlternatives_5()); }
3219 (rule__ErrorPredicate__Alternatives_5)
3220 { after(grammarAccess.getErrorPredicateAccess().getAlternatives_5()); }
3221)
3222;
3223finally {
3224 restoreStackSize(stackSize);
3225}
3226
3227rule__ErrorPredicate__Group__6
3228 @init {
3229 int stackSize = keepStackSize();
3230 }
3231:
3232 rule__ErrorPredicate__Group__6__Impl
3233;
3234finally {
3235 restoreStackSize(stackSize);
3236}
3237
3238rule__ErrorPredicate__Group__6__Impl
3239 @init {
3240 int stackSize = keepStackSize();
3241 }
3242:
3243(
3244 { before(grammarAccess.getErrorPredicateAccess().getFullStopKeyword_6()); }
3245 '.'
3246 { after(grammarAccess.getErrorPredicateAccess().getFullStopKeyword_6()); }
3247)
3248;
3249finally {
3250 restoreStackSize(stackSize);
3251}
3252
3253
3254rule__ErrorPredicate__Group_3__0
3255 @init {
3256 int stackSize = keepStackSize();
3257 }
3258:
3259 rule__ErrorPredicate__Group_3__0__Impl
3260 rule__ErrorPredicate__Group_3__1
3261;
3262finally {
3263 restoreStackSize(stackSize);
3264}
3265
3266rule__ErrorPredicate__Group_3__0__Impl
3267 @init {
3268 int stackSize = keepStackSize();
3269 }
3270:
3271(
3272 { before(grammarAccess.getErrorPredicateAccess().getLeftParenthesisKeyword_3_0()); }
3273 '('
3274 { after(grammarAccess.getErrorPredicateAccess().getLeftParenthesisKeyword_3_0()); }
3275)
3276;
3277finally {
3278 restoreStackSize(stackSize);
3279}
3280
3281rule__ErrorPredicate__Group_3__1
3282 @init {
3283 int stackSize = keepStackSize();
3284 }
3285:
3286 rule__ErrorPredicate__Group_3__1__Impl
3287 rule__ErrorPredicate__Group_3__2
3288;
3289finally {
3290 restoreStackSize(stackSize);
3291}
3292
3293rule__ErrorPredicate__Group_3__1__Impl
3294 @init {
3295 int stackSize = keepStackSize();
3296 }
3297:
3298(
3299 { before(grammarAccess.getErrorPredicateAccess().getParametersAssignment_3_1()); }
3300 (rule__ErrorPredicate__ParametersAssignment_3_1)*
3301 { after(grammarAccess.getErrorPredicateAccess().getParametersAssignment_3_1()); }
3302)
3303;
3304finally {
3305 restoreStackSize(stackSize);
3306}
3307
3308rule__ErrorPredicate__Group_3__2
3309 @init {
3310 int stackSize = keepStackSize();
3311 }
3312:
3313 rule__ErrorPredicate__Group_3__2__Impl
3314;
3315finally {
3316 restoreStackSize(stackSize);
3317}
3318
3319rule__ErrorPredicate__Group_3__2__Impl
3320 @init {
3321 int stackSize = keepStackSize();
3322 }
3323:
3324(
3325 { before(grammarAccess.getErrorPredicateAccess().getRightParenthesisKeyword_3_2()); }
3326 ')'
3327 { after(grammarAccess.getErrorPredicateAccess().getRightParenthesisKeyword_3_2()); }
3328)
3329;
3330finally {
3331 restoreStackSize(stackSize);
3332}
3333
3334
3335rule__ErrorPredicate__Group_5_1__0
3336 @init {
3337 int stackSize = keepStackSize();
3338 }
3339:
3340 rule__ErrorPredicate__Group_5_1__0__Impl
3341 rule__ErrorPredicate__Group_5_1__1
3342;
3343finally {
3344 restoreStackSize(stackSize);
3345}
3346
3347rule__ErrorPredicate__Group_5_1__0__Impl
3348 @init {
3349 int stackSize = keepStackSize();
3350 }
3351:
3352(
3353 { before(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_0()); }
3354 (rule__ErrorPredicate__BodiesAssignment_5_1_0)
3355 { after(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_0()); }
3356)
3357;
3358finally {
3359 restoreStackSize(stackSize);
3360}
3361
3362rule__ErrorPredicate__Group_5_1__1
3363 @init {
3364 int stackSize = keepStackSize();
3365 }
3366:
3367 rule__ErrorPredicate__Group_5_1__1__Impl
3368;
3369finally {
3370 restoreStackSize(stackSize);
3371}
3372
3373rule__ErrorPredicate__Group_5_1__1__Impl
3374 @init {
3375 int stackSize = keepStackSize();
3376 }
3377:
3378(
3379 { before(grammarAccess.getErrorPredicateAccess().getGroup_5_1_1()); }
3380 (rule__ErrorPredicate__Group_5_1_1__0)*
3381 { after(grammarAccess.getErrorPredicateAccess().getGroup_5_1_1()); }
3382)
3383;
3384finally {
3385 restoreStackSize(stackSize);
3386}
3387
3388
3389rule__ErrorPredicate__Group_5_1_1__0
3390 @init {
3391 int stackSize = keepStackSize();
3392 }
3393:
3394 rule__ErrorPredicate__Group_5_1_1__0__Impl
3395 rule__ErrorPredicate__Group_5_1_1__1
3396;
3397finally {
3398 restoreStackSize(stackSize);
3399}
3400
3401rule__ErrorPredicate__Group_5_1_1__0__Impl
3402 @init {
3403 int stackSize = keepStackSize();
3404 }
3405:
3406(
3407 { before(grammarAccess.getErrorPredicateAccess().getVerticalLineKeyword_5_1_1_0()); }
3408 '|'
3409 { after(grammarAccess.getErrorPredicateAccess().getVerticalLineKeyword_5_1_1_0()); }
3410)
3411;
3412finally {
3413 restoreStackSize(stackSize);
3414}
3415
3416rule__ErrorPredicate__Group_5_1_1__1
3417 @init {
3418 int stackSize = keepStackSize();
3419 }
3420:
3421 rule__ErrorPredicate__Group_5_1_1__1__Impl
3422;
3423finally {
3424 restoreStackSize(stackSize);
3425}
3426
3427rule__ErrorPredicate__Group_5_1_1__1__Impl
3428 @init {
3429 int stackSize = keepStackSize();
3430 }
3431:
3432(
3433 { before(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_1_1()); }
3434 (rule__ErrorPredicate__BodiesAssignment_5_1_1_1)
3435 { after(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_1_1()); }
3436)
3437;
3438finally {
3439 restoreStackSize(stackSize);
3440}
3441
3442
3443rule__Parameter__Group__0
3444 @init {
3445 int stackSize = keepStackSize();
3446 }
3447:
3448 rule__Parameter__Group__0__Impl
3449 rule__Parameter__Group__1
3450;
3451finally {
3452 restoreStackSize(stackSize);
3453}
3454
3455rule__Parameter__Group__0__Impl
3456 @init {
3457 int stackSize = keepStackSize();
3458 }
3459:
3460(
3461 { before(grammarAccess.getParameterAccess().getVariableAssignment_0()); }
3462 (rule__Parameter__VariableAssignment_0)
3463 { after(grammarAccess.getParameterAccess().getVariableAssignment_0()); }
3464)
3465;
3466finally {
3467 restoreStackSize(stackSize);
3468}
3469
3470rule__Parameter__Group__1
3471 @init {
3472 int stackSize = keepStackSize();
3473 }
3474:
3475 rule__Parameter__Group__1__Impl
3476;
3477finally {
3478 restoreStackSize(stackSize);
3479}
3480
3481rule__Parameter__Group__1__Impl
3482 @init {
3483 int stackSize = keepStackSize();
3484 }
3485:
3486(
3487 { before(grammarAccess.getParameterAccess().getGroup_1()); }
3488 (rule__Parameter__Group_1__0)?
3489 { after(grammarAccess.getParameterAccess().getGroup_1()); }
3490)
3491;
3492finally {
3493 restoreStackSize(stackSize);
3494}
3495
3496
3497rule__Parameter__Group_1__0
3498 @init {
3499 int stackSize = keepStackSize();
3500 }
3501:
3502 rule__Parameter__Group_1__0__Impl
3503 rule__Parameter__Group_1__1
3504;
3505finally {
3506 restoreStackSize(stackSize);
3507}
3508
3509rule__Parameter__Group_1__0__Impl
3510 @init {
3511 int stackSize = keepStackSize();
3512 }
3513:
3514(
3515 { before(grammarAccess.getParameterAccess().getColonKeyword_1_0()); }
3516 ':'
3517 { after(grammarAccess.getParameterAccess().getColonKeyword_1_0()); }
3518)
3519;
3520finally {
3521 restoreStackSize(stackSize);
3522}
3523
3524rule__Parameter__Group_1__1
3525 @init {
3526 int stackSize = keepStackSize();
3527 }
3528:
3529 rule__Parameter__Group_1__1__Impl
3530;
3531finally {
3532 restoreStackSize(stackSize);
3533}
3534
3535rule__Parameter__Group_1__1__Impl
3536 @init {
3537 int stackSize = keepStackSize();
3538 }
3539:
3540(
3541 { before(grammarAccess.getParameterAccess().getTypeAssignment_1_1()); }
3542 (rule__Parameter__TypeAssignment_1_1)
3543 { after(grammarAccess.getParameterAccess().getTypeAssignment_1_1()); }
3544)
3545;
3546finally {
3547 restoreStackSize(stackSize);
3548}
3549
3550
3551rule__PatternBody__Group__0
3552 @init {
3553 int stackSize = keepStackSize();
3554 }
3555:
3556 rule__PatternBody__Group__0__Impl
3557 rule__PatternBody__Group__1
3558;
3559finally {
3560 restoreStackSize(stackSize);
3561}
3562
3563rule__PatternBody__Group__0__Impl
3564 @init {
3565 int stackSize = keepStackSize();
3566 }
3567:
3568(
3569 { before(grammarAccess.getPatternBodyAccess().getPatternBodyAction_0()); }
3570 ()
3571 { after(grammarAccess.getPatternBodyAccess().getPatternBodyAction_0()); }
3572)
3573;
3574finally {
3575 restoreStackSize(stackSize);
3576}
3577
3578rule__PatternBody__Group__1
3579 @init {
3580 int stackSize = keepStackSize();
3581 }
3582:
3583 rule__PatternBody__Group__1__Impl
3584;
3585finally {
3586 restoreStackSize(stackSize);
3587}
3588
3589rule__PatternBody__Group__1__Impl
3590 @init {
3591 int stackSize = keepStackSize();
3592 }
3593:
3594(
3595 { before(grammarAccess.getPatternBodyAccess().getAlternatives_1()); }
3596 (rule__PatternBody__Alternatives_1)
3597 { after(grammarAccess.getPatternBodyAccess().getAlternatives_1()); }
3598)
3599;
3600finally {
3601 restoreStackSize(stackSize);
3602}
3603
3604
3605rule__Polarity__Group_0__0
3606 @init {
3607 int stackSize = keepStackSize();
3608 }
3609:
3610 rule__Polarity__Group_0__0__Impl
3611 rule__Polarity__Group_0__1
3612;
3613finally {
3614 restoreStackSize(stackSize);
3615}
3616
3617rule__Polarity__Group_0__0__Impl
3618 @init {
3619 int stackSize = keepStackSize();
3620 }
3621:
3622(
3623 { before(grammarAccess.getPolarityAccess().getPositiveAction_0_0()); }
3624 ()
3625 { after(grammarAccess.getPolarityAccess().getPositiveAction_0_0()); }
3626)
3627;
3628finally {
3629 restoreStackSize(stackSize);
3630}
3631
3632rule__Polarity__Group_0__1
3633 @init {
3634 int stackSize = keepStackSize();
3635 }
3636:
3637 rule__Polarity__Group_0__1__Impl
3638;
3639finally {
3640 restoreStackSize(stackSize);
3641}
3642
3643rule__Polarity__Group_0__1__Impl
3644 @init {
3645 int stackSize = keepStackSize();
3646 }
3647:
3648(
3649 { before(grammarAccess.getPolarityAccess().getPlusSignKeyword_0_1()); }
3650 '+'
3651 { after(grammarAccess.getPolarityAccess().getPlusSignKeyword_0_1()); }
3652)
3653;
3654finally {
3655 restoreStackSize(stackSize);
3656}
3657
3658
3659rule__Polarity__Group_1__0
3660 @init {
3661 int stackSize = keepStackSize();
3662 }
3663:
3664 rule__Polarity__Group_1__0__Impl
3665 rule__Polarity__Group_1__1
3666;
3667finally {
3668 restoreStackSize(stackSize);
3669}
3670
3671rule__Polarity__Group_1__0__Impl
3672 @init {
3673 int stackSize = keepStackSize();
3674 }
3675:
3676(
3677 { before(grammarAccess.getPolarityAccess().getNegativeAction_1_0()); }
3678 ()
3679 { after(grammarAccess.getPolarityAccess().getNegativeAction_1_0()); }
3680)
3681;
3682finally {
3683 restoreStackSize(stackSize);
3684}
3685
3686rule__Polarity__Group_1__1
3687 @init {
3688 int stackSize = keepStackSize();
3689 }
3690:
3691 rule__Polarity__Group_1__1__Impl
3692;
3693finally {
3694 restoreStackSize(stackSize);
3695}
3696
3697rule__Polarity__Group_1__1__Impl
3698 @init {
3699 int stackSize = keepStackSize();
3700 }
3701:
3702(
3703 { before(grammarAccess.getPolarityAccess().getHyphenMinusKeyword_1_1()); }
3704 '-'
3705 { after(grammarAccess.getPolarityAccess().getHyphenMinusKeyword_1_1()); }
3706)
3707;
3708finally {
3709 restoreStackSize(stackSize);
3710}
3711
3712
3713rule__Constraint__Group__0
3714 @init {
3715 int stackSize = keepStackSize();
3716 }
3717:
3718 rule__Constraint__Group__0__Impl
3719 rule__Constraint__Group__1
3720;
3721finally {
3722 restoreStackSize(stackSize);
3723}
3724
3725rule__Constraint__Group__0__Impl
3726 @init {
3727 int stackSize = keepStackSize();
3728 }
3729:
3730(
3731 { before(grammarAccess.getConstraintAccess().getPolarityAssignment_0()); }
3732 (rule__Constraint__PolarityAssignment_0)?
3733 { after(grammarAccess.getConstraintAccess().getPolarityAssignment_0()); }
3734)
3735;
3736finally {
3737 restoreStackSize(stackSize);
3738}
3739
3740rule__Constraint__Group__1
3741 @init {
3742 int stackSize = keepStackSize();
3743 }
3744:
3745 rule__Constraint__Group__1__Impl
3746 rule__Constraint__Group__2
3747;
3748finally {
3749 restoreStackSize(stackSize);
3750}
3751
3752rule__Constraint__Group__1__Impl
3753 @init {
3754 int stackSize = keepStackSize();
3755 }
3756:
3757(
3758 { before(grammarAccess.getConstraintAccess().getSymbolAssignment_1()); }
3759 (rule__Constraint__SymbolAssignment_1)
3760 { after(grammarAccess.getConstraintAccess().getSymbolAssignment_1()); }
3761)
3762;
3763finally {
3764 restoreStackSize(stackSize);
3765}
3766
3767rule__Constraint__Group__2
3768 @init {
3769 int stackSize = keepStackSize();
3770 }
3771:
3772 rule__Constraint__Group__2__Impl
3773;
3774finally {
3775 restoreStackSize(stackSize);
3776}
3777
3778rule__Constraint__Group__2__Impl
3779 @init {
3780 int stackSize = keepStackSize();
3781 }
3782:
3783(
3784 { before(grammarAccess.getConstraintAccess().getAlternatives_2()); }
3785 (rule__Constraint__Alternatives_2)
3786 { after(grammarAccess.getConstraintAccess().getAlternatives_2()); }
3787)
3788;
3789finally {
3790 restoreStackSize(stackSize);
3791}
3792
3793
3794rule__Constraint__Group_2_0__0
3795 @init {
3796 int stackSize = keepStackSize();
3797 }
3798:
3799 rule__Constraint__Group_2_0__0__Impl
3800 rule__Constraint__Group_2_0__1
3801;
3802finally {
3803 restoreStackSize(stackSize);
3804}
3805
3806rule__Constraint__Group_2_0__0__Impl
3807 @init {
3808 int stackSize = keepStackSize();
3809 }
3810:
3811(
3812 { before(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_0_0()); }
3813 '('
3814 { after(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_0_0()); }
3815)
3816;
3817finally {
3818 restoreStackSize(stackSize);
3819}
3820
3821rule__Constraint__Group_2_0__1
3822 @init {
3823 int stackSize = keepStackSize();
3824 }
3825:
3826 rule__Constraint__Group_2_0__1__Impl
3827 rule__Constraint__Group_2_0__2
3828;
3829finally {
3830 restoreStackSize(stackSize);
3831}
3832
3833rule__Constraint__Group_2_0__1__Impl
3834 @init {
3835 int stackSize = keepStackSize();
3836 }
3837:
3838(
3839 { before(grammarAccess.getConstraintAccess().getParamsAssignment_2_0_1()); }
3840 (rule__Constraint__ParamsAssignment_2_0_1)*
3841 { after(grammarAccess.getConstraintAccess().getParamsAssignment_2_0_1()); }
3842)
3843;
3844finally {
3845 restoreStackSize(stackSize);
3846}
3847
3848rule__Constraint__Group_2_0__2
3849 @init {
3850 int stackSize = keepStackSize();
3851 }
3852:
3853 rule__Constraint__Group_2_0__2__Impl
3854;
3855finally {
3856 restoreStackSize(stackSize);
3857}
3858
3859rule__Constraint__Group_2_0__2__Impl
3860 @init {
3861 int stackSize = keepStackSize();
3862 }
3863:
3864(
3865 { before(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_0_2()); }
3866 ')'
3867 { after(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_0_2()); }
3868)
3869;
3870finally {
3871 restoreStackSize(stackSize);
3872}
3873
3874
3875rule__Constraint__Group_2_1__0
3876 @init {
3877 int stackSize = keepStackSize();
3878 }
3879:
3880 rule__Constraint__Group_2_1__0__Impl
3881 rule__Constraint__Group_2_1__1
3882;
3883finally {
3884 restoreStackSize(stackSize);
3885}
3886
3887rule__Constraint__Group_2_1__0__Impl
3888 @init {
3889 int stackSize = keepStackSize();
3890 }
3891:
3892(
3893 { before(grammarAccess.getConstraintAccess().getClosureTypeAssignment_2_1_0()); }
3894 (rule__Constraint__ClosureTypeAssignment_2_1_0)
3895 { after(grammarAccess.getConstraintAccess().getClosureTypeAssignment_2_1_0()); }
3896)
3897;
3898finally {
3899 restoreStackSize(stackSize);
3900}
3901
3902rule__Constraint__Group_2_1__1
3903 @init {
3904 int stackSize = keepStackSize();
3905 }
3906:
3907 rule__Constraint__Group_2_1__1__Impl
3908 rule__Constraint__Group_2_1__2
3909;
3910finally {
3911 restoreStackSize(stackSize);
3912}
3913
3914rule__Constraint__Group_2_1__1__Impl
3915 @init {
3916 int stackSize = keepStackSize();
3917 }
3918:
3919(
3920 { before(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_1_1()); }
3921 '('
3922 { after(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_1_1()); }
3923)
3924;
3925finally {
3926 restoreStackSize(stackSize);
3927}
3928
3929rule__Constraint__Group_2_1__2
3930 @init {
3931 int stackSize = keepStackSize();
3932 }
3933:
3934 rule__Constraint__Group_2_1__2__Impl
3935 rule__Constraint__Group_2_1__3
3936;
3937finally {
3938 restoreStackSize(stackSize);
3939}
3940
3941rule__Constraint__Group_2_1__2__Impl
3942 @init {
3943 int stackSize = keepStackSize();
3944 }
3945:
3946(
3947 { before(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_2()); }
3948 (rule__Constraint__ParamsAssignment_2_1_2)
3949 { after(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_2()); }
3950)
3951;
3952finally {
3953 restoreStackSize(stackSize);
3954}
3955
3956rule__Constraint__Group_2_1__3
3957 @init {
3958 int stackSize = keepStackSize();
3959 }
3960:
3961 rule__Constraint__Group_2_1__3__Impl
3962 rule__Constraint__Group_2_1__4
3963;
3964finally {
3965 restoreStackSize(stackSize);
3966}
3967
3968rule__Constraint__Group_2_1__3__Impl
3969 @init {
3970 int stackSize = keepStackSize();
3971 }
3972:
3973(
3974 { before(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_3()); }
3975 (rule__Constraint__ParamsAssignment_2_1_3)
3976 { after(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_3()); }
3977)
3978;
3979finally {
3980 restoreStackSize(stackSize);
3981}
3982
3983rule__Constraint__Group_2_1__4
3984 @init {
3985 int stackSize = keepStackSize();
3986 }
3987:
3988 rule__Constraint__Group_2_1__4__Impl
3989;
3990finally {
3991 restoreStackSize(stackSize);
3992}
3993
3994rule__Constraint__Group_2_1__4__Impl
3995 @init {
3996 int stackSize = keepStackSize();
3997 }
3998:
3999(
4000 { before(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_1_4()); }
4001 ')'
4002 { after(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_1_4()); }
4003)
4004;
4005finally {
4006 restoreStackSize(stackSize);
4007}
4008
4009
4010rule__ClosureType__Group_0__0
4011 @init {
4012 int stackSize = keepStackSize();
4013 }
4014:
4015 rule__ClosureType__Group_0__0__Impl
4016 rule__ClosureType__Group_0__1
4017;
4018finally {
4019 restoreStackSize(stackSize);
4020}
4021
4022rule__ClosureType__Group_0__0__Impl
4023 @init {
4024 int stackSize = keepStackSize();
4025 }
4026:
4027(
4028 { before(grammarAccess.getClosureTypeAccess().getReflexiveClosureAction_0_0()); }
4029 ()
4030 { after(grammarAccess.getClosureTypeAccess().getReflexiveClosureAction_0_0()); }
4031)
4032;
4033finally {
4034 restoreStackSize(stackSize);
4035}
4036
4037rule__ClosureType__Group_0__1
4038 @init {
4039 int stackSize = keepStackSize();
4040 }
4041:
4042 rule__ClosureType__Group_0__1__Impl
4043;
4044finally {
4045 restoreStackSize(stackSize);
4046}
4047
4048rule__ClosureType__Group_0__1__Impl
4049 @init {
4050 int stackSize = keepStackSize();
4051 }
4052:
4053(
4054 { before(grammarAccess.getClosureTypeAccess().getAsteriskKeyword_0_1()); }
4055 '*'
4056 { after(grammarAccess.getClosureTypeAccess().getAsteriskKeyword_0_1()); }
4057)
4058;
4059finally {
4060 restoreStackSize(stackSize);
4061}
4062
4063
4064rule__ClosureType__Group_1__0
4065 @init {
4066 int stackSize = keepStackSize();
4067 }
4068:
4069 rule__ClosureType__Group_1__0__Impl
4070 rule__ClosureType__Group_1__1
4071;
4072finally {
4073 restoreStackSize(stackSize);
4074}
4075
4076rule__ClosureType__Group_1__0__Impl
4077 @init {
4078 int stackSize = keepStackSize();
4079 }
4080:
4081(
4082 { before(grammarAccess.getClosureTypeAccess().getIrreflexiveClosureAction_1_0()); }
4083 ()
4084 { after(grammarAccess.getClosureTypeAccess().getIrreflexiveClosureAction_1_0()); }
4085)
4086;
4087finally {
4088 restoreStackSize(stackSize);
4089}
4090
4091rule__ClosureType__Group_1__1
4092 @init {
4093 int stackSize = keepStackSize();
4094 }
4095:
4096 rule__ClosureType__Group_1__1__Impl
4097;
4098finally {
4099 restoreStackSize(stackSize);
4100}
4101
4102rule__ClosureType__Group_1__1__Impl
4103 @init {
4104 int stackSize = keepStackSize();
4105 }
4106:
4107(
4108 { before(grammarAccess.getClosureTypeAccess().getPlusSignKeyword_1_1()); }
4109 '+'
4110 { after(grammarAccess.getClosureTypeAccess().getPlusSignKeyword_1_1()); }
4111)
4112;
4113finally {
4114 restoreStackSize(stackSize);
4115}
4116
4117
4118rule__AllInstances__Group__0
4119 @init {
4120 int stackSize = keepStackSize();
4121 }
4122:
4123 rule__AllInstances__Group__0__Impl
4124 rule__AllInstances__Group__1
4125;
4126finally {
4127 restoreStackSize(stackSize);
4128}
4129
4130rule__AllInstances__Group__0__Impl
4131 @init {
4132 int stackSize = keepStackSize();
4133 }
4134:
4135(
4136 { before(grammarAccess.getAllInstancesAccess().getColonKeyword_0()); }
4137 ':'
4138 { after(grammarAccess.getAllInstancesAccess().getColonKeyword_0()); }
4139)
4140;
4141finally {
4142 restoreStackSize(stackSize);
4143}
4144
4145rule__AllInstances__Group__1
4146 @init {
4147 int stackSize = keepStackSize();
4148 }
4149:
4150 rule__AllInstances__Group__1__Impl
4151;
4152finally {
4153 restoreStackSize(stackSize);
4154}
4155
4156rule__AllInstances__Group__1__Impl
4157 @init {
4158 int stackSize = keepStackSize();
4159 }
4160:
4161(
4162 { before(grammarAccess.getAllInstancesAccess().getSymbolAssignment_1()); }
4163 (rule__AllInstances__SymbolAssignment_1)
4164 { after(grammarAccess.getAllInstancesAccess().getSymbolAssignment_1()); }
4165)
4166;
4167finally {
4168 restoreStackSize(stackSize);
4169}
4170
4171
4172rule__AllObjects__Group__0
4173 @init {
4174 int stackSize = keepStackSize();
4175 }
4176:
4177 rule__AllObjects__Group__0__Impl
4178 rule__AllObjects__Group__1
4179;
4180finally {
4181 restoreStackSize(stackSize);
4182}
4183
4184rule__AllObjects__Group__0__Impl
4185 @init {
4186 int stackSize = keepStackSize();
4187 }
4188:
4189(
4190 { before(grammarAccess.getAllObjectsAccess().getAllObjectsAction_0()); }
4191 ()
4192 { after(grammarAccess.getAllObjectsAccess().getAllObjectsAction_0()); }
4193)
4194;
4195finally {
4196 restoreStackSize(stackSize);
4197}
4198
4199rule__AllObjects__Group__1
4200 @init {
4201 int stackSize = keepStackSize();
4202 }
4203:
4204 rule__AllObjects__Group__1__Impl
4205;
4206finally {
4207 restoreStackSize(stackSize);
4208}
4209
4210rule__AllObjects__Group__1__Impl
4211 @init {
4212 int stackSize = keepStackSize();
4213 }
4214:
4215(
4216 { before(grammarAccess.getAllObjectsAccess().getAsteriskKeyword_1()); }
4217 '*'
4218 { after(grammarAccess.getAllObjectsAccess().getAsteriskKeyword_1()); }
4219)
4220;
4221finally {
4222 restoreStackSize(stackSize);
4223}
4224
4225
4226rule__DefaultInterpretation__Group__0
4227 @init {
4228 int stackSize = keepStackSize();
4229 }
4230:
4231 rule__DefaultInterpretation__Group__0__Impl
4232 rule__DefaultInterpretation__Group__1
4233;
4234finally {
4235 restoreStackSize(stackSize);
4236}
4237
4238rule__DefaultInterpretation__Group__0__Impl
4239 @init {
4240 int stackSize = keepStackSize();
4241 }
4242:
4243(
4244 { before(grammarAccess.getDefaultInterpretationAccess().getDefaultKeyword_0()); }
4245 'default'
4246 { after(grammarAccess.getDefaultInterpretationAccess().getDefaultKeyword_0()); }
4247)
4248;
4249finally {
4250 restoreStackSize(stackSize);
4251}
4252
4253rule__DefaultInterpretation__Group__1
4254 @init {
4255 int stackSize = keepStackSize();
4256 }
4257:
4258 rule__DefaultInterpretation__Group__1__Impl
4259;
4260finally {
4261 restoreStackSize(stackSize);
4262}
4263
4264rule__DefaultInterpretation__Group__1__Impl
4265 @init {
4266 int stackSize = keepStackSize();
4267 }
4268:
4269(
4270 { before(grammarAccess.getDefaultInterpretationAccess().getInterpretationAssignment_1()); }
4271 (rule__DefaultInterpretation__InterpretationAssignment_1)
4272 { after(grammarAccess.getDefaultInterpretationAccess().getInterpretationAssignment_1()); }
4273)
4274;
4275finally {
4276 restoreStackSize(stackSize);
4277}
4278
4279
4280rule__ClassInterpretation__Group__0
4281 @init {
4282 int stackSize = keepStackSize();
4283 }
4284:
4285 rule__ClassInterpretation__Group__0__Impl
4286 rule__ClassInterpretation__Group__1
4287;
4288finally {
4289 restoreStackSize(stackSize);
4290}
4291
4292rule__ClassInterpretation__Group__0__Impl
4293 @init {
4294 int stackSize = keepStackSize();
4295 }
4296:
4297(
4298 { before(grammarAccess.getClassInterpretationAccess().getAbstractAssignment_0()); }
4299 (rule__ClassInterpretation__AbstractAssignment_0)
4300 { after(grammarAccess.getClassInterpretationAccess().getAbstractAssignment_0()); }
4301)
4302;
4303finally {
4304 restoreStackSize(stackSize);
4305}
4306
4307rule__ClassInterpretation__Group__1
4308 @init {
4309 int stackSize = keepStackSize();
4310 }
4311:
4312 rule__ClassInterpretation__Group__1__Impl
4313 rule__ClassInterpretation__Group__2
4314;
4315finally {
4316 restoreStackSize(stackSize);
4317}
4318
4319rule__ClassInterpretation__Group__1__Impl
4320 @init {
4321 int stackSize = keepStackSize();
4322 }
4323:
4324(
4325 { before(grammarAccess.getClassInterpretationAccess().getClassKeyword_1()); }
4326 'class'
4327 { after(grammarAccess.getClassInterpretationAccess().getClassKeyword_1()); }
4328)
4329;
4330finally {
4331 restoreStackSize(stackSize);
4332}
4333
4334rule__ClassInterpretation__Group__2
4335 @init {
4336 int stackSize = keepStackSize();
4337 }
4338:
4339 rule__ClassInterpretation__Group__2__Impl
4340 rule__ClassInterpretation__Group__3
4341;
4342finally {
4343 restoreStackSize(stackSize);
4344}
4345
4346rule__ClassInterpretation__Group__2__Impl
4347 @init {
4348 int stackSize = keepStackSize();
4349 }
4350:
4351(
4352 { before(grammarAccess.getClassInterpretationAccess().getSymbolAssignment_2()); }
4353 (rule__ClassInterpretation__SymbolAssignment_2)
4354 { after(grammarAccess.getClassInterpretationAccess().getSymbolAssignment_2()); }
4355)
4356;
4357finally {
4358 restoreStackSize(stackSize);
4359}
4360
4361rule__ClassInterpretation__Group__3
4362 @init {
4363 int stackSize = keepStackSize();
4364 }
4365:
4366 rule__ClassInterpretation__Group__3__Impl
4367 rule__ClassInterpretation__Group__4
4368;
4369finally {
4370 restoreStackSize(stackSize);
4371}
4372
4373rule__ClassInterpretation__Group__3__Impl
4374 @init {
4375 int stackSize = keepStackSize();
4376 }
4377:
4378(
4379 { before(grammarAccess.getClassInterpretationAccess().getGroup_3()); }
4380 (rule__ClassInterpretation__Group_3__0)?
4381 { after(grammarAccess.getClassInterpretationAccess().getGroup_3()); }
4382)
4383;
4384finally {
4385 restoreStackSize(stackSize);
4386}
4387
4388rule__ClassInterpretation__Group__4
4389 @init {
4390 int stackSize = keepStackSize();
4391 }
4392:
4393 rule__ClassInterpretation__Group__4__Impl
4394 rule__ClassInterpretation__Group__5
4395;
4396finally {
4397 restoreStackSize(stackSize);
4398}
4399
4400rule__ClassInterpretation__Group__4__Impl
4401 @init {
4402 int stackSize = keepStackSize();
4403 }
4404:
4405(
4406 { before(grammarAccess.getClassInterpretationAccess().getLeftCurlyBracketKeyword_4()); }
4407 '{'
4408 { after(grammarAccess.getClassInterpretationAccess().getLeftCurlyBracketKeyword_4()); }
4409)
4410;
4411finally {
4412 restoreStackSize(stackSize);
4413}
4414
4415rule__ClassInterpretation__Group__5
4416 @init {
4417 int stackSize = keepStackSize();
4418 }
4419:
4420 rule__ClassInterpretation__Group__5__Impl
4421 rule__ClassInterpretation__Group__6
4422;
4423finally {
4424 restoreStackSize(stackSize);
4425}
4426
4427rule__ClassInterpretation__Group__5__Impl
4428 @init {
4429 int stackSize = keepStackSize();
4430 }
4431:
4432(
4433 { before(grammarAccess.getClassInterpretationAccess().getFieltAssignment_5()); }
4434 (rule__ClassInterpretation__FieltAssignment_5)*
4435 { after(grammarAccess.getClassInterpretationAccess().getFieltAssignment_5()); }
4436)
4437;
4438finally {
4439 restoreStackSize(stackSize);
4440}
4441
4442rule__ClassInterpretation__Group__6
4443 @init {
4444 int stackSize = keepStackSize();
4445 }
4446:
4447 rule__ClassInterpretation__Group__6__Impl
4448;
4449finally {
4450 restoreStackSize(stackSize);
4451}
4452
4453rule__ClassInterpretation__Group__6__Impl
4454 @init {
4455 int stackSize = keepStackSize();
4456 }
4457:
4458(
4459 { before(grammarAccess.getClassInterpretationAccess().getRightCurlyBracketKeyword_6()); }
4460 '}'
4461 { after(grammarAccess.getClassInterpretationAccess().getRightCurlyBracketKeyword_6()); }
4462)
4463;
4464finally {
4465 restoreStackSize(stackSize);
4466}
4467
4468
4469rule__ClassInterpretation__Group_3__0
4470 @init {
4471 int stackSize = keepStackSize();
4472 }
4473:
4474 rule__ClassInterpretation__Group_3__0__Impl
4475 rule__ClassInterpretation__Group_3__1
4476;
4477finally {
4478 restoreStackSize(stackSize);
4479}
4480
4481rule__ClassInterpretation__Group_3__0__Impl
4482 @init {
4483 int stackSize = keepStackSize();
4484 }
4485:
4486(
4487 { before(grammarAccess.getClassInterpretationAccess().getExtendsKeyword_3_0()); }
4488 'extends'
4489 { after(grammarAccess.getClassInterpretationAccess().getExtendsKeyword_3_0()); }
4490)
4491;
4492finally {
4493 restoreStackSize(stackSize);
4494}
4495
4496rule__ClassInterpretation__Group_3__1
4497 @init {
4498 int stackSize = keepStackSize();
4499 }
4500:
4501 rule__ClassInterpretation__Group_3__1__Impl
4502;
4503finally {
4504 restoreStackSize(stackSize);
4505}
4506
4507rule__ClassInterpretation__Group_3__1__Impl
4508 @init {
4509 int stackSize = keepStackSize();
4510 }
4511:
4512(
4513 (
4514 { before(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1()); }
4515 (rule__ClassInterpretation__SupertypesAssignment_3_1)
4516 { after(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1()); }
4517 )
4518 (
4519 { before(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1()); }
4520 (rule__ClassInterpretation__SupertypesAssignment_3_1)*
4521 { after(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1()); }
4522 )
4523)
4524;
4525finally {
4526 restoreStackSize(stackSize);
4527}
4528
4529
4530rule__EnumInterpretation__Group__0
4531 @init {
4532 int stackSize = keepStackSize();
4533 }
4534:
4535 rule__EnumInterpretation__Group__0__Impl
4536 rule__EnumInterpretation__Group__1
4537;
4538finally {
4539 restoreStackSize(stackSize);
4540}
4541
4542rule__EnumInterpretation__Group__0__Impl
4543 @init {
4544 int stackSize = keepStackSize();
4545 }
4546:
4547(
4548 { before(grammarAccess.getEnumInterpretationAccess().getEnumKeyword_0()); }
4549 'enum'
4550 { after(grammarAccess.getEnumInterpretationAccess().getEnumKeyword_0()); }
4551)
4552;
4553finally {
4554 restoreStackSize(stackSize);
4555}
4556
4557rule__EnumInterpretation__Group__1
4558 @init {
4559 int stackSize = keepStackSize();
4560 }
4561:
4562 rule__EnumInterpretation__Group__1__Impl
4563 rule__EnumInterpretation__Group__2
4564;
4565finally {
4566 restoreStackSize(stackSize);
4567}
4568
4569rule__EnumInterpretation__Group__1__Impl
4570 @init {
4571 int stackSize = keepStackSize();
4572 }
4573:
4574(
4575 { before(grammarAccess.getEnumInterpretationAccess().getSymbolAssignment_1()); }
4576 (rule__EnumInterpretation__SymbolAssignment_1)
4577 { after(grammarAccess.getEnumInterpretationAccess().getSymbolAssignment_1()); }
4578)
4579;
4580finally {
4581 restoreStackSize(stackSize);
4582}
4583
4584rule__EnumInterpretation__Group__2
4585 @init {
4586 int stackSize = keepStackSize();
4587 }
4588:
4589 rule__EnumInterpretation__Group__2__Impl
4590 rule__EnumInterpretation__Group__3
4591;
4592finally {
4593 restoreStackSize(stackSize);
4594}
4595
4596rule__EnumInterpretation__Group__2__Impl
4597 @init {
4598 int stackSize = keepStackSize();
4599 }
4600:
4601(
4602 { before(grammarAccess.getEnumInterpretationAccess().getLeftCurlyBracketKeyword_2()); }
4603 '{'
4604 { after(grammarAccess.getEnumInterpretationAccess().getLeftCurlyBracketKeyword_2()); }
4605)
4606;
4607finally {
4608 restoreStackSize(stackSize);
4609}
4610
4611rule__EnumInterpretation__Group__3
4612 @init {
4613 int stackSize = keepStackSize();
4614 }
4615:
4616 rule__EnumInterpretation__Group__3__Impl
4617 rule__EnumInterpretation__Group__4
4618;
4619finally {
4620 restoreStackSize(stackSize);
4621}
4622
4623rule__EnumInterpretation__Group__3__Impl
4624 @init {
4625 int stackSize = keepStackSize();
4626 }
4627:
4628(
4629 (
4630 { before(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3()); }
4631 (rule__EnumInterpretation__ObjectsAssignment_3)
4632 { after(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3()); }
4633 )
4634 (
4635 { before(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3()); }
4636 (rule__EnumInterpretation__ObjectsAssignment_3)*
4637 { after(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3()); }
4638 )
4639)
4640;
4641finally {
4642 restoreStackSize(stackSize);
4643}
4644
4645rule__EnumInterpretation__Group__4
4646 @init {
4647 int stackSize = keepStackSize();
4648 }
4649:
4650 rule__EnumInterpretation__Group__4__Impl
4651;
4652finally {
4653 restoreStackSize(stackSize);
4654}
4655
4656rule__EnumInterpretation__Group__4__Impl
4657 @init {
4658 int stackSize = keepStackSize();
4659 }
4660:
4661(
4662 { before(grammarAccess.getEnumInterpretationAccess().getRightCurlyBracketKeyword_4()); }
4663 '}'
4664 { after(grammarAccess.getEnumInterpretationAccess().getRightCurlyBracketKeyword_4()); }
4665)
4666;
4667finally {
4668 restoreStackSize(stackSize);
4669}
4670
4671
4672rule__FieldRelationInterpretation__Group__0
4673 @init {
4674 int stackSize = keepStackSize();
4675 }
4676:
4677 rule__FieldRelationInterpretation__Group__0__Impl
4678 rule__FieldRelationInterpretation__Group__1
4679;
4680finally {
4681 restoreStackSize(stackSize);
4682}
4683
4684rule__FieldRelationInterpretation__Group__0__Impl
4685 @init {
4686 int stackSize = keepStackSize();
4687 }
4688:
4689(
4690 { before(grammarAccess.getFieldRelationInterpretationAccess().getContainmentAssignment_0()); }
4691 (rule__FieldRelationInterpretation__ContainmentAssignment_0)
4692 { after(grammarAccess.getFieldRelationInterpretationAccess().getContainmentAssignment_0()); }
4693)
4694;
4695finally {
4696 restoreStackSize(stackSize);
4697}
4698
4699rule__FieldRelationInterpretation__Group__1
4700 @init {
4701 int stackSize = keepStackSize();
4702 }
4703:
4704 rule__FieldRelationInterpretation__Group__1__Impl
4705 rule__FieldRelationInterpretation__Group__2
4706;
4707finally {
4708 restoreStackSize(stackSize);
4709}
4710
4711rule__FieldRelationInterpretation__Group__1__Impl
4712 @init {
4713 int stackSize = keepStackSize();
4714 }
4715:
4716(
4717 { before(grammarAccess.getFieldRelationInterpretationAccess().getSymbolAssignment_1()); }
4718 (rule__FieldRelationInterpretation__SymbolAssignment_1)
4719 { after(grammarAccess.getFieldRelationInterpretationAccess().getSymbolAssignment_1()); }
4720)
4721;
4722finally {
4723 restoreStackSize(stackSize);
4724}
4725
4726rule__FieldRelationInterpretation__Group__2
4727 @init {
4728 int stackSize = keepStackSize();
4729 }
4730:
4731 rule__FieldRelationInterpretation__Group__2__Impl
4732 rule__FieldRelationInterpretation__Group__3
4733;
4734finally {
4735 restoreStackSize(stackSize);
4736}
4737
4738rule__FieldRelationInterpretation__Group__2__Impl
4739 @init {
4740 int stackSize = keepStackSize();
4741 }
4742:
4743(
4744 { before(grammarAccess.getFieldRelationInterpretationAccess().getColonKeyword_2()); }
4745 ':'
4746 { after(grammarAccess.getFieldRelationInterpretationAccess().getColonKeyword_2()); }
4747)
4748;
4749finally {
4750 restoreStackSize(stackSize);
4751}
4752
4753rule__FieldRelationInterpretation__Group__3
4754 @init {
4755 int stackSize = keepStackSize();
4756 }
4757:
4758 rule__FieldRelationInterpretation__Group__3__Impl
4759 rule__FieldRelationInterpretation__Group__4
4760;
4761finally {
4762 restoreStackSize(stackSize);
4763}
4764
4765rule__FieldRelationInterpretation__Group__3__Impl
4766 @init {
4767 int stackSize = keepStackSize();
4768 }
4769:
4770(
4771 { before(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityAssignment_3()); }
4772 (rule__FieldRelationInterpretation__MultiplicityAssignment_3)?
4773 { after(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityAssignment_3()); }
4774)
4775;
4776finally {
4777 restoreStackSize(stackSize);
4778}
4779
4780rule__FieldRelationInterpretation__Group__4
4781 @init {
4782 int stackSize = keepStackSize();
4783 }
4784:
4785 rule__FieldRelationInterpretation__Group__4__Impl
4786;
4787finally {
4788 restoreStackSize(stackSize);
4789}
4790
4791rule__FieldRelationInterpretation__Group__4__Impl
4792 @init {
4793 int stackSize = keepStackSize();
4794 }
4795:
4796(
4797 { before(grammarAccess.getFieldRelationInterpretationAccess().getTargetAssignment_4()); }
4798 (rule__FieldRelationInterpretation__TargetAssignment_4)
4799 { after(grammarAccess.getFieldRelationInterpretationAccess().getTargetAssignment_4()); }
4800)
4801;
4802finally {
4803 restoreStackSize(stackSize);
4804}
4805
4806
4807rule__GlobalRelationInterpretation__Group__0
4808 @init {
4809 int stackSize = keepStackSize();
4810 }
4811:
4812 rule__GlobalRelationInterpretation__Group__0__Impl
4813 rule__GlobalRelationInterpretation__Group__1
4814;
4815finally {
4816 restoreStackSize(stackSize);
4817}
4818
4819rule__GlobalRelationInterpretation__Group__0__Impl
4820 @init {
4821 int stackSize = keepStackSize();
4822 }
4823:
4824(
4825 { before(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentAssignment_0()); }
4826 (rule__GlobalRelationInterpretation__ContainmentAssignment_0)
4827 { after(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentAssignment_0()); }
4828)
4829;
4830finally {
4831 restoreStackSize(stackSize);
4832}
4833
4834rule__GlobalRelationInterpretation__Group__1
4835 @init {
4836 int stackSize = keepStackSize();
4837 }
4838:
4839 rule__GlobalRelationInterpretation__Group__1__Impl
4840 rule__GlobalRelationInterpretation__Group__2
4841;
4842finally {
4843 restoreStackSize(stackSize);
4844}
4845
4846rule__GlobalRelationInterpretation__Group__1__Impl
4847 @init {
4848 int stackSize = keepStackSize();
4849 }
4850:
4851(
4852 { before(grammarAccess.getGlobalRelationInterpretationAccess().getRelationKeyword_1()); }
4853 'relation'
4854 { after(grammarAccess.getGlobalRelationInterpretationAccess().getRelationKeyword_1()); }
4855)
4856;
4857finally {
4858 restoreStackSize(stackSize);
4859}
4860
4861rule__GlobalRelationInterpretation__Group__2
4862 @init {
4863 int stackSize = keepStackSize();
4864 }
4865:
4866 rule__GlobalRelationInterpretation__Group__2__Impl
4867 rule__GlobalRelationInterpretation__Group__3
4868;
4869finally {
4870 restoreStackSize(stackSize);
4871}
4872
4873rule__GlobalRelationInterpretation__Group__2__Impl
4874 @init {
4875 int stackSize = keepStackSize();
4876 }
4877:
4878(
4879 { before(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolAssignment_2()); }
4880 (rule__GlobalRelationInterpretation__SymbolAssignment_2)
4881 { after(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolAssignment_2()); }
4882)
4883;
4884finally {
4885 restoreStackSize(stackSize);
4886}
4887
4888rule__GlobalRelationInterpretation__Group__3
4889 @init {
4890 int stackSize = keepStackSize();
4891 }
4892:
4893 rule__GlobalRelationInterpretation__Group__3__Impl
4894 rule__GlobalRelationInterpretation__Group__4
4895;
4896finally {
4897 restoreStackSize(stackSize);
4898}
4899
4900rule__GlobalRelationInterpretation__Group__3__Impl
4901 @init {
4902 int stackSize = keepStackSize();
4903 }
4904:
4905(
4906 { before(grammarAccess.getGlobalRelationInterpretationAccess().getColonKeyword_3()); }
4907 ':'
4908 { after(grammarAccess.getGlobalRelationInterpretationAccess().getColonKeyword_3()); }
4909)
4910;
4911finally {
4912 restoreStackSize(stackSize);
4913}
4914
4915rule__GlobalRelationInterpretation__Group__4
4916 @init {
4917 int stackSize = keepStackSize();
4918 }
4919:
4920 rule__GlobalRelationInterpretation__Group__4__Impl
4921 rule__GlobalRelationInterpretation__Group__5
4922;
4923finally {
4924 restoreStackSize(stackSize);
4925}
4926
4927rule__GlobalRelationInterpretation__Group__4__Impl
4928 @init {
4929 int stackSize = keepStackSize();
4930 }
4931:
4932(
4933 { before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityAssignment_4()); }
4934 (rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4)?
4935 { after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityAssignment_4()); }
4936)
4937;
4938finally {
4939 restoreStackSize(stackSize);
4940}
4941
4942rule__GlobalRelationInterpretation__Group__5
4943 @init {
4944 int stackSize = keepStackSize();
4945 }
4946:
4947 rule__GlobalRelationInterpretation__Group__5__Impl
4948 rule__GlobalRelationInterpretation__Group__6
4949;
4950finally {
4951 restoreStackSize(stackSize);
4952}
4953
4954rule__GlobalRelationInterpretation__Group__5__Impl
4955 @init {
4956 int stackSize = keepStackSize();
4957 }
4958:
4959(
4960 { before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceAssignment_5()); }
4961 (rule__GlobalRelationInterpretation__SourceAssignment_5)
4962 { after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceAssignment_5()); }
4963)
4964;
4965finally {
4966 restoreStackSize(stackSize);
4967}
4968
4969rule__GlobalRelationInterpretation__Group__6
4970 @init {
4971 int stackSize = keepStackSize();
4972 }
4973:
4974 rule__GlobalRelationInterpretation__Group__6__Impl
4975 rule__GlobalRelationInterpretation__Group__7
4976;
4977finally {
4978 restoreStackSize(stackSize);
4979}
4980
4981rule__GlobalRelationInterpretation__Group__6__Impl
4982 @init {
4983 int stackSize = keepStackSize();
4984 }
4985:
4986(
4987 { before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityAssignment_6()); }
4988 (rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6)?
4989 { after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityAssignment_6()); }
4990)
4991;
4992finally {
4993 restoreStackSize(stackSize);
4994}
4995
4996rule__GlobalRelationInterpretation__Group__7
4997 @init {
4998 int stackSize = keepStackSize();
4999 }
5000:
5001 rule__GlobalRelationInterpretation__Group__7__Impl
5002;
5003finally {
5004 restoreStackSize(stackSize);
5005}
5006
5007rule__GlobalRelationInterpretation__Group__7__Impl
5008 @init {
5009 int stackSize = keepStackSize();
5010 }
5011:
5012(
5013 { before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetAssignment_7()); }
5014 (rule__GlobalRelationInterpretation__TargetAssignment_7)
5015 { after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetAssignment_7()); }
5016)
5017;
5018finally {
5019 restoreStackSize(stackSize);
5020}
5021
5022
5023rule__MultiplicityDefinition__Group__0
5024 @init {
5025 int stackSize = keepStackSize();
5026 }
5027:
5028 rule__MultiplicityDefinition__Group__0__Impl
5029 rule__MultiplicityDefinition__Group__1
5030;
5031finally {
5032 restoreStackSize(stackSize);
5033}
5034
5035rule__MultiplicityDefinition__Group__0__Impl
5036 @init {
5037 int stackSize = keepStackSize();
5038 }
5039:
5040(
5041 { before(grammarAccess.getMultiplicityDefinitionAccess().getLowerAssignment_0()); }
5042 (rule__MultiplicityDefinition__LowerAssignment_0)
5043 { after(grammarAccess.getMultiplicityDefinitionAccess().getLowerAssignment_0()); }
5044)
5045;
5046finally {
5047 restoreStackSize(stackSize);
5048}
5049
5050rule__MultiplicityDefinition__Group__1
5051 @init {
5052 int stackSize = keepStackSize();
5053 }
5054:
5055 rule__MultiplicityDefinition__Group__1__Impl
5056 rule__MultiplicityDefinition__Group__2
5057;
5058finally {
5059 restoreStackSize(stackSize);
5060}
5061
5062rule__MultiplicityDefinition__Group__1__Impl
5063 @init {
5064 int stackSize = keepStackSize();
5065 }
5066:
5067(
5068 { before(grammarAccess.getMultiplicityDefinitionAccess().getFullStopFullStopKeyword_1()); }
5069 '..'
5070 { after(grammarAccess.getMultiplicityDefinitionAccess().getFullStopFullStopKeyword_1()); }
5071)
5072;
5073finally {
5074 restoreStackSize(stackSize);
5075}
5076
5077rule__MultiplicityDefinition__Group__2
5078 @init {
5079 int stackSize = keepStackSize();
5080 }
5081:
5082 rule__MultiplicityDefinition__Group__2__Impl
5083;
5084finally {
5085 restoreStackSize(stackSize);
5086}
5087
5088rule__MultiplicityDefinition__Group__2__Impl
5089 @init {
5090 int stackSize = keepStackSize();
5091 }
5092:
5093(
5094 { before(grammarAccess.getMultiplicityDefinitionAccess().getAlternatives_2()); }
5095 (rule__MultiplicityDefinition__Alternatives_2)
5096 { after(grammarAccess.getMultiplicityDefinitionAccess().getAlternatives_2()); }
5097)
5098;
5099finally {
5100 restoreStackSize(stackSize);
5101}
5102
5103
5104rule__Problem__StatementsAssignment
5105 @init {
5106 int stackSize = keepStackSize();
5107 }
5108:
5109 (
5110 { before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); }
5111 ruleStatement
5112 { after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); }
5113 )
5114;
5115finally {
5116 restoreStackSize(stackSize);
5117}
5118
5119rule__BasicInterpretation__SymbolAssignment_0
5120 @init {
5121 int stackSize = keepStackSize();
5122 }
5123:
5124 (
5125 { before(grammarAccess.getBasicInterpretationAccess().getSymbolSymbolParserRuleCall_0_0()); }
5126 ruleSymbol
5127 { after(grammarAccess.getBasicInterpretationAccess().getSymbolSymbolParserRuleCall_0_0()); }
5128 )
5129;
5130finally {
5131 restoreStackSize(stackSize);
5132}
5133
5134rule__BasicInterpretation__ObjectsAssignment_2
5135 @init {
5136 int stackSize = keepStackSize();
5137 }
5138:
5139 (
5140 { before(grammarAccess.getBasicInterpretationAccess().getObjectsComplexObjectParserRuleCall_2_0()); }
5141 ruleComplexObject
5142 { after(grammarAccess.getBasicInterpretationAccess().getObjectsComplexObjectParserRuleCall_2_0()); }
5143 )
5144;
5145finally {
5146 restoreStackSize(stackSize);
5147}
5148
5149rule__BasicInterpretation__ValueAssignment_5
5150 @init {
5151 int stackSize = keepStackSize();
5152 }
5153:
5154 (
5155 { before(grammarAccess.getBasicInterpretationAccess().getValueTruthValueParserRuleCall_5_0()); }
5156 ruleTruthValue
5157 { after(grammarAccess.getBasicInterpretationAccess().getValueTruthValueParserRuleCall_5_0()); }
5158 )
5159;
5160finally {
5161 restoreStackSize(stackSize);
5162}
5163
5164rule__ModelSymbol__NameAssignment
5165 @init {
5166 int stackSize = keepStackSize();
5167 }
5168:
5169 (
5170 { before(grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0()); }
5171 RULE_ID
5172 { after(grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0()); }
5173 )
5174;
5175finally {
5176 restoreStackSize(stackSize);
5177}
5178
5179rule__NamedObject__NameAssignment_1
5180 @init {
5181 int stackSize = keepStackSize();
5182 }
5183:
5184 (
5185 { before(grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0()); }
5186 RULE_ID
5187 { after(grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0()); }
5188 )
5189;
5190finally {
5191 restoreStackSize(stackSize);
5192}
5193
5194rule__UnnamedObject__NameAssignment
5195 @init {
5196 int stackSize = keepStackSize();
5197 }
5198:
5199 (
5200 { before(grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0()); }
5201 RULE_ID
5202 { after(grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0()); }
5203 )
5204;
5205finally {
5206 restoreStackSize(stackSize);
5207}
5208
5209rule__BooleanObject__ValueAssignment
5210 @init {
5211 int stackSize = keepStackSize();
5212 }
5213:
5214 (
5215 { before(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0()); }
5216 ruleBooleanValue
5217 { after(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0()); }
5218 )
5219;
5220finally {
5221 restoreStackSize(stackSize);
5222}
5223
5224rule__IntObject__ValueAssignment
5225 @init {
5226 int stackSize = keepStackSize();
5227 }
5228:
5229 (
5230 { before(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0()); }
5231 ruleINTLiteral
5232 { after(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0()); }
5233 )
5234;
5235finally {
5236 restoreStackSize(stackSize);
5237}
5238
5239rule__RealObject__ValueAssignment
5240 @init {
5241 int stackSize = keepStackSize();
5242 }
5243:
5244 (
5245 { before(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0()); }
5246 ruleREALLiteral
5247 { after(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0()); }
5248 )
5249;
5250finally {
5251 restoreStackSize(stackSize);
5252}
5253
5254rule__StringObject__ValueAssignment
5255 @init {
5256 int stackSize = keepStackSize();
5257 }
5258:
5259 (
5260 { before(grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0()); }
5261 RULE_STRING
5262 { after(grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0()); }
5263 )
5264;
5265finally {
5266 restoreStackSize(stackSize);
5267}
5268
5269rule__PredicateSymbol__SymbolAssignment_1
5270 @init {
5271 int stackSize = keepStackSize();
5272 }
5273:
5274 (
5275 { before(grammarAccess.getPredicateSymbolAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5276 ruleModelSymbol
5277 { after(grammarAccess.getPredicateSymbolAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5278 )
5279;
5280finally {
5281 restoreStackSize(stackSize);
5282}
5283
5284rule__PredicateSymbol__ParametersAssignment_3
5285 @init {
5286 int stackSize = keepStackSize();
5287 }
5288:
5289 (
5290 { before(grammarAccess.getPredicateSymbolAccess().getParametersParameterParserRuleCall_3_0()); }
5291 ruleParameter
5292 { after(grammarAccess.getPredicateSymbolAccess().getParametersParameterParserRuleCall_3_0()); }
5293 )
5294;
5295finally {
5296 restoreStackSize(stackSize);
5297}
5298
5299rule__PredicateSymbol__BodiesAssignment_6_1_0
5300 @init {
5301 int stackSize = keepStackSize();
5302 }
5303:
5304 (
5305 { before(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_0_0()); }
5306 rulePatternBody
5307 { after(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_0_0()); }
5308 )
5309;
5310finally {
5311 restoreStackSize(stackSize);
5312}
5313
5314rule__PredicateSymbol__BodiesAssignment_6_1_1_1
5315 @init {
5316 int stackSize = keepStackSize();
5317 }
5318:
5319 (
5320 { before(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_1_1_0()); }
5321 rulePatternBody
5322 { after(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_1_1_0()); }
5323 )
5324;
5325finally {
5326 restoreStackSize(stackSize);
5327}
5328
5329rule__ErrorPredicate__NameAssignment_2
5330 @init {
5331 int stackSize = keepStackSize();
5332 }
5333:
5334 (
5335 { before(grammarAccess.getErrorPredicateAccess().getNameIDTerminalRuleCall_2_0()); }
5336 RULE_ID
5337 { after(grammarAccess.getErrorPredicateAccess().getNameIDTerminalRuleCall_2_0()); }
5338 )
5339;
5340finally {
5341 restoreStackSize(stackSize);
5342}
5343
5344rule__ErrorPredicate__ParametersAssignment_3_1
5345 @init {
5346 int stackSize = keepStackSize();
5347 }
5348:
5349 (
5350 { before(grammarAccess.getErrorPredicateAccess().getParametersParameterParserRuleCall_3_1_0()); }
5351 ruleParameter
5352 { after(grammarAccess.getErrorPredicateAccess().getParametersParameterParserRuleCall_3_1_0()); }
5353 )
5354;
5355finally {
5356 restoreStackSize(stackSize);
5357}
5358
5359rule__ErrorPredicate__BodiesAssignment_5_1_0
5360 @init {
5361 int stackSize = keepStackSize();
5362 }
5363:
5364 (
5365 { before(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_0_0()); }
5366 rulePatternBody
5367 { after(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_0_0()); }
5368 )
5369;
5370finally {
5371 restoreStackSize(stackSize);
5372}
5373
5374rule__ErrorPredicate__BodiesAssignment_5_1_1_1
5375 @init {
5376 int stackSize = keepStackSize();
5377 }
5378:
5379 (
5380 { before(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_1_1_0()); }
5381 rulePatternBody
5382 { after(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_1_1_0()); }
5383 )
5384;
5385finally {
5386 restoreStackSize(stackSize);
5387}
5388
5389rule__Parameter__VariableAssignment_0
5390 @init {
5391 int stackSize = keepStackSize();
5392 }
5393:
5394 (
5395 { before(grammarAccess.getParameterAccess().getVariableVariableParserRuleCall_0_0()); }
5396 ruleVariable
5397 { after(grammarAccess.getParameterAccess().getVariableVariableParserRuleCall_0_0()); }
5398 )
5399;
5400finally {
5401 restoreStackSize(stackSize);
5402}
5403
5404rule__Parameter__TypeAssignment_1_1
5405 @init {
5406 int stackSize = keepStackSize();
5407 }
5408:
5409 (
5410 { before(grammarAccess.getParameterAccess().getTypeSymbolParserRuleCall_1_1_0()); }
5411 ruleSymbol
5412 { after(grammarAccess.getParameterAccess().getTypeSymbolParserRuleCall_1_1_0()); }
5413 )
5414;
5415finally {
5416 restoreStackSize(stackSize);
5417}
5418
5419rule__PatternBody__ConstraintsAssignment_1_1
5420 @init {
5421 int stackSize = keepStackSize();
5422 }
5423:
5424 (
5425 { before(grammarAccess.getPatternBodyAccess().getConstraintsConstraintParserRuleCall_1_1_0()); }
5426 ruleConstraint
5427 { after(grammarAccess.getPatternBodyAccess().getConstraintsConstraintParserRuleCall_1_1_0()); }
5428 )
5429;
5430finally {
5431 restoreStackSize(stackSize);
5432}
5433
5434rule__Constraint__PolarityAssignment_0
5435 @init {
5436 int stackSize = keepStackSize();
5437 }
5438:
5439 (
5440 { before(grammarAccess.getConstraintAccess().getPolarityPolarityParserRuleCall_0_0()); }
5441 rulePolarity
5442 { after(grammarAccess.getConstraintAccess().getPolarityPolarityParserRuleCall_0_0()); }
5443 )
5444;
5445finally {
5446 restoreStackSize(stackSize);
5447}
5448
5449rule__Constraint__SymbolAssignment_1
5450 @init {
5451 int stackSize = keepStackSize();
5452 }
5453:
5454 (
5455 { before(grammarAccess.getConstraintAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5456 ruleModelSymbol
5457 { after(grammarAccess.getConstraintAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5458 )
5459;
5460finally {
5461 restoreStackSize(stackSize);
5462}
5463
5464rule__Constraint__ParamsAssignment_2_0_1
5465 @init {
5466 int stackSize = keepStackSize();
5467 }
5468:
5469 (
5470 { before(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_0_1_0()); }
5471 ruleLiteral
5472 { after(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_0_1_0()); }
5473 )
5474;
5475finally {
5476 restoreStackSize(stackSize);
5477}
5478
5479rule__Constraint__ClosureTypeAssignment_2_1_0
5480 @init {
5481 int stackSize = keepStackSize();
5482 }
5483:
5484 (
5485 { before(grammarAccess.getConstraintAccess().getClosureTypeClosureTypeParserRuleCall_2_1_0_0()); }
5486 ruleClosureType
5487 { after(grammarAccess.getConstraintAccess().getClosureTypeClosureTypeParserRuleCall_2_1_0_0()); }
5488 )
5489;
5490finally {
5491 restoreStackSize(stackSize);
5492}
5493
5494rule__Constraint__ParamsAssignment_2_1_2
5495 @init {
5496 int stackSize = keepStackSize();
5497 }
5498:
5499 (
5500 { before(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_2_0()); }
5501 ruleLiteral
5502 { after(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_2_0()); }
5503 )
5504;
5505finally {
5506 restoreStackSize(stackSize);
5507}
5508
5509rule__Constraint__ParamsAssignment_2_1_3
5510 @init {
5511 int stackSize = keepStackSize();
5512 }
5513:
5514 (
5515 { before(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_3_0()); }
5516 ruleLiteral
5517 { after(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_3_0()); }
5518 )
5519;
5520finally {
5521 restoreStackSize(stackSize);
5522}
5523
5524rule__Variable__NameAssignment
5525 @init {
5526 int stackSize = keepStackSize();
5527 }
5528:
5529 (
5530 { before(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0()); }
5531 RULE_ID
5532 { after(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0()); }
5533 )
5534;
5535finally {
5536 restoreStackSize(stackSize);
5537}
5538
5539rule__AllInstances__SymbolAssignment_1
5540 @init {
5541 int stackSize = keepStackSize();
5542 }
5543:
5544 (
5545 { before(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0()); }
5546 ruleSymbol
5547 { after(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0()); }
5548 )
5549;
5550finally {
5551 restoreStackSize(stackSize);
5552}
5553
5554rule__DefaultInterpretation__InterpretationAssignment_1
5555 @init {
5556 int stackSize = keepStackSize();
5557 }
5558:
5559 (
5560 { before(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0()); }
5561 ruleBasicInterpretation
5562 { after(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0()); }
5563 )
5564;
5565finally {
5566 restoreStackSize(stackSize);
5567}
5568
5569rule__ClassInterpretation__AbstractAssignment_0
5570 @init {
5571 int stackSize = keepStackSize();
5572 }
5573:
5574 (
5575 { before(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0()); }
5576 (
5577 { before(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0()); }
5578 'abstract'
5579 { after(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0()); }
5580 )
5581 { after(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0()); }
5582 )
5583;
5584finally {
5585 restoreStackSize(stackSize);
5586}
5587
5588rule__ClassInterpretation__SymbolAssignment_2
5589 @init {
5590 int stackSize = keepStackSize();
5591 }
5592:
5593 (
5594 { before(grammarAccess.getClassInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0()); }
5595 ruleModelSymbol
5596 { after(grammarAccess.getClassInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0()); }
5597 )
5598;
5599finally {
5600 restoreStackSize(stackSize);
5601}
5602
5603rule__ClassInterpretation__SupertypesAssignment_3_1
5604 @init {
5605 int stackSize = keepStackSize();
5606 }
5607:
5608 (
5609 { before(grammarAccess.getClassInterpretationAccess().getSupertypesModelSymbolParserRuleCall_3_1_0()); }
5610 ruleModelSymbol
5611 { after(grammarAccess.getClassInterpretationAccess().getSupertypesModelSymbolParserRuleCall_3_1_0()); }
5612 )
5613;
5614finally {
5615 restoreStackSize(stackSize);
5616}
5617
5618rule__ClassInterpretation__FieltAssignment_5
5619 @init {
5620 int stackSize = keepStackSize();
5621 }
5622:
5623 (
5624 { before(grammarAccess.getClassInterpretationAccess().getFieltFieldRelationInterpretationParserRuleCall_5_0()); }
5625 ruleFieldRelationInterpretation
5626 { after(grammarAccess.getClassInterpretationAccess().getFieltFieldRelationInterpretationParserRuleCall_5_0()); }
5627 )
5628;
5629finally {
5630 restoreStackSize(stackSize);
5631}
5632
5633rule__EnumInterpretation__SymbolAssignment_1
5634 @init {
5635 int stackSize = keepStackSize();
5636 }
5637:
5638 (
5639 { before(grammarAccess.getEnumInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5640 ruleModelSymbol
5641 { after(grammarAccess.getEnumInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5642 )
5643;
5644finally {
5645 restoreStackSize(stackSize);
5646}
5647
5648rule__EnumInterpretation__ObjectsAssignment_3
5649 @init {
5650 int stackSize = keepStackSize();
5651 }
5652:
5653 (
5654 { before(grammarAccess.getEnumInterpretationAccess().getObjectsNamedObjectParserRuleCall_3_0()); }
5655 ruleNamedObject
5656 { after(grammarAccess.getEnumInterpretationAccess().getObjectsNamedObjectParserRuleCall_3_0()); }
5657 )
5658;
5659finally {
5660 restoreStackSize(stackSize);
5661}
5662
5663rule__FieldRelationInterpretation__ContainmentAssignment_0
5664 @init {
5665 int stackSize = keepStackSize();
5666 }
5667:
5668 (
5669 { before(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5670 (
5671 { before(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5672 'containment'
5673 { after(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5674 )
5675 { after(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5676 )
5677;
5678finally {
5679 restoreStackSize(stackSize);
5680}
5681
5682rule__FieldRelationInterpretation__SymbolAssignment_1
5683 @init {
5684 int stackSize = keepStackSize();
5685 }
5686:
5687 (
5688 { before(grammarAccess.getFieldRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5689 ruleModelSymbol
5690 { after(grammarAccess.getFieldRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0()); }
5691 )
5692;
5693finally {
5694 restoreStackSize(stackSize);
5695}
5696
5697rule__FieldRelationInterpretation__MultiplicityAssignment_3
5698 @init {
5699 int stackSize = keepStackSize();
5700 }
5701:
5702 (
5703 { before(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityMultiplicityDefinitionParserRuleCall_3_0()); }
5704 ruleMultiplicityDefinition
5705 { after(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityMultiplicityDefinitionParserRuleCall_3_0()); }
5706 )
5707;
5708finally {
5709 restoreStackSize(stackSize);
5710}
5711
5712rule__FieldRelationInterpretation__TargetAssignment_4
5713 @init {
5714 int stackSize = keepStackSize();
5715 }
5716:
5717 (
5718 { before(grammarAccess.getFieldRelationInterpretationAccess().getTargetSymbolParserRuleCall_4_0()); }
5719 ruleSymbol
5720 { after(grammarAccess.getFieldRelationInterpretationAccess().getTargetSymbolParserRuleCall_4_0()); }
5721 )
5722;
5723finally {
5724 restoreStackSize(stackSize);
5725}
5726
5727rule__GlobalRelationInterpretation__ContainmentAssignment_0
5728 @init {
5729 int stackSize = keepStackSize();
5730 }
5731:
5732 (
5733 { before(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5734 (
5735 { before(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5736 'containment'
5737 { after(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5738 )
5739 { after(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0()); }
5740 )
5741;
5742finally {
5743 restoreStackSize(stackSize);
5744}
5745
5746rule__GlobalRelationInterpretation__SymbolAssignment_2
5747 @init {
5748 int stackSize = keepStackSize();
5749 }
5750:
5751 (
5752 { before(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0()); }
5753 ruleModelSymbol
5754 { after(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0()); }
5755 )
5756;
5757finally {
5758 restoreStackSize(stackSize);
5759}
5760
5761rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4
5762 @init {
5763 int stackSize = keepStackSize();
5764 }
5765:
5766 (
5767 { before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0()); }
5768 ruleMultiplicityDefinition
5769 { after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0()); }
5770 )
5771;
5772finally {
5773 restoreStackSize(stackSize);
5774}
5775
5776rule__GlobalRelationInterpretation__SourceAssignment_5
5777 @init {
5778 int stackSize = keepStackSize();
5779 }
5780:
5781 (
5782 { before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceSymbolParserRuleCall_5_0()); }
5783 ruleSymbol
5784 { after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceSymbolParserRuleCall_5_0()); }
5785 )
5786;
5787finally {
5788 restoreStackSize(stackSize);
5789}
5790
5791rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6
5792 @init {
5793 int stackSize = keepStackSize();
5794 }
5795:
5796 (
5797 { before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0()); }
5798 ruleMultiplicityDefinition
5799 { after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0()); }
5800 )
5801;
5802finally {
5803 restoreStackSize(stackSize);
5804}
5805
5806rule__GlobalRelationInterpretation__TargetAssignment_7
5807 @init {
5808 int stackSize = keepStackSize();
5809 }
5810:
5811 (
5812 { before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetSymbolParserRuleCall_7_0()); }
5813 ruleSymbol
5814 { after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetSymbolParserRuleCall_7_0()); }
5815 )
5816;
5817finally {
5818 restoreStackSize(stackSize);
5819}
5820
5821rule__MultiplicityDefinition__LowerAssignment_0
5822 @init {
5823 int stackSize = keepStackSize();
5824 }
5825:
5826 (
5827 { before(grammarAccess.getMultiplicityDefinitionAccess().getLowerINTTerminalRuleCall_0_0()); }
5828 RULE_INT
5829 { after(grammarAccess.getMultiplicityDefinitionAccess().getLowerINTTerminalRuleCall_0_0()); }
5830 )
5831;
5832finally {
5833 restoreStackSize(stackSize);
5834}
5835
5836rule__MultiplicityDefinition__UpperAssignment_2_0
5837 @init {
5838 int stackSize = keepStackSize();
5839 }
5840:
5841 (
5842 { before(grammarAccess.getMultiplicityDefinitionAccess().getUpperINTTerminalRuleCall_2_0_0()); }
5843 RULE_INT
5844 { after(grammarAccess.getMultiplicityDefinitionAccess().getUpperINTTerminalRuleCall_2_0_0()); }
5845 )
5846;
5847finally {
5848 restoreStackSize(stackSize);
5849}
5850
5851rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1
5852 @init {
5853 int stackSize = keepStackSize();
5854 }
5855:
5856 (
5857 { before(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0()); }
5858 (
5859 { before(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0()); }
5860 '*'
5861 { after(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0()); }
5862 )
5863 { after(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0()); }
5864 )
5865;
5866finally {
5867 restoreStackSize(stackSize);
5868}
5869
5870RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"';
5871
5872RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
5873
5874RULE_INT : ('0'..'9')+;
5875
5876RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
5877
5878RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
5879
5880RULE_WS : (' '|'\t'|'\r'|'\n')+;
5881
5882RULE_ANY_OTHER : .;
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.tokens b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.tokens
new file mode 100644
index 00000000..e2d30366
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguage.tokens
@@ -0,0 +1,67 @@
1'('=17
2')'=18
3'*'=30
4'+'=29
5'-'=13
6'.'=14
7'..'=38
8':'=19
9'\''=26
10'abstract'=39
11'bool'=22
12'class'=32
13'containment'=40
14'default'=31
15'enum'=36
16'equals'=21
17'error'=16
18'exists'=20
19'extends'=35
20'false'=11
21'int'=23
22'predicate'=27
23'real'=24
24'relation'=37
25'string'=25
26'true'=12
27'unknown'=15
28'{'=33
29'|'=28
30'}'=34
31RULE_ANY_OTHER=10
32RULE_ID=5
33RULE_INT=4
34RULE_ML_COMMENT=7
35RULE_SL_COMMENT=8
36RULE_STRING=6
37RULE_WS=9
38T__11=11
39T__12=12
40T__13=13
41T__14=14
42T__15=15
43T__16=16
44T__17=17
45T__18=18
46T__19=19
47T__20=20
48T__21=21
49T__22=22
50T__23=23
51T__24=24
52T__25=25
53T__26=26
54T__27=27
55T__28=28
56T__29=29
57T__30=30
58T__31=31
59T__32=32
60T__33=33
61T__34=34
62T__35=35
63T__36=36
64T__37=37
65T__38=38
66T__39=39
67T__40=40
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageLexer.java b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageLexer.java
new file mode 100644
index 00000000..d5f63d03
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageLexer.java
@@ -0,0 +1,1669 @@
1package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
2
3// Hack: Use our own Lexer superclass by means of import.
4// Currently there is no other way to specify the superclass for the lexer.
5import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
6
7
8import org.antlr.runtime.*;
9import java.util.Stack;
10import java.util.List;
11import java.util.ArrayList;
12
13@SuppressWarnings("all")
14public class InternalSolverLanguageLexer extends Lexer {
15 public static final int RULE_STRING=6;
16 public static final int RULE_SL_COMMENT=8;
17 public static final int T__19=19;
18 public static final int T__15=15;
19 public static final int T__37=37;
20 public static final int T__16=16;
21 public static final int T__38=38;
22 public static final int T__17=17;
23 public static final int T__39=39;
24 public static final int T__18=18;
25 public static final int T__11=11;
26 public static final int T__33=33;
27 public static final int T__12=12;
28 public static final int T__34=34;
29 public static final int T__13=13;
30 public static final int T__35=35;
31 public static final int T__14=14;
32 public static final int T__36=36;
33 public static final int EOF=-1;
34 public static final int T__30=30;
35 public static final int T__31=31;
36 public static final int T__32=32;
37 public static final int RULE_ID=5;
38 public static final int RULE_WS=9;
39 public static final int RULE_ANY_OTHER=10;
40 public static final int T__26=26;
41 public static final int T__27=27;
42 public static final int T__28=28;
43 public static final int RULE_INT=4;
44 public static final int T__29=29;
45 public static final int T__22=22;
46 public static final int RULE_ML_COMMENT=7;
47 public static final int T__23=23;
48 public static final int T__24=24;
49 public static final int T__25=25;
50 public static final int T__40=40;
51 public static final int T__20=20;
52 public static final int T__21=21;
53
54 // delegates
55 // delegators
56
57 public InternalSolverLanguageLexer() {;}
58 public InternalSolverLanguageLexer(CharStream input) {
59 this(input, new RecognizerSharedState());
60 }
61 public InternalSolverLanguageLexer(CharStream input, RecognizerSharedState state) {
62 super(input,state);
63
64 }
65 public String getGrammarFileName() { return "InternalSolverLanguage.g"; }
66
67 // $ANTLR start "T__11"
68 public final void mT__11() throws RecognitionException {
69 try {
70 int _type = T__11;
71 int _channel = DEFAULT_TOKEN_CHANNEL;
72 // InternalSolverLanguage.g:11:7: ( 'false' )
73 // InternalSolverLanguage.g:11:9: 'false'
74 {
75 match("false");
76
77
78 }
79
80 state.type = _type;
81 state.channel = _channel;
82 }
83 finally {
84 }
85 }
86 // $ANTLR end "T__11"
87
88 // $ANTLR start "T__12"
89 public final void mT__12() throws RecognitionException {
90 try {
91 int _type = T__12;
92 int _channel = DEFAULT_TOKEN_CHANNEL;
93 // InternalSolverLanguage.g:12:7: ( 'true' )
94 // InternalSolverLanguage.g:12:9: 'true'
95 {
96 match("true");
97
98
99 }
100
101 state.type = _type;
102 state.channel = _channel;
103 }
104 finally {
105 }
106 }
107 // $ANTLR end "T__12"
108
109 // $ANTLR start "T__13"
110 public final void mT__13() throws RecognitionException {
111 try {
112 int _type = T__13;
113 int _channel = DEFAULT_TOKEN_CHANNEL;
114 // InternalSolverLanguage.g:13:7: ( '-' )
115 // InternalSolverLanguage.g:13:9: '-'
116 {
117 match('-');
118
119 }
120
121 state.type = _type;
122 state.channel = _channel;
123 }
124 finally {
125 }
126 }
127 // $ANTLR end "T__13"
128
129 // $ANTLR start "T__14"
130 public final void mT__14() throws RecognitionException {
131 try {
132 int _type = T__14;
133 int _channel = DEFAULT_TOKEN_CHANNEL;
134 // InternalSolverLanguage.g:14:7: ( '.' )
135 // InternalSolverLanguage.g:14:9: '.'
136 {
137 match('.');
138
139 }
140
141 state.type = _type;
142 state.channel = _channel;
143 }
144 finally {
145 }
146 }
147 // $ANTLR end "T__14"
148
149 // $ANTLR start "T__15"
150 public final void mT__15() throws RecognitionException {
151 try {
152 int _type = T__15;
153 int _channel = DEFAULT_TOKEN_CHANNEL;
154 // InternalSolverLanguage.g:15:7: ( 'unknown' )
155 // InternalSolverLanguage.g:15:9: 'unknown'
156 {
157 match("unknown");
158
159
160 }
161
162 state.type = _type;
163 state.channel = _channel;
164 }
165 finally {
166 }
167 }
168 // $ANTLR end "T__15"
169
170 // $ANTLR start "T__16"
171 public final void mT__16() throws RecognitionException {
172 try {
173 int _type = T__16;
174 int _channel = DEFAULT_TOKEN_CHANNEL;
175 // InternalSolverLanguage.g:16:7: ( 'error' )
176 // InternalSolverLanguage.g:16:9: 'error'
177 {
178 match("error");
179
180
181 }
182
183 state.type = _type;
184 state.channel = _channel;
185 }
186 finally {
187 }
188 }
189 // $ANTLR end "T__16"
190
191 // $ANTLR start "T__17"
192 public final void mT__17() throws RecognitionException {
193 try {
194 int _type = T__17;
195 int _channel = DEFAULT_TOKEN_CHANNEL;
196 // InternalSolverLanguage.g:17:7: ( '(' )
197 // InternalSolverLanguage.g:17:9: '('
198 {
199 match('(');
200
201 }
202
203 state.type = _type;
204 state.channel = _channel;
205 }
206 finally {
207 }
208 }
209 // $ANTLR end "T__17"
210
211 // $ANTLR start "T__18"
212 public final void mT__18() throws RecognitionException {
213 try {
214 int _type = T__18;
215 int _channel = DEFAULT_TOKEN_CHANNEL;
216 // InternalSolverLanguage.g:18:7: ( ')' )
217 // InternalSolverLanguage.g:18:9: ')'
218 {
219 match(')');
220
221 }
222
223 state.type = _type;
224 state.channel = _channel;
225 }
226 finally {
227 }
228 }
229 // $ANTLR end "T__18"
230
231 // $ANTLR start "T__19"
232 public final void mT__19() throws RecognitionException {
233 try {
234 int _type = T__19;
235 int _channel = DEFAULT_TOKEN_CHANNEL;
236 // InternalSolverLanguage.g:19:7: ( ':' )
237 // InternalSolverLanguage.g:19:9: ':'
238 {
239 match(':');
240
241 }
242
243 state.type = _type;
244 state.channel = _channel;
245 }
246 finally {
247 }
248 }
249 // $ANTLR end "T__19"
250
251 // $ANTLR start "T__20"
252 public final void mT__20() throws RecognitionException {
253 try {
254 int _type = T__20;
255 int _channel = DEFAULT_TOKEN_CHANNEL;
256 // InternalSolverLanguage.g:20:7: ( 'exists' )
257 // InternalSolverLanguage.g:20:9: 'exists'
258 {
259 match("exists");
260
261
262 }
263
264 state.type = _type;
265 state.channel = _channel;
266 }
267 finally {
268 }
269 }
270 // $ANTLR end "T__20"
271
272 // $ANTLR start "T__21"
273 public final void mT__21() throws RecognitionException {
274 try {
275 int _type = T__21;
276 int _channel = DEFAULT_TOKEN_CHANNEL;
277 // InternalSolverLanguage.g:21:7: ( 'equals' )
278 // InternalSolverLanguage.g:21:9: 'equals'
279 {
280 match("equals");
281
282
283 }
284
285 state.type = _type;
286 state.channel = _channel;
287 }
288 finally {
289 }
290 }
291 // $ANTLR end "T__21"
292
293 // $ANTLR start "T__22"
294 public final void mT__22() throws RecognitionException {
295 try {
296 int _type = T__22;
297 int _channel = DEFAULT_TOKEN_CHANNEL;
298 // InternalSolverLanguage.g:22:7: ( 'bool' )
299 // InternalSolverLanguage.g:22:9: 'bool'
300 {
301 match("bool");
302
303
304 }
305
306 state.type = _type;
307 state.channel = _channel;
308 }
309 finally {
310 }
311 }
312 // $ANTLR end "T__22"
313
314 // $ANTLR start "T__23"
315 public final void mT__23() throws RecognitionException {
316 try {
317 int _type = T__23;
318 int _channel = DEFAULT_TOKEN_CHANNEL;
319 // InternalSolverLanguage.g:23:7: ( 'int' )
320 // InternalSolverLanguage.g:23:9: 'int'
321 {
322 match("int");
323
324
325 }
326
327 state.type = _type;
328 state.channel = _channel;
329 }
330 finally {
331 }
332 }
333 // $ANTLR end "T__23"
334
335 // $ANTLR start "T__24"
336 public final void mT__24() throws RecognitionException {
337 try {
338 int _type = T__24;
339 int _channel = DEFAULT_TOKEN_CHANNEL;
340 // InternalSolverLanguage.g:24:7: ( 'real' )
341 // InternalSolverLanguage.g:24:9: 'real'
342 {
343 match("real");
344
345
346 }
347
348 state.type = _type;
349 state.channel = _channel;
350 }
351 finally {
352 }
353 }
354 // $ANTLR end "T__24"
355
356 // $ANTLR start "T__25"
357 public final void mT__25() throws RecognitionException {
358 try {
359 int _type = T__25;
360 int _channel = DEFAULT_TOKEN_CHANNEL;
361 // InternalSolverLanguage.g:25:7: ( 'string' )
362 // InternalSolverLanguage.g:25:9: 'string'
363 {
364 match("string");
365
366
367 }
368
369 state.type = _type;
370 state.channel = _channel;
371 }
372 finally {
373 }
374 }
375 // $ANTLR end "T__25"
376
377 // $ANTLR start "T__26"
378 public final void mT__26() throws RecognitionException {
379 try {
380 int _type = T__26;
381 int _channel = DEFAULT_TOKEN_CHANNEL;
382 // InternalSolverLanguage.g:26:7: ( '\\'' )
383 // InternalSolverLanguage.g:26:9: '\\''
384 {
385 match('\'');
386
387 }
388
389 state.type = _type;
390 state.channel = _channel;
391 }
392 finally {
393 }
394 }
395 // $ANTLR end "T__26"
396
397 // $ANTLR start "T__27"
398 public final void mT__27() throws RecognitionException {
399 try {
400 int _type = T__27;
401 int _channel = DEFAULT_TOKEN_CHANNEL;
402 // InternalSolverLanguage.g:27:7: ( 'predicate' )
403 // InternalSolverLanguage.g:27:9: 'predicate'
404 {
405 match("predicate");
406
407
408 }
409
410 state.type = _type;
411 state.channel = _channel;
412 }
413 finally {
414 }
415 }
416 // $ANTLR end "T__27"
417
418 // $ANTLR start "T__28"
419 public final void mT__28() throws RecognitionException {
420 try {
421 int _type = T__28;
422 int _channel = DEFAULT_TOKEN_CHANNEL;
423 // InternalSolverLanguage.g:28:7: ( '|' )
424 // InternalSolverLanguage.g:28:9: '|'
425 {
426 match('|');
427
428 }
429
430 state.type = _type;
431 state.channel = _channel;
432 }
433 finally {
434 }
435 }
436 // $ANTLR end "T__28"
437
438 // $ANTLR start "T__29"
439 public final void mT__29() throws RecognitionException {
440 try {
441 int _type = T__29;
442 int _channel = DEFAULT_TOKEN_CHANNEL;
443 // InternalSolverLanguage.g:29:7: ( '+' )
444 // InternalSolverLanguage.g:29:9: '+'
445 {
446 match('+');
447
448 }
449
450 state.type = _type;
451 state.channel = _channel;
452 }
453 finally {
454 }
455 }
456 // $ANTLR end "T__29"
457
458 // $ANTLR start "T__30"
459 public final void mT__30() throws RecognitionException {
460 try {
461 int _type = T__30;
462 int _channel = DEFAULT_TOKEN_CHANNEL;
463 // InternalSolverLanguage.g:30:7: ( '*' )
464 // InternalSolverLanguage.g:30:9: '*'
465 {
466 match('*');
467
468 }
469
470 state.type = _type;
471 state.channel = _channel;
472 }
473 finally {
474 }
475 }
476 // $ANTLR end "T__30"
477
478 // $ANTLR start "T__31"
479 public final void mT__31() throws RecognitionException {
480 try {
481 int _type = T__31;
482 int _channel = DEFAULT_TOKEN_CHANNEL;
483 // InternalSolverLanguage.g:31:7: ( 'default' )
484 // InternalSolverLanguage.g:31:9: 'default'
485 {
486 match("default");
487
488
489 }
490
491 state.type = _type;
492 state.channel = _channel;
493 }
494 finally {
495 }
496 }
497 // $ANTLR end "T__31"
498
499 // $ANTLR start "T__32"
500 public final void mT__32() throws RecognitionException {
501 try {
502 int _type = T__32;
503 int _channel = DEFAULT_TOKEN_CHANNEL;
504 // InternalSolverLanguage.g:32:7: ( 'class' )
505 // InternalSolverLanguage.g:32:9: 'class'
506 {
507 match("class");
508
509
510 }
511
512 state.type = _type;
513 state.channel = _channel;
514 }
515 finally {
516 }
517 }
518 // $ANTLR end "T__32"
519
520 // $ANTLR start "T__33"
521 public final void mT__33() throws RecognitionException {
522 try {
523 int _type = T__33;
524 int _channel = DEFAULT_TOKEN_CHANNEL;
525 // InternalSolverLanguage.g:33:7: ( '{' )
526 // InternalSolverLanguage.g:33:9: '{'
527 {
528 match('{');
529
530 }
531
532 state.type = _type;
533 state.channel = _channel;
534 }
535 finally {
536 }
537 }
538 // $ANTLR end "T__33"
539
540 // $ANTLR start "T__34"
541 public final void mT__34() throws RecognitionException {
542 try {
543 int _type = T__34;
544 int _channel = DEFAULT_TOKEN_CHANNEL;
545 // InternalSolverLanguage.g:34:7: ( '}' )
546 // InternalSolverLanguage.g:34:9: '}'
547 {
548 match('}');
549
550 }
551
552 state.type = _type;
553 state.channel = _channel;
554 }
555 finally {
556 }
557 }
558 // $ANTLR end "T__34"
559
560 // $ANTLR start "T__35"
561 public final void mT__35() throws RecognitionException {
562 try {
563 int _type = T__35;
564 int _channel = DEFAULT_TOKEN_CHANNEL;
565 // InternalSolverLanguage.g:35:7: ( 'extends' )
566 // InternalSolverLanguage.g:35:9: 'extends'
567 {
568 match("extends");
569
570
571 }
572
573 state.type = _type;
574 state.channel = _channel;
575 }
576 finally {
577 }
578 }
579 // $ANTLR end "T__35"
580
581 // $ANTLR start "T__36"
582 public final void mT__36() throws RecognitionException {
583 try {
584 int _type = T__36;
585 int _channel = DEFAULT_TOKEN_CHANNEL;
586 // InternalSolverLanguage.g:36:7: ( 'enum' )
587 // InternalSolverLanguage.g:36:9: 'enum'
588 {
589 match("enum");
590
591
592 }
593
594 state.type = _type;
595 state.channel = _channel;
596 }
597 finally {
598 }
599 }
600 // $ANTLR end "T__36"
601
602 // $ANTLR start "T__37"
603 public final void mT__37() throws RecognitionException {
604 try {
605 int _type = T__37;
606 int _channel = DEFAULT_TOKEN_CHANNEL;
607 // InternalSolverLanguage.g:37:7: ( 'relation' )
608 // InternalSolverLanguage.g:37:9: 'relation'
609 {
610 match("relation");
611
612
613 }
614
615 state.type = _type;
616 state.channel = _channel;
617 }
618 finally {
619 }
620 }
621 // $ANTLR end "T__37"
622
623 // $ANTLR start "T__38"
624 public final void mT__38() throws RecognitionException {
625 try {
626 int _type = T__38;
627 int _channel = DEFAULT_TOKEN_CHANNEL;
628 // InternalSolverLanguage.g:38:7: ( '..' )
629 // InternalSolverLanguage.g:38:9: '..'
630 {
631 match("..");
632
633
634 }
635
636 state.type = _type;
637 state.channel = _channel;
638 }
639 finally {
640 }
641 }
642 // $ANTLR end "T__38"
643
644 // $ANTLR start "T__39"
645 public final void mT__39() throws RecognitionException {
646 try {
647 int _type = T__39;
648 int _channel = DEFAULT_TOKEN_CHANNEL;
649 // InternalSolverLanguage.g:39:7: ( 'abstract' )
650 // InternalSolverLanguage.g:39:9: 'abstract'
651 {
652 match("abstract");
653
654
655 }
656
657 state.type = _type;
658 state.channel = _channel;
659 }
660 finally {
661 }
662 }
663 // $ANTLR end "T__39"
664
665 // $ANTLR start "T__40"
666 public final void mT__40() throws RecognitionException {
667 try {
668 int _type = T__40;
669 int _channel = DEFAULT_TOKEN_CHANNEL;
670 // InternalSolverLanguage.g:40:7: ( 'containment' )
671 // InternalSolverLanguage.g:40:9: 'containment'
672 {
673 match("containment");
674
675
676 }
677
678 state.type = _type;
679 state.channel = _channel;
680 }
681 finally {
682 }
683 }
684 // $ANTLR end "T__40"
685
686 // $ANTLR start "RULE_STRING"
687 public final void mRULE_STRING() throws RecognitionException {
688 try {
689 int _type = RULE_STRING;
690 int _channel = DEFAULT_TOKEN_CHANNEL;
691 // InternalSolverLanguage.g:5870:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
692 // InternalSolverLanguage.g:5870:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
693 {
694 match('\"');
695 // InternalSolverLanguage.g:5870:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
696 loop1:
697 do {
698 int alt1=3;
699 int LA1_0 = input.LA(1);
700
701 if ( (LA1_0=='\\') ) {
702 alt1=1;
703 }
704 else if ( ((LA1_0>='\u0000' && LA1_0<='!')||(LA1_0>='#' && LA1_0<='[')||(LA1_0>=']' && LA1_0<='\uFFFF')) ) {
705 alt1=2;
706 }
707
708
709 switch (alt1) {
710 case 1 :
711 // InternalSolverLanguage.g:5870:20: '\\\\' .
712 {
713 match('\\');
714 matchAny();
715
716 }
717 break;
718 case 2 :
719 // InternalSolverLanguage.g:5870:27: ~ ( ( '\\\\' | '\"' ) )
720 {
721 if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
722 input.consume();
723
724 }
725 else {
726 MismatchedSetException mse = new MismatchedSetException(null,input);
727 recover(mse);
728 throw mse;}
729
730
731 }
732 break;
733
734 default :
735 break loop1;
736 }
737 } while (true);
738
739 match('\"');
740
741 }
742
743 state.type = _type;
744 state.channel = _channel;
745 }
746 finally {
747 }
748 }
749 // $ANTLR end "RULE_STRING"
750
751 // $ANTLR start "RULE_ID"
752 public final void mRULE_ID() throws RecognitionException {
753 try {
754 int _type = RULE_ID;
755 int _channel = DEFAULT_TOKEN_CHANNEL;
756 // InternalSolverLanguage.g:5872:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
757 // InternalSolverLanguage.g:5872:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
758 {
759 // InternalSolverLanguage.g:5872:11: ( '^' )?
760 int alt2=2;
761 int LA2_0 = input.LA(1);
762
763 if ( (LA2_0=='^') ) {
764 alt2=1;
765 }
766 switch (alt2) {
767 case 1 :
768 // InternalSolverLanguage.g:5872:11: '^'
769 {
770 match('^');
771
772 }
773 break;
774
775 }
776
777 if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
778 input.consume();
779
780 }
781 else {
782 MismatchedSetException mse = new MismatchedSetException(null,input);
783 recover(mse);
784 throw mse;}
785
786 // InternalSolverLanguage.g:5872:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
787 loop3:
788 do {
789 int alt3=2;
790 int LA3_0 = input.LA(1);
791
792 if ( ((LA3_0>='0' && LA3_0<='9')||(LA3_0>='A' && LA3_0<='Z')||LA3_0=='_'||(LA3_0>='a' && LA3_0<='z')) ) {
793 alt3=1;
794 }
795
796
797 switch (alt3) {
798 case 1 :
799 // InternalSolverLanguage.g:
800 {
801 if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
802 input.consume();
803
804 }
805 else {
806 MismatchedSetException mse = new MismatchedSetException(null,input);
807 recover(mse);
808 throw mse;}
809
810
811 }
812 break;
813
814 default :
815 break loop3;
816 }
817 } while (true);
818
819
820 }
821
822 state.type = _type;
823 state.channel = _channel;
824 }
825 finally {
826 }
827 }
828 // $ANTLR end "RULE_ID"
829
830 // $ANTLR start "RULE_INT"
831 public final void mRULE_INT() throws RecognitionException {
832 try {
833 int _type = RULE_INT;
834 int _channel = DEFAULT_TOKEN_CHANNEL;
835 // InternalSolverLanguage.g:5874:10: ( ( '0' .. '9' )+ )
836 // InternalSolverLanguage.g:5874:12: ( '0' .. '9' )+
837 {
838 // InternalSolverLanguage.g:5874:12: ( '0' .. '9' )+
839 int cnt4=0;
840 loop4:
841 do {
842 int alt4=2;
843 int LA4_0 = input.LA(1);
844
845 if ( ((LA4_0>='0' && LA4_0<='9')) ) {
846 alt4=1;
847 }
848
849
850 switch (alt4) {
851 case 1 :
852 // InternalSolverLanguage.g:5874:13: '0' .. '9'
853 {
854 matchRange('0','9');
855
856 }
857 break;
858
859 default :
860 if ( cnt4 >= 1 ) break loop4;
861 EarlyExitException eee =
862 new EarlyExitException(4, input);
863 throw eee;
864 }
865 cnt4++;
866 } while (true);
867
868
869 }
870
871 state.type = _type;
872 state.channel = _channel;
873 }
874 finally {
875 }
876 }
877 // $ANTLR end "RULE_INT"
878
879 // $ANTLR start "RULE_ML_COMMENT"
880 public final void mRULE_ML_COMMENT() throws RecognitionException {
881 try {
882 int _type = RULE_ML_COMMENT;
883 int _channel = DEFAULT_TOKEN_CHANNEL;
884 // InternalSolverLanguage.g:5876:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
885 // InternalSolverLanguage.g:5876:19: '/*' ( options {greedy=false; } : . )* '*/'
886 {
887 match("/*");
888
889 // InternalSolverLanguage.g:5876:24: ( options {greedy=false; } : . )*
890 loop5:
891 do {
892 int alt5=2;
893 int LA5_0 = input.LA(1);
894
895 if ( (LA5_0=='*') ) {
896 int LA5_1 = input.LA(2);
897
898 if ( (LA5_1=='/') ) {
899 alt5=2;
900 }
901 else if ( ((LA5_1>='\u0000' && LA5_1<='.')||(LA5_1>='0' && LA5_1<='\uFFFF')) ) {
902 alt5=1;
903 }
904
905
906 }
907 else if ( ((LA5_0>='\u0000' && LA5_0<=')')||(LA5_0>='+' && LA5_0<='\uFFFF')) ) {
908 alt5=1;
909 }
910
911
912 switch (alt5) {
913 case 1 :
914 // InternalSolverLanguage.g:5876:52: .
915 {
916 matchAny();
917
918 }
919 break;
920
921 default :
922 break loop5;
923 }
924 } while (true);
925
926 match("*/");
927
928
929 }
930
931 state.type = _type;
932 state.channel = _channel;
933 }
934 finally {
935 }
936 }
937 // $ANTLR end "RULE_ML_COMMENT"
938
939 // $ANTLR start "RULE_SL_COMMENT"
940 public final void mRULE_SL_COMMENT() throws RecognitionException {
941 try {
942 int _type = RULE_SL_COMMENT;
943 int _channel = DEFAULT_TOKEN_CHANNEL;
944 // InternalSolverLanguage.g:5878:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
945 // InternalSolverLanguage.g:5878:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
946 {
947 match("//");
948
949 // InternalSolverLanguage.g:5878:24: (~ ( ( '\\n' | '\\r' ) ) )*
950 loop6:
951 do {
952 int alt6=2;
953 int LA6_0 = input.LA(1);
954
955 if ( ((LA6_0>='\u0000' && LA6_0<='\t')||(LA6_0>='\u000B' && LA6_0<='\f')||(LA6_0>='\u000E' && LA6_0<='\uFFFF')) ) {
956 alt6=1;
957 }
958
959
960 switch (alt6) {
961 case 1 :
962 // InternalSolverLanguage.g:5878:24: ~ ( ( '\\n' | '\\r' ) )
963 {
964 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') ) {
965 input.consume();
966
967 }
968 else {
969 MismatchedSetException mse = new MismatchedSetException(null,input);
970 recover(mse);
971 throw mse;}
972
973
974 }
975 break;
976
977 default :
978 break loop6;
979 }
980 } while (true);
981
982 // InternalSolverLanguage.g:5878:40: ( ( '\\r' )? '\\n' )?
983 int alt8=2;
984 int LA8_0 = input.LA(1);
985
986 if ( (LA8_0=='\n'||LA8_0=='\r') ) {
987 alt8=1;
988 }
989 switch (alt8) {
990 case 1 :
991 // InternalSolverLanguage.g:5878:41: ( '\\r' )? '\\n'
992 {
993 // InternalSolverLanguage.g:5878:41: ( '\\r' )?
994 int alt7=2;
995 int LA7_0 = input.LA(1);
996
997 if ( (LA7_0=='\r') ) {
998 alt7=1;
999 }
1000 switch (alt7) {
1001 case 1 :
1002 // InternalSolverLanguage.g:5878:41: '\\r'
1003 {
1004 match('\r');
1005
1006 }
1007 break;
1008
1009 }
1010
1011 match('\n');
1012
1013 }
1014 break;
1015
1016 }
1017
1018
1019 }
1020
1021 state.type = _type;
1022 state.channel = _channel;
1023 }
1024 finally {
1025 }
1026 }
1027 // $ANTLR end "RULE_SL_COMMENT"
1028
1029 // $ANTLR start "RULE_WS"
1030 public final void mRULE_WS() throws RecognitionException {
1031 try {
1032 int _type = RULE_WS;
1033 int _channel = DEFAULT_TOKEN_CHANNEL;
1034 // InternalSolverLanguage.g:5880:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
1035 // InternalSolverLanguage.g:5880:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1036 {
1037 // InternalSolverLanguage.g:5880:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1038 int cnt9=0;
1039 loop9:
1040 do {
1041 int alt9=2;
1042 int LA9_0 = input.LA(1);
1043
1044 if ( ((LA9_0>='\t' && LA9_0<='\n')||LA9_0=='\r'||LA9_0==' ') ) {
1045 alt9=1;
1046 }
1047
1048
1049 switch (alt9) {
1050 case 1 :
1051 // InternalSolverLanguage.g:
1052 {
1053 if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
1054 input.consume();
1055
1056 }
1057 else {
1058 MismatchedSetException mse = new MismatchedSetException(null,input);
1059 recover(mse);
1060 throw mse;}
1061
1062
1063 }
1064 break;
1065
1066 default :
1067 if ( cnt9 >= 1 ) break loop9;
1068 EarlyExitException eee =
1069 new EarlyExitException(9, input);
1070 throw eee;
1071 }
1072 cnt9++;
1073 } while (true);
1074
1075
1076 }
1077
1078 state.type = _type;
1079 state.channel = _channel;
1080 }
1081 finally {
1082 }
1083 }
1084 // $ANTLR end "RULE_WS"
1085
1086 // $ANTLR start "RULE_ANY_OTHER"
1087 public final void mRULE_ANY_OTHER() throws RecognitionException {
1088 try {
1089 int _type = RULE_ANY_OTHER;
1090 int _channel = DEFAULT_TOKEN_CHANNEL;
1091 // InternalSolverLanguage.g:5882:16: ( . )
1092 // InternalSolverLanguage.g:5882:18: .
1093 {
1094 matchAny();
1095
1096 }
1097
1098 state.type = _type;
1099 state.channel = _channel;
1100 }
1101 finally {
1102 }
1103 }
1104 // $ANTLR end "RULE_ANY_OTHER"
1105
1106 public void mTokens() throws RecognitionException {
1107 // InternalSolverLanguage.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | RULE_STRING | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
1108 int alt10=37;
1109 alt10 = dfa10.predict(input);
1110 switch (alt10) {
1111 case 1 :
1112 // InternalSolverLanguage.g:1:10: T__11
1113 {
1114 mT__11();
1115
1116 }
1117 break;
1118 case 2 :
1119 // InternalSolverLanguage.g:1:16: T__12
1120 {
1121 mT__12();
1122
1123 }
1124 break;
1125 case 3 :
1126 // InternalSolverLanguage.g:1:22: T__13
1127 {
1128 mT__13();
1129
1130 }
1131 break;
1132 case 4 :
1133 // InternalSolverLanguage.g:1:28: T__14
1134 {
1135 mT__14();
1136
1137 }
1138 break;
1139 case 5 :
1140 // InternalSolverLanguage.g:1:34: T__15
1141 {
1142 mT__15();
1143
1144 }
1145 break;
1146 case 6 :
1147 // InternalSolverLanguage.g:1:40: T__16
1148 {
1149 mT__16();
1150
1151 }
1152 break;
1153 case 7 :
1154 // InternalSolverLanguage.g:1:46: T__17
1155 {
1156 mT__17();
1157
1158 }
1159 break;
1160 case 8 :
1161 // InternalSolverLanguage.g:1:52: T__18
1162 {
1163 mT__18();
1164
1165 }
1166 break;
1167 case 9 :
1168 // InternalSolverLanguage.g:1:58: T__19
1169 {
1170 mT__19();
1171
1172 }
1173 break;
1174 case 10 :
1175 // InternalSolverLanguage.g:1:64: T__20
1176 {
1177 mT__20();
1178
1179 }
1180 break;
1181 case 11 :
1182 // InternalSolverLanguage.g:1:70: T__21
1183 {
1184 mT__21();
1185
1186 }
1187 break;
1188 case 12 :
1189 // InternalSolverLanguage.g:1:76: T__22
1190 {
1191 mT__22();
1192
1193 }
1194 break;
1195 case 13 :
1196 // InternalSolverLanguage.g:1:82: T__23
1197 {
1198 mT__23();
1199
1200 }
1201 break;
1202 case 14 :
1203 // InternalSolverLanguage.g:1:88: T__24
1204 {
1205 mT__24();
1206
1207 }
1208 break;
1209 case 15 :
1210 // InternalSolverLanguage.g:1:94: T__25
1211 {
1212 mT__25();
1213
1214 }
1215 break;
1216 case 16 :
1217 // InternalSolverLanguage.g:1:100: T__26
1218 {
1219 mT__26();
1220
1221 }
1222 break;
1223 case 17 :
1224 // InternalSolverLanguage.g:1:106: T__27
1225 {
1226 mT__27();
1227
1228 }
1229 break;
1230 case 18 :
1231 // InternalSolverLanguage.g:1:112: T__28
1232 {
1233 mT__28();
1234
1235 }
1236 break;
1237 case 19 :
1238 // InternalSolverLanguage.g:1:118: T__29
1239 {
1240 mT__29();
1241
1242 }
1243 break;
1244 case 20 :
1245 // InternalSolverLanguage.g:1:124: T__30
1246 {
1247 mT__30();
1248
1249 }
1250 break;
1251 case 21 :
1252 // InternalSolverLanguage.g:1:130: T__31
1253 {
1254 mT__31();
1255
1256 }
1257 break;
1258 case 22 :
1259 // InternalSolverLanguage.g:1:136: T__32
1260 {
1261 mT__32();
1262
1263 }
1264 break;
1265 case 23 :
1266 // InternalSolverLanguage.g:1:142: T__33
1267 {
1268 mT__33();
1269
1270 }
1271 break;
1272 case 24 :
1273 // InternalSolverLanguage.g:1:148: T__34
1274 {
1275 mT__34();
1276
1277 }
1278 break;
1279 case 25 :
1280 // InternalSolverLanguage.g:1:154: T__35
1281 {
1282 mT__35();
1283
1284 }
1285 break;
1286 case 26 :
1287 // InternalSolverLanguage.g:1:160: T__36
1288 {
1289 mT__36();
1290
1291 }
1292 break;
1293 case 27 :
1294 // InternalSolverLanguage.g:1:166: T__37
1295 {
1296 mT__37();
1297
1298 }
1299 break;
1300 case 28 :
1301 // InternalSolverLanguage.g:1:172: T__38
1302 {
1303 mT__38();
1304
1305 }
1306 break;
1307 case 29 :
1308 // InternalSolverLanguage.g:1:178: T__39
1309 {
1310 mT__39();
1311
1312 }
1313 break;
1314 case 30 :
1315 // InternalSolverLanguage.g:1:184: T__40
1316 {
1317 mT__40();
1318
1319 }
1320 break;
1321 case 31 :
1322 // InternalSolverLanguage.g:1:190: RULE_STRING
1323 {
1324 mRULE_STRING();
1325
1326 }
1327 break;
1328 case 32 :
1329 // InternalSolverLanguage.g:1:202: RULE_ID
1330 {
1331 mRULE_ID();
1332
1333 }
1334 break;
1335 case 33 :
1336 // InternalSolverLanguage.g:1:210: RULE_INT
1337 {
1338 mRULE_INT();
1339
1340 }
1341 break;
1342 case 34 :
1343 // InternalSolverLanguage.g:1:219: RULE_ML_COMMENT
1344 {
1345 mRULE_ML_COMMENT();
1346
1347 }
1348 break;
1349 case 35 :
1350 // InternalSolverLanguage.g:1:235: RULE_SL_COMMENT
1351 {
1352 mRULE_SL_COMMENT();
1353
1354 }
1355 break;
1356 case 36 :
1357 // InternalSolverLanguage.g:1:251: RULE_WS
1358 {
1359 mRULE_WS();
1360
1361 }
1362 break;
1363 case 37 :
1364 // InternalSolverLanguage.g:1:259: RULE_ANY_OTHER
1365 {
1366 mRULE_ANY_OTHER();
1367
1368 }
1369 break;
1370
1371 }
1372
1373 }
1374
1375
1376 protected DFA10 dfa10 = new DFA10(this);
1377 static final String DFA10_eotS =
1378 "\1\uffff\2\40\1\uffff\1\44\2\40\3\uffff\4\40\1\uffff\1\40\3\uffff\2\40\2\uffff\1\40\2\36\2\uffff\1\36\2\uffff\1\40\1\uffff\1\40\3\uffff\5\40\3\uffff\4\40\1\uffff\1\40\3\uffff\3\40\2\uffff\1\40\5\uffff\11\40\1\134\11\40\1\146\5\40\1\154\1\155\1\uffff\1\156\7\40\1\166\1\uffff\1\40\1\170\3\40\3\uffff\4\40\1\u0080\2\40\1\uffff\1\40\1\uffff\1\u0084\1\40\1\u0086\1\40\1\u0088\2\40\1\uffff\2\40\1\u008d\1\uffff\1\u008e\1\uffff\1\40\1\uffff\1\40\1\u0091\2\40\2\uffff\1\u0094\1\40\1\uffff\1\40\1\u0097\1\uffff\1\u0098\1\40\2\uffff\1\40\1\u009b\1\uffff";
1379 static final String DFA10_eofS =
1380 "\u009c\uffff";
1381 static final String DFA10_minS =
1382 "\1\0\1\141\1\162\1\uffff\1\56\2\156\3\uffff\1\157\1\156\1\145\1\164\1\uffff\1\162\3\uffff\1\145\1\154\2\uffff\1\142\1\0\1\101\2\uffff\1\52\2\uffff\1\154\1\uffff\1\165\3\uffff\1\153\1\162\1\151\2\165\3\uffff\1\157\1\164\1\141\1\162\1\uffff\1\145\3\uffff\1\146\1\141\1\156\2\uffff\1\163\5\uffff\1\163\1\145\1\156\1\157\1\163\1\145\1\141\1\155\1\154\1\60\1\154\1\141\1\151\1\144\1\141\1\163\2\164\1\145\1\60\1\157\1\162\1\164\1\156\1\154\2\60\1\uffff\1\60\1\164\1\156\1\151\1\165\1\163\1\141\1\162\1\60\1\uffff\1\167\1\60\1\163\1\144\1\163\3\uffff\1\151\1\147\1\143\1\154\1\60\1\151\1\141\1\uffff\1\156\1\uffff\1\60\1\163\1\60\1\157\1\60\1\141\1\164\1\uffff\1\156\1\143\1\60\1\uffff\1\60\1\uffff\1\156\1\uffff\1\164\1\60\1\155\1\164\2\uffff\1\60\1\145\1\uffff\1\145\1\60\1\uffff\1\60\1\156\2\uffff\1\164\1\60\1\uffff";
1383 static final String DFA10_maxS =
1384 "\1\uffff\1\141\1\162\1\uffff\1\56\1\156\1\170\3\uffff\1\157\1\156\1\145\1\164\1\uffff\1\162\3\uffff\1\145\1\157\2\uffff\1\142\1\uffff\1\172\2\uffff\1\57\2\uffff\1\154\1\uffff\1\165\3\uffff\1\153\1\162\1\164\2\165\3\uffff\1\157\1\164\1\154\1\162\1\uffff\1\145\3\uffff\1\146\1\141\1\156\2\uffff\1\163\5\uffff\1\163\1\145\1\156\1\157\1\163\1\145\1\141\1\155\1\154\1\172\1\154\1\141\1\151\1\144\1\141\1\163\2\164\1\145\1\172\1\157\1\162\1\164\1\156\1\154\2\172\1\uffff\1\172\1\164\1\156\1\151\1\165\1\163\1\141\1\162\1\172\1\uffff\1\167\1\172\1\163\1\144\1\163\3\uffff\1\151\1\147\1\143\1\154\1\172\1\151\1\141\1\uffff\1\156\1\uffff\1\172\1\163\1\172\1\157\1\172\1\141\1\164\1\uffff\1\156\1\143\1\172\1\uffff\1\172\1\uffff\1\156\1\uffff\1\164\1\172\1\155\1\164\2\uffff\1\172\1\145\1\uffff\1\145\1\172\1\uffff\1\172\1\156\2\uffff\1\164\1\172\1\uffff";
1385 static final String DFA10_acceptS =
1386 "\3\uffff\1\3\3\uffff\1\7\1\10\1\11\4\uffff\1\20\1\uffff\1\22\1\23\1\24\2\uffff\1\27\1\30\3\uffff\1\40\1\41\1\uffff\1\44\1\45\1\uffff\1\40\1\uffff\1\3\1\34\1\4\5\uffff\1\7\1\10\1\11\4\uffff\1\20\1\uffff\1\22\1\23\1\24\3\uffff\1\27\1\30\1\uffff\1\37\1\41\1\42\1\43\1\44\33\uffff\1\15\11\uffff\1\2\5\uffff\1\32\1\14\1\16\7\uffff\1\1\1\uffff\1\6\7\uffff\1\26\3\uffff\1\12\1\uffff\1\13\1\uffff\1\17\4\uffff\1\5\1\31\2\uffff\1\25\2\uffff\1\33\2\uffff\1\35\1\21\2\uffff\1\36";
1387 static final String DFA10_specialS =
1388 "\1\1\27\uffff\1\0\u0083\uffff}>";
1389 static final String[] DFA10_transitionS = {
1390 "\11\36\2\35\2\36\1\35\22\36\1\35\1\36\1\30\4\36\1\16\1\7\1\10\1\22\1\21\1\36\1\3\1\4\1\34\12\33\1\11\6\36\32\32\3\36\1\31\1\32\1\36\1\27\1\12\1\24\1\23\1\6\1\1\2\32\1\13\6\32\1\17\1\32\1\14\1\15\1\2\1\5\5\32\1\25\1\20\1\26\uff82\36",
1391 "\1\37",
1392 "\1\41",
1393 "",
1394 "\1\43",
1395 "\1\45",
1396 "\1\51\2\uffff\1\50\1\46\5\uffff\1\47",
1397 "",
1398 "",
1399 "",
1400 "\1\55",
1401 "\1\56",
1402 "\1\57",
1403 "\1\60",
1404 "",
1405 "\1\62",
1406 "",
1407 "",
1408 "",
1409 "\1\66",
1410 "\1\67\2\uffff\1\70",
1411 "",
1412 "",
1413 "\1\73",
1414 "\0\74",
1415 "\32\40\4\uffff\1\40\1\uffff\32\40",
1416 "",
1417 "",
1418 "\1\76\4\uffff\1\77",
1419 "",
1420 "",
1421 "\1\101",
1422 "",
1423 "\1\102",
1424 "",
1425 "",
1426 "",
1427 "\1\103",
1428 "\1\104",
1429 "\1\105\12\uffff\1\106",
1430 "\1\107",
1431 "\1\110",
1432 "",
1433 "",
1434 "",
1435 "\1\111",
1436 "\1\112",
1437 "\1\113\12\uffff\1\114",
1438 "\1\115",
1439 "",
1440 "\1\116",
1441 "",
1442 "",
1443 "",
1444 "\1\117",
1445 "\1\120",
1446 "\1\121",
1447 "",
1448 "",
1449 "\1\122",
1450 "",
1451 "",
1452 "",
1453 "",
1454 "",
1455 "\1\123",
1456 "\1\124",
1457 "\1\125",
1458 "\1\126",
1459 "\1\127",
1460 "\1\130",
1461 "\1\131",
1462 "\1\132",
1463 "\1\133",
1464 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1465 "\1\135",
1466 "\1\136",
1467 "\1\137",
1468 "\1\140",
1469 "\1\141",
1470 "\1\142",
1471 "\1\143",
1472 "\1\144",
1473 "\1\145",
1474 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1475 "\1\147",
1476 "\1\150",
1477 "\1\151",
1478 "\1\152",
1479 "\1\153",
1480 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1481 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1482 "",
1483 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1484 "\1\157",
1485 "\1\160",
1486 "\1\161",
1487 "\1\162",
1488 "\1\163",
1489 "\1\164",
1490 "\1\165",
1491 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1492 "",
1493 "\1\167",
1494 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1495 "\1\171",
1496 "\1\172",
1497 "\1\173",
1498 "",
1499 "",
1500 "",
1501 "\1\174",
1502 "\1\175",
1503 "\1\176",
1504 "\1\177",
1505 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1506 "\1\u0081",
1507 "\1\u0082",
1508 "",
1509 "\1\u0083",
1510 "",
1511 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1512 "\1\u0085",
1513 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1514 "\1\u0087",
1515 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1516 "\1\u0089",
1517 "\1\u008a",
1518 "",
1519 "\1\u008b",
1520 "\1\u008c",
1521 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1522 "",
1523 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1524 "",
1525 "\1\u008f",
1526 "",
1527 "\1\u0090",
1528 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1529 "\1\u0092",
1530 "\1\u0093",
1531 "",
1532 "",
1533 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1534 "\1\u0095",
1535 "",
1536 "\1\u0096",
1537 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1538 "",
1539 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1540 "\1\u0099",
1541 "",
1542 "",
1543 "\1\u009a",
1544 "\12\40\7\uffff\32\40\4\uffff\1\40\1\uffff\32\40",
1545 ""
1546 };
1547
1548 static final short[] DFA10_eot = DFA.unpackEncodedString(DFA10_eotS);
1549 static final short[] DFA10_eof = DFA.unpackEncodedString(DFA10_eofS);
1550 static final char[] DFA10_min = DFA.unpackEncodedStringToUnsignedChars(DFA10_minS);
1551 static final char[] DFA10_max = DFA.unpackEncodedStringToUnsignedChars(DFA10_maxS);
1552 static final short[] DFA10_accept = DFA.unpackEncodedString(DFA10_acceptS);
1553 static final short[] DFA10_special = DFA.unpackEncodedString(DFA10_specialS);
1554 static final short[][] DFA10_transition;
1555
1556 static {
1557 int numStates = DFA10_transitionS.length;
1558 DFA10_transition = new short[numStates][];
1559 for (int i=0; i<numStates; i++) {
1560 DFA10_transition[i] = DFA.unpackEncodedString(DFA10_transitionS[i]);
1561 }
1562 }
1563
1564 class DFA10 extends DFA {
1565
1566 public DFA10(BaseRecognizer recognizer) {
1567 this.recognizer = recognizer;
1568 this.decisionNumber = 10;
1569 this.eot = DFA10_eot;
1570 this.eof = DFA10_eof;
1571 this.min = DFA10_min;
1572 this.max = DFA10_max;
1573 this.accept = DFA10_accept;
1574 this.special = DFA10_special;
1575 this.transition = DFA10_transition;
1576 }
1577 public String getDescription() {
1578 return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | RULE_STRING | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
1579 }
1580 public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
1581 IntStream input = _input;
1582 int _s = s;
1583 switch ( s ) {
1584 case 0 :
1585 int LA10_24 = input.LA(1);
1586
1587 s = -1;
1588 if ( ((LA10_24>='\u0000' && LA10_24<='\uFFFF')) ) {s = 60;}
1589
1590 else s = 30;
1591
1592 if ( s>=0 ) return s;
1593 break;
1594 case 1 :
1595 int LA10_0 = input.LA(1);
1596
1597 s = -1;
1598 if ( (LA10_0=='f') ) {s = 1;}
1599
1600 else if ( (LA10_0=='t') ) {s = 2;}
1601
1602 else if ( (LA10_0=='-') ) {s = 3;}
1603
1604 else if ( (LA10_0=='.') ) {s = 4;}
1605
1606 else if ( (LA10_0=='u') ) {s = 5;}
1607
1608 else if ( (LA10_0=='e') ) {s = 6;}
1609
1610 else if ( (LA10_0=='(') ) {s = 7;}
1611
1612 else if ( (LA10_0==')') ) {s = 8;}
1613
1614 else if ( (LA10_0==':') ) {s = 9;}
1615
1616 else if ( (LA10_0=='b') ) {s = 10;}
1617
1618 else if ( (LA10_0=='i') ) {s = 11;}
1619
1620 else if ( (LA10_0=='r') ) {s = 12;}
1621
1622 else if ( (LA10_0=='s') ) {s = 13;}
1623
1624 else if ( (LA10_0=='\'') ) {s = 14;}
1625
1626 else if ( (LA10_0=='p') ) {s = 15;}
1627
1628 else if ( (LA10_0=='|') ) {s = 16;}
1629
1630 else if ( (LA10_0=='+') ) {s = 17;}
1631
1632 else if ( (LA10_0=='*') ) {s = 18;}
1633
1634 else if ( (LA10_0=='d') ) {s = 19;}
1635
1636 else if ( (LA10_0=='c') ) {s = 20;}
1637
1638 else if ( (LA10_0=='{') ) {s = 21;}
1639
1640 else if ( (LA10_0=='}') ) {s = 22;}
1641
1642 else if ( (LA10_0=='a') ) {s = 23;}
1643
1644 else if ( (LA10_0=='\"') ) {s = 24;}
1645
1646 else if ( (LA10_0=='^') ) {s = 25;}
1647
1648 else if ( ((LA10_0>='A' && LA10_0<='Z')||LA10_0=='_'||(LA10_0>='g' && LA10_0<='h')||(LA10_0>='j' && LA10_0<='o')||LA10_0=='q'||(LA10_0>='v' && LA10_0<='z')) ) {s = 26;}
1649
1650 else if ( ((LA10_0>='0' && LA10_0<='9')) ) {s = 27;}
1651
1652 else if ( (LA10_0=='/') ) {s = 28;}
1653
1654 else if ( ((LA10_0>='\t' && LA10_0<='\n')||LA10_0=='\r'||LA10_0==' ') ) {s = 29;}
1655
1656 else if ( ((LA10_0>='\u0000' && LA10_0<='\b')||(LA10_0>='\u000B' && LA10_0<='\f')||(LA10_0>='\u000E' && LA10_0<='\u001F')||LA10_0=='!'||(LA10_0>='#' && LA10_0<='&')||LA10_0==','||(LA10_0>=';' && LA10_0<='@')||(LA10_0>='[' && LA10_0<=']')||LA10_0=='`'||(LA10_0>='~' && LA10_0<='\uFFFF')) ) {s = 30;}
1657
1658 if ( s>=0 ) return s;
1659 break;
1660 }
1661 NoViableAltException nvae =
1662 new NoViableAltException(getDescription(), 10, _s, input);
1663 error(nvae);
1664 throw nvae;
1665 }
1666 }
1667
1668
1669} \ No newline at end of file
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
new file mode 100644
index 00000000..cc5980b1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.java
@@ -0,0 +1,17842 @@
1package org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal;
2
3import java.io.InputStream;
4import org.eclipse.xtext.*;
5import org.eclipse.xtext.parser.*;
6import org.eclipse.xtext.parser.impl.*;
7import org.eclipse.emf.ecore.util.EcoreUtil;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.xtext.parser.antlr.XtextTokenStream;
10import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
11import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
12import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.DFA;
13import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
14
15
16
17import org.antlr.runtime.*;
18import java.util.Stack;
19import java.util.List;
20import java.util.ArrayList;
21
22@SuppressWarnings("all")
23public class InternalSolverLanguageParser extends AbstractInternalContentAssistParser {
24 public static final String[] tokenNames = new String[] {
25 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_ID", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'false'", "'true'", "'-'", "'.'", "'unknown'", "'error'", "'('", "')'", "':'", "'exists'", "'equals'", "'bool'", "'int'", "'real'", "'string'", "'\\''", "'predicate'", "'|'", "'+'", "'*'", "'default'", "'class'", "'{'", "'}'", "'extends'", "'enum'", "'relation'", "'..'", "'abstract'", "'containment'"
26 };
27 public static final int RULE_STRING=6;
28 public static final int RULE_SL_COMMENT=8;
29 public static final int T__19=19;
30 public static final int T__15=15;
31 public static final int T__37=37;
32 public static final int T__16=16;
33 public static final int T__38=38;
34 public static final int T__17=17;
35 public static final int T__39=39;
36 public static final int T__18=18;
37 public static final int T__11=11;
38 public static final int T__33=33;
39 public static final int T__12=12;
40 public static final int T__34=34;
41 public static final int T__13=13;
42 public static final int T__35=35;
43 public static final int T__14=14;
44 public static final int T__36=36;
45 public static final int EOF=-1;
46 public static final int T__30=30;
47 public static final int T__31=31;
48 public static final int T__32=32;
49 public static final int RULE_ID=5;
50 public static final int RULE_WS=9;
51 public static final int RULE_ANY_OTHER=10;
52 public static final int T__26=26;
53 public static final int T__27=27;
54 public static final int T__28=28;
55 public static final int RULE_INT=4;
56 public static final int T__29=29;
57 public static final int T__22=22;
58 public static final int RULE_ML_COMMENT=7;
59 public static final int T__23=23;
60 public static final int T__24=24;
61 public static final int T__25=25;
62 public static final int T__40=40;
63 public static final int T__20=20;
64 public static final int T__21=21;
65
66 // delegates
67 // delegators
68
69
70 public InternalSolverLanguageParser(TokenStream input) {
71 this(input, new RecognizerSharedState());
72 }
73 public InternalSolverLanguageParser(TokenStream input, RecognizerSharedState state) {
74 super(input, state);
75
76 }
77
78
79 public String[] getTokenNames() { return InternalSolverLanguageParser.tokenNames; }
80 public String getGrammarFileName() { return "InternalSolverLanguage.g"; }
81
82
83 private SolverLanguageGrammarAccess grammarAccess;
84
85 public void setGrammarAccess(SolverLanguageGrammarAccess grammarAccess) {
86 this.grammarAccess = grammarAccess;
87 }
88
89 @Override
90 protected Grammar getGrammar() {
91 return grammarAccess.getGrammar();
92 }
93
94 @Override
95 protected String getValueForTokenName(String tokenName) {
96 return tokenName;
97 }
98
99
100
101 // $ANTLR start "entryRuleProblem"
102 // InternalSolverLanguage.g:53:1: entryRuleProblem : ruleProblem EOF ;
103 public final void entryRuleProblem() throws RecognitionException {
104 try {
105 // InternalSolverLanguage.g:54:1: ( ruleProblem EOF )
106 // InternalSolverLanguage.g:55:1: ruleProblem EOF
107 {
108 before(grammarAccess.getProblemRule());
109 pushFollow(FOLLOW_1);
110 ruleProblem();
111
112 state._fsp--;
113
114 after(grammarAccess.getProblemRule());
115 match(input,EOF,FOLLOW_2);
116
117 }
118
119 }
120 catch (RecognitionException re) {
121 reportError(re);
122 recover(input,re);
123 }
124 finally {
125 }
126 return ;
127 }
128 // $ANTLR end "entryRuleProblem"
129
130
131 // $ANTLR start "ruleProblem"
132 // InternalSolverLanguage.g:62:1: ruleProblem : ( ( rule__Problem__StatementsAssignment )* ) ;
133 public final void ruleProblem() throws RecognitionException {
134
135 int stackSize = keepStackSize();
136
137 try {
138 // InternalSolverLanguage.g:66:2: ( ( ( rule__Problem__StatementsAssignment )* ) )
139 // InternalSolverLanguage.g:67:2: ( ( rule__Problem__StatementsAssignment )* )
140 {
141 // InternalSolverLanguage.g:67:2: ( ( rule__Problem__StatementsAssignment )* )
142 // InternalSolverLanguage.g:68:3: ( rule__Problem__StatementsAssignment )*
143 {
144 before(grammarAccess.getProblemAccess().getStatementsAssignment());
145 // InternalSolverLanguage.g:69:3: ( rule__Problem__StatementsAssignment )*
146 loop1:
147 do {
148 int alt1=2;
149 int LA1_0 = input.LA(1);
150
151 if ( (LA1_0==RULE_ID||LA1_0==16||(LA1_0>=20 && LA1_0<=25)||LA1_0==27||LA1_0==31||LA1_0==36||(LA1_0>=39 && LA1_0<=40)) ) {
152 alt1=1;
153 }
154
155
156 switch (alt1) {
157 case 1 :
158 // InternalSolverLanguage.g:69:4: rule__Problem__StatementsAssignment
159 {
160 pushFollow(FOLLOW_3);
161 rule__Problem__StatementsAssignment();
162
163 state._fsp--;
164
165
166 }
167 break;
168
169 default :
170 break loop1;
171 }
172 } while (true);
173
174 after(grammarAccess.getProblemAccess().getStatementsAssignment());
175
176 }
177
178
179 }
180
181 }
182 catch (RecognitionException re) {
183 reportError(re);
184 recover(input,re);
185 }
186 finally {
187
188 restoreStackSize(stackSize);
189
190 }
191 return ;
192 }
193 // $ANTLR end "ruleProblem"
194
195
196 // $ANTLR start "entryRuleStatement"
197 // InternalSolverLanguage.g:78:1: entryRuleStatement : ruleStatement EOF ;
198 public final void entryRuleStatement() throws RecognitionException {
199 try {
200 // InternalSolverLanguage.g:79:1: ( ruleStatement EOF )
201 // InternalSolverLanguage.g:80:1: ruleStatement EOF
202 {
203 before(grammarAccess.getStatementRule());
204 pushFollow(FOLLOW_1);
205 ruleStatement();
206
207 state._fsp--;
208
209 after(grammarAccess.getStatementRule());
210 match(input,EOF,FOLLOW_2);
211
212 }
213
214 }
215 catch (RecognitionException re) {
216 reportError(re);
217 recover(input,re);
218 }
219 finally {
220 }
221 return ;
222 }
223 // $ANTLR end "entryRuleStatement"
224
225
226 // $ANTLR start "ruleStatement"
227 // InternalSolverLanguage.g:87:1: ruleStatement : ( ( rule__Statement__Alternatives ) ) ;
228 public final void ruleStatement() throws RecognitionException {
229
230 int stackSize = keepStackSize();
231
232 try {
233 // InternalSolverLanguage.g:91:2: ( ( ( rule__Statement__Alternatives ) ) )
234 // InternalSolverLanguage.g:92:2: ( ( rule__Statement__Alternatives ) )
235 {
236 // InternalSolverLanguage.g:92:2: ( ( rule__Statement__Alternatives ) )
237 // InternalSolverLanguage.g:93:3: ( rule__Statement__Alternatives )
238 {
239 before(grammarAccess.getStatementAccess().getAlternatives());
240 // InternalSolverLanguage.g:94:3: ( rule__Statement__Alternatives )
241 // InternalSolverLanguage.g:94:4: rule__Statement__Alternatives
242 {
243 pushFollow(FOLLOW_2);
244 rule__Statement__Alternatives();
245
246 state._fsp--;
247
248
249 }
250
251 after(grammarAccess.getStatementAccess().getAlternatives());
252
253 }
254
255
256 }
257
258 }
259 catch (RecognitionException re) {
260 reportError(re);
261 recover(input,re);
262 }
263 finally {
264
265 restoreStackSize(stackSize);
266
267 }
268 return ;
269 }
270 // $ANTLR end "ruleStatement"
271
272
273 // $ANTLR start "entryRuleREALLiteral"
274 // InternalSolverLanguage.g:103:1: entryRuleREALLiteral : ruleREALLiteral EOF ;
275 public final void entryRuleREALLiteral() throws RecognitionException {
276 try {
277 // InternalSolverLanguage.g:104:1: ( ruleREALLiteral EOF )
278 // InternalSolverLanguage.g:105:1: ruleREALLiteral EOF
279 {
280 before(grammarAccess.getREALLiteralRule());
281 pushFollow(FOLLOW_1);
282 ruleREALLiteral();
283
284 state._fsp--;
285
286 after(grammarAccess.getREALLiteralRule());
287 match(input,EOF,FOLLOW_2);
288
289 }
290
291 }
292 catch (RecognitionException re) {
293 reportError(re);
294 recover(input,re);
295 }
296 finally {
297 }
298 return ;
299 }
300 // $ANTLR end "entryRuleREALLiteral"
301
302
303 // $ANTLR start "ruleREALLiteral"
304 // InternalSolverLanguage.g:112:1: ruleREALLiteral : ( ( rule__REALLiteral__Group__0 ) ) ;
305 public final void ruleREALLiteral() throws RecognitionException {
306
307 int stackSize = keepStackSize();
308
309 try {
310 // InternalSolverLanguage.g:116:2: ( ( ( rule__REALLiteral__Group__0 ) ) )
311 // InternalSolverLanguage.g:117:2: ( ( rule__REALLiteral__Group__0 ) )
312 {
313 // InternalSolverLanguage.g:117:2: ( ( rule__REALLiteral__Group__0 ) )
314 // InternalSolverLanguage.g:118:3: ( rule__REALLiteral__Group__0 )
315 {
316 before(grammarAccess.getREALLiteralAccess().getGroup());
317 // InternalSolverLanguage.g:119:3: ( rule__REALLiteral__Group__0 )
318 // InternalSolverLanguage.g:119:4: rule__REALLiteral__Group__0
319 {
320 pushFollow(FOLLOW_2);
321 rule__REALLiteral__Group__0();
322
323 state._fsp--;
324
325
326 }
327
328 after(grammarAccess.getREALLiteralAccess().getGroup());
329
330 }
331
332
333 }
334
335 }
336 catch (RecognitionException re) {
337 reportError(re);
338 recover(input,re);
339 }
340 finally {
341
342 restoreStackSize(stackSize);
343
344 }
345 return ;
346 }
347 // $ANTLR end "ruleREALLiteral"
348
349
350 // $ANTLR start "entryRuleINTLiteral"
351 // InternalSolverLanguage.g:128:1: entryRuleINTLiteral : ruleINTLiteral EOF ;
352 public final void entryRuleINTLiteral() throws RecognitionException {
353 try {
354 // InternalSolverLanguage.g:129:1: ( ruleINTLiteral EOF )
355 // InternalSolverLanguage.g:130:1: ruleINTLiteral EOF
356 {
357 before(grammarAccess.getINTLiteralRule());
358 pushFollow(FOLLOW_1);
359 ruleINTLiteral();
360
361 state._fsp--;
362
363 after(grammarAccess.getINTLiteralRule());
364 match(input,EOF,FOLLOW_2);
365
366 }
367
368 }
369 catch (RecognitionException re) {
370 reportError(re);
371 recover(input,re);
372 }
373 finally {
374 }
375 return ;
376 }
377 // $ANTLR end "entryRuleINTLiteral"
378
379
380 // $ANTLR start "ruleINTLiteral"
381 // InternalSolverLanguage.g:137:1: ruleINTLiteral : ( ( rule__INTLiteral__Group__0 ) ) ;
382 public final void ruleINTLiteral() throws RecognitionException {
383
384 int stackSize = keepStackSize();
385
386 try {
387 // InternalSolverLanguage.g:141:2: ( ( ( rule__INTLiteral__Group__0 ) ) )
388 // InternalSolverLanguage.g:142:2: ( ( rule__INTLiteral__Group__0 ) )
389 {
390 // InternalSolverLanguage.g:142:2: ( ( rule__INTLiteral__Group__0 ) )
391 // InternalSolverLanguage.g:143:3: ( rule__INTLiteral__Group__0 )
392 {
393 before(grammarAccess.getINTLiteralAccess().getGroup());
394 // InternalSolverLanguage.g:144:3: ( rule__INTLiteral__Group__0 )
395 // InternalSolverLanguage.g:144:4: rule__INTLiteral__Group__0
396 {
397 pushFollow(FOLLOW_2);
398 rule__INTLiteral__Group__0();
399
400 state._fsp--;
401
402
403 }
404
405 after(grammarAccess.getINTLiteralAccess().getGroup());
406
407 }
408
409
410 }
411
412 }
413 catch (RecognitionException re) {
414 reportError(re);
415 recover(input,re);
416 }
417 finally {
418
419 restoreStackSize(stackSize);
420
421 }
422 return ;
423 }
424 // $ANTLR end "ruleINTLiteral"
425
426
427 // $ANTLR start "entryRuleBooleanValue"
428 // InternalSolverLanguage.g:153:1: entryRuleBooleanValue : ruleBooleanValue EOF ;
429 public final void entryRuleBooleanValue() throws RecognitionException {
430 try {
431 // InternalSolverLanguage.g:154:1: ( ruleBooleanValue EOF )
432 // InternalSolverLanguage.g:155:1: ruleBooleanValue EOF
433 {
434 before(grammarAccess.getBooleanValueRule());
435 pushFollow(FOLLOW_1);
436 ruleBooleanValue();
437
438 state._fsp--;
439
440 after(grammarAccess.getBooleanValueRule());
441 match(input,EOF,FOLLOW_2);
442
443 }
444
445 }
446 catch (RecognitionException re) {
447 reportError(re);
448 recover(input,re);
449 }
450 finally {
451 }
452 return ;
453 }
454 // $ANTLR end "entryRuleBooleanValue"
455
456
457 // $ANTLR start "ruleBooleanValue"
458 // InternalSolverLanguage.g:162:1: ruleBooleanValue : ( ( rule__BooleanValue__Alternatives ) ) ;
459 public final void ruleBooleanValue() throws RecognitionException {
460
461 int stackSize = keepStackSize();
462
463 try {
464 // InternalSolverLanguage.g:166:2: ( ( ( rule__BooleanValue__Alternatives ) ) )
465 // InternalSolverLanguage.g:167:2: ( ( rule__BooleanValue__Alternatives ) )
466 {
467 // InternalSolverLanguage.g:167:2: ( ( rule__BooleanValue__Alternatives ) )
468 // InternalSolverLanguage.g:168:3: ( rule__BooleanValue__Alternatives )
469 {
470 before(grammarAccess.getBooleanValueAccess().getAlternatives());
471 // InternalSolverLanguage.g:169:3: ( rule__BooleanValue__Alternatives )
472 // InternalSolverLanguage.g:169:4: rule__BooleanValue__Alternatives
473 {
474 pushFollow(FOLLOW_2);
475 rule__BooleanValue__Alternatives();
476
477 state._fsp--;
478
479
480 }
481
482 after(grammarAccess.getBooleanValueAccess().getAlternatives());
483
484 }
485
486
487 }
488
489 }
490 catch (RecognitionException re) {
491 reportError(re);
492 recover(input,re);
493 }
494 finally {
495
496 restoreStackSize(stackSize);
497
498 }
499 return ;
500 }
501 // $ANTLR end "ruleBooleanValue"
502
503
504 // $ANTLR start "entryRuleTruthValue"
505 // InternalSolverLanguage.g:178:1: entryRuleTruthValue : ruleTruthValue EOF ;
506 public final void entryRuleTruthValue() throws RecognitionException {
507 try {
508 // InternalSolverLanguage.g:179:1: ( ruleTruthValue EOF )
509 // InternalSolverLanguage.g:180:1: ruleTruthValue EOF
510 {
511 before(grammarAccess.getTruthValueRule());
512 pushFollow(FOLLOW_1);
513 ruleTruthValue();
514
515 state._fsp--;
516
517 after(grammarAccess.getTruthValueRule());
518 match(input,EOF,FOLLOW_2);
519
520 }
521
522 }
523 catch (RecognitionException re) {
524 reportError(re);
525 recover(input,re);
526 }
527 finally {
528 }
529 return ;
530 }
531 // $ANTLR end "entryRuleTruthValue"
532
533
534 // $ANTLR start "ruleTruthValue"
535 // InternalSolverLanguage.g:187:1: ruleTruthValue : ( ( rule__TruthValue__Alternatives ) ) ;
536 public final void ruleTruthValue() throws RecognitionException {
537
538 int stackSize = keepStackSize();
539
540 try {
541 // InternalSolverLanguage.g:191:2: ( ( ( rule__TruthValue__Alternatives ) ) )
542 // InternalSolverLanguage.g:192:2: ( ( rule__TruthValue__Alternatives ) )
543 {
544 // InternalSolverLanguage.g:192:2: ( ( rule__TruthValue__Alternatives ) )
545 // InternalSolverLanguage.g:193:3: ( rule__TruthValue__Alternatives )
546 {
547 before(grammarAccess.getTruthValueAccess().getAlternatives());
548 // InternalSolverLanguage.g:194:3: ( rule__TruthValue__Alternatives )
549 // InternalSolverLanguage.g:194:4: rule__TruthValue__Alternatives
550 {
551 pushFollow(FOLLOW_2);
552 rule__TruthValue__Alternatives();
553
554 state._fsp--;
555
556
557 }
558
559 after(grammarAccess.getTruthValueAccess().getAlternatives());
560
561 }
562
563
564 }
565
566 }
567 catch (RecognitionException re) {
568 reportError(re);
569 recover(input,re);
570 }
571 finally {
572
573 restoreStackSize(stackSize);
574
575 }
576 return ;
577 }
578 // $ANTLR end "ruleTruthValue"
579
580
581 // $ANTLR start "entryRuleInterpretation"
582 // InternalSolverLanguage.g:203:1: entryRuleInterpretation : ruleInterpretation EOF ;
583 public final void entryRuleInterpretation() throws RecognitionException {
584 try {
585 // InternalSolverLanguage.g:204:1: ( ruleInterpretation EOF )
586 // InternalSolverLanguage.g:205:1: ruleInterpretation EOF
587 {
588 before(grammarAccess.getInterpretationRule());
589 pushFollow(FOLLOW_1);
590 ruleInterpretation();
591
592 state._fsp--;
593
594 after(grammarAccess.getInterpretationRule());
595 match(input,EOF,FOLLOW_2);
596
597 }
598
599 }
600 catch (RecognitionException re) {
601 reportError(re);
602 recover(input,re);
603 }
604 finally {
605 }
606 return ;
607 }
608 // $ANTLR end "entryRuleInterpretation"
609
610
611 // $ANTLR start "ruleInterpretation"
612 // InternalSolverLanguage.g:212:1: ruleInterpretation : ( ( rule__Interpretation__Alternatives ) ) ;
613 public final void ruleInterpretation() throws RecognitionException {
614
615 int stackSize = keepStackSize();
616
617 try {
618 // InternalSolverLanguage.g:216:2: ( ( ( rule__Interpretation__Alternatives ) ) )
619 // InternalSolverLanguage.g:217:2: ( ( rule__Interpretation__Alternatives ) )
620 {
621 // InternalSolverLanguage.g:217:2: ( ( rule__Interpretation__Alternatives ) )
622 // InternalSolverLanguage.g:218:3: ( rule__Interpretation__Alternatives )
623 {
624 before(grammarAccess.getInterpretationAccess().getAlternatives());
625 // InternalSolverLanguage.g:219:3: ( rule__Interpretation__Alternatives )
626 // InternalSolverLanguage.g:219:4: rule__Interpretation__Alternatives
627 {
628 pushFollow(FOLLOW_2);
629 rule__Interpretation__Alternatives();
630
631 state._fsp--;
632
633
634 }
635
636 after(grammarAccess.getInterpretationAccess().getAlternatives());
637
638 }
639
640
641 }
642
643 }
644 catch (RecognitionException re) {
645 reportError(re);
646 recover(input,re);
647 }
648 finally {
649
650 restoreStackSize(stackSize);
651
652 }
653 return ;
654 }
655 // $ANTLR end "ruleInterpretation"
656
657
658 // $ANTLR start "entryRuleBasicInterpretation"
659 // InternalSolverLanguage.g:228:1: entryRuleBasicInterpretation : ruleBasicInterpretation EOF ;
660 public final void entryRuleBasicInterpretation() throws RecognitionException {
661 try {
662 // InternalSolverLanguage.g:229:1: ( ruleBasicInterpretation EOF )
663 // InternalSolverLanguage.g:230:1: ruleBasicInterpretation EOF
664 {
665 before(grammarAccess.getBasicInterpretationRule());
666 pushFollow(FOLLOW_1);
667 ruleBasicInterpretation();
668
669 state._fsp--;
670
671 after(grammarAccess.getBasicInterpretationRule());
672 match(input,EOF,FOLLOW_2);
673
674 }
675
676 }
677 catch (RecognitionException re) {
678 reportError(re);
679 recover(input,re);
680 }
681 finally {
682 }
683 return ;
684 }
685 // $ANTLR end "entryRuleBasicInterpretation"
686
687
688 // $ANTLR start "ruleBasicInterpretation"
689 // InternalSolverLanguage.g:237:1: ruleBasicInterpretation : ( ( rule__BasicInterpretation__Group__0 ) ) ;
690 public final void ruleBasicInterpretation() throws RecognitionException {
691
692 int stackSize = keepStackSize();
693
694 try {
695 // InternalSolverLanguage.g:241:2: ( ( ( rule__BasicInterpretation__Group__0 ) ) )
696 // InternalSolverLanguage.g:242:2: ( ( rule__BasicInterpretation__Group__0 ) )
697 {
698 // InternalSolverLanguage.g:242:2: ( ( rule__BasicInterpretation__Group__0 ) )
699 // InternalSolverLanguage.g:243:3: ( rule__BasicInterpretation__Group__0 )
700 {
701 before(grammarAccess.getBasicInterpretationAccess().getGroup());
702 // InternalSolverLanguage.g:244:3: ( rule__BasicInterpretation__Group__0 )
703 // InternalSolverLanguage.g:244:4: rule__BasicInterpretation__Group__0
704 {
705 pushFollow(FOLLOW_2);
706 rule__BasicInterpretation__Group__0();
707
708 state._fsp--;
709
710
711 }
712
713 after(grammarAccess.getBasicInterpretationAccess().getGroup());
714
715 }
716
717
718 }
719
720 }
721 catch (RecognitionException re) {
722 reportError(re);
723 recover(input,re);
724 }
725 finally {
726
727 restoreStackSize(stackSize);
728
729 }
730 return ;
731 }
732 // $ANTLR end "ruleBasicInterpretation"
733
734
735 // $ANTLR start "entryRuleSymbol"
736 // InternalSolverLanguage.g:253:1: entryRuleSymbol : ruleSymbol EOF ;
737 public final void entryRuleSymbol() throws RecognitionException {
738 try {
739 // InternalSolverLanguage.g:254:1: ( ruleSymbol EOF )
740 // InternalSolverLanguage.g:255:1: ruleSymbol EOF
741 {
742 before(grammarAccess.getSymbolRule());
743 pushFollow(FOLLOW_1);
744 ruleSymbol();
745
746 state._fsp--;
747
748 after(grammarAccess.getSymbolRule());
749 match(input,EOF,FOLLOW_2);
750
751 }
752
753 }
754 catch (RecognitionException re) {
755 reportError(re);
756 recover(input,re);
757 }
758 finally {
759 }
760 return ;
761 }
762 // $ANTLR end "entryRuleSymbol"
763
764
765 // $ANTLR start "ruleSymbol"
766 // InternalSolverLanguage.g:262:1: ruleSymbol : ( ( rule__Symbol__Alternatives ) ) ;
767 public final void ruleSymbol() throws RecognitionException {
768
769 int stackSize = keepStackSize();
770
771 try {
772 // InternalSolverLanguage.g:266:2: ( ( ( rule__Symbol__Alternatives ) ) )
773 // InternalSolverLanguage.g:267:2: ( ( rule__Symbol__Alternatives ) )
774 {
775 // InternalSolverLanguage.g:267:2: ( ( rule__Symbol__Alternatives ) )
776 // InternalSolverLanguage.g:268:3: ( rule__Symbol__Alternatives )
777 {
778 before(grammarAccess.getSymbolAccess().getAlternatives());
779 // InternalSolverLanguage.g:269:3: ( rule__Symbol__Alternatives )
780 // InternalSolverLanguage.g:269:4: rule__Symbol__Alternatives
781 {
782 pushFollow(FOLLOW_2);
783 rule__Symbol__Alternatives();
784
785 state._fsp--;
786
787
788 }
789
790 after(grammarAccess.getSymbolAccess().getAlternatives());
791
792 }
793
794
795 }
796
797 }
798 catch (RecognitionException re) {
799 reportError(re);
800 recover(input,re);
801 }
802 finally {
803
804 restoreStackSize(stackSize);
805
806 }
807 return ;
808 }
809 // $ANTLR end "ruleSymbol"
810
811
812 // $ANTLR start "entryRuleModelSymbol"
813 // InternalSolverLanguage.g:278:1: entryRuleModelSymbol : ruleModelSymbol EOF ;
814 public final void entryRuleModelSymbol() throws RecognitionException {
815 try {
816 // InternalSolverLanguage.g:279:1: ( ruleModelSymbol EOF )
817 // InternalSolverLanguage.g:280:1: ruleModelSymbol EOF
818 {
819 before(grammarAccess.getModelSymbolRule());
820 pushFollow(FOLLOW_1);
821 ruleModelSymbol();
822
823 state._fsp--;
824
825 after(grammarAccess.getModelSymbolRule());
826 match(input,EOF,FOLLOW_2);
827
828 }
829
830 }
831 catch (RecognitionException re) {
832 reportError(re);
833 recover(input,re);
834 }
835 finally {
836 }
837 return ;
838 }
839 // $ANTLR end "entryRuleModelSymbol"
840
841
842 // $ANTLR start "ruleModelSymbol"
843 // InternalSolverLanguage.g:287:1: ruleModelSymbol : ( ( rule__ModelSymbol__NameAssignment ) ) ;
844 public final void ruleModelSymbol() throws RecognitionException {
845
846 int stackSize = keepStackSize();
847
848 try {
849 // InternalSolverLanguage.g:291:2: ( ( ( rule__ModelSymbol__NameAssignment ) ) )
850 // InternalSolverLanguage.g:292:2: ( ( rule__ModelSymbol__NameAssignment ) )
851 {
852 // InternalSolverLanguage.g:292:2: ( ( rule__ModelSymbol__NameAssignment ) )
853 // InternalSolverLanguage.g:293:3: ( rule__ModelSymbol__NameAssignment )
854 {
855 before(grammarAccess.getModelSymbolAccess().getNameAssignment());
856 // InternalSolverLanguage.g:294:3: ( rule__ModelSymbol__NameAssignment )
857 // InternalSolverLanguage.g:294:4: rule__ModelSymbol__NameAssignment
858 {
859 pushFollow(FOLLOW_2);
860 rule__ModelSymbol__NameAssignment();
861
862 state._fsp--;
863
864
865 }
866
867 after(grammarAccess.getModelSymbolAccess().getNameAssignment());
868
869 }
870
871
872 }
873
874 }
875 catch (RecognitionException re) {
876 reportError(re);
877 recover(input,re);
878 }
879 finally {
880
881 restoreStackSize(stackSize);
882
883 }
884 return ;
885 }
886 // $ANTLR end "ruleModelSymbol"
887
888
889 // $ANTLR start "entryRulePartialitySymbol"
890 // InternalSolverLanguage.g:303:1: entryRulePartialitySymbol : rulePartialitySymbol EOF ;
891 public final void entryRulePartialitySymbol() throws RecognitionException {
892 try {
893 // InternalSolverLanguage.g:304:1: ( rulePartialitySymbol EOF )
894 // InternalSolverLanguage.g:305:1: rulePartialitySymbol EOF
895 {
896 before(grammarAccess.getPartialitySymbolRule());
897 pushFollow(FOLLOW_1);
898 rulePartialitySymbol();
899
900 state._fsp--;
901
902 after(grammarAccess.getPartialitySymbolRule());
903 match(input,EOF,FOLLOW_2);
904
905 }
906
907 }
908 catch (RecognitionException re) {
909 reportError(re);
910 recover(input,re);
911 }
912 finally {
913 }
914 return ;
915 }
916 // $ANTLR end "entryRulePartialitySymbol"
917
918
919 // $ANTLR start "rulePartialitySymbol"
920 // InternalSolverLanguage.g:312:1: rulePartialitySymbol : ( ( rule__PartialitySymbol__Alternatives ) ) ;
921 public final void rulePartialitySymbol() throws RecognitionException {
922
923 int stackSize = keepStackSize();
924
925 try {
926 // InternalSolverLanguage.g:316:2: ( ( ( rule__PartialitySymbol__Alternatives ) ) )
927 // InternalSolverLanguage.g:317:2: ( ( rule__PartialitySymbol__Alternatives ) )
928 {
929 // InternalSolverLanguage.g:317:2: ( ( rule__PartialitySymbol__Alternatives ) )
930 // InternalSolverLanguage.g:318:3: ( rule__PartialitySymbol__Alternatives )
931 {
932 before(grammarAccess.getPartialitySymbolAccess().getAlternatives());
933 // InternalSolverLanguage.g:319:3: ( rule__PartialitySymbol__Alternatives )
934 // InternalSolverLanguage.g:319:4: rule__PartialitySymbol__Alternatives
935 {
936 pushFollow(FOLLOW_2);
937 rule__PartialitySymbol__Alternatives();
938
939 state._fsp--;
940
941
942 }
943
944 after(grammarAccess.getPartialitySymbolAccess().getAlternatives());
945
946 }
947
948
949 }
950
951 }
952 catch (RecognitionException re) {
953 reportError(re);
954 recover(input,re);
955 }
956 finally {
957
958 restoreStackSize(stackSize);
959
960 }
961 return ;
962 }
963 // $ANTLR end "rulePartialitySymbol"
964
965
966 // $ANTLR start "entryRuleExistSymbol"
967 // InternalSolverLanguage.g:328:1: entryRuleExistSymbol : ruleExistSymbol EOF ;
968 public final void entryRuleExistSymbol() throws RecognitionException {
969 try {
970 // InternalSolverLanguage.g:329:1: ( ruleExistSymbol EOF )
971 // InternalSolverLanguage.g:330:1: ruleExistSymbol EOF
972 {
973 before(grammarAccess.getExistSymbolRule());
974 pushFollow(FOLLOW_1);
975 ruleExistSymbol();
976
977 state._fsp--;
978
979 after(grammarAccess.getExistSymbolRule());
980 match(input,EOF,FOLLOW_2);
981
982 }
983
984 }
985 catch (RecognitionException re) {
986 reportError(re);
987 recover(input,re);
988 }
989 finally {
990 }
991 return ;
992 }
993 // $ANTLR end "entryRuleExistSymbol"
994
995
996 // $ANTLR start "ruleExistSymbol"
997 // InternalSolverLanguage.g:337:1: ruleExistSymbol : ( ( rule__ExistSymbol__Group__0 ) ) ;
998 public final void ruleExistSymbol() throws RecognitionException {
999
1000 int stackSize = keepStackSize();
1001
1002 try {
1003 // InternalSolverLanguage.g:341:2: ( ( ( rule__ExistSymbol__Group__0 ) ) )
1004 // InternalSolverLanguage.g:342:2: ( ( rule__ExistSymbol__Group__0 ) )
1005 {
1006 // InternalSolverLanguage.g:342:2: ( ( rule__ExistSymbol__Group__0 ) )
1007 // InternalSolverLanguage.g:343:3: ( rule__ExistSymbol__Group__0 )
1008 {
1009 before(grammarAccess.getExistSymbolAccess().getGroup());
1010 // InternalSolverLanguage.g:344:3: ( rule__ExistSymbol__Group__0 )
1011 // InternalSolverLanguage.g:344:4: rule__ExistSymbol__Group__0
1012 {
1013 pushFollow(FOLLOW_2);
1014 rule__ExistSymbol__Group__0();
1015
1016 state._fsp--;
1017
1018
1019 }
1020
1021 after(grammarAccess.getExistSymbolAccess().getGroup());
1022
1023 }
1024
1025
1026 }
1027
1028 }
1029 catch (RecognitionException re) {
1030 reportError(re);
1031 recover(input,re);
1032 }
1033 finally {
1034
1035 restoreStackSize(stackSize);
1036
1037 }
1038 return ;
1039 }
1040 // $ANTLR end "ruleExistSymbol"
1041
1042
1043 // $ANTLR start "entryRuleEqualsSymbol"
1044 // InternalSolverLanguage.g:353:1: entryRuleEqualsSymbol : ruleEqualsSymbol EOF ;
1045 public final void entryRuleEqualsSymbol() throws RecognitionException {
1046 try {
1047 // InternalSolverLanguage.g:354:1: ( ruleEqualsSymbol EOF )
1048 // InternalSolverLanguage.g:355:1: ruleEqualsSymbol EOF
1049 {
1050 before(grammarAccess.getEqualsSymbolRule());
1051 pushFollow(FOLLOW_1);
1052 ruleEqualsSymbol();
1053
1054 state._fsp--;
1055
1056 after(grammarAccess.getEqualsSymbolRule());
1057 match(input,EOF,FOLLOW_2);
1058
1059 }
1060
1061 }
1062 catch (RecognitionException re) {
1063 reportError(re);
1064 recover(input,re);
1065 }
1066 finally {
1067 }
1068 return ;
1069 }
1070 // $ANTLR end "entryRuleEqualsSymbol"
1071
1072
1073 // $ANTLR start "ruleEqualsSymbol"
1074 // InternalSolverLanguage.g:362:1: ruleEqualsSymbol : ( ( rule__EqualsSymbol__Group__0 ) ) ;
1075 public final void ruleEqualsSymbol() throws RecognitionException {
1076
1077 int stackSize = keepStackSize();
1078
1079 try {
1080 // InternalSolverLanguage.g:366:2: ( ( ( rule__EqualsSymbol__Group__0 ) ) )
1081 // InternalSolverLanguage.g:367:2: ( ( rule__EqualsSymbol__Group__0 ) )
1082 {
1083 // InternalSolverLanguage.g:367:2: ( ( rule__EqualsSymbol__Group__0 ) )
1084 // InternalSolverLanguage.g:368:3: ( rule__EqualsSymbol__Group__0 )
1085 {
1086 before(grammarAccess.getEqualsSymbolAccess().getGroup());
1087 // InternalSolverLanguage.g:369:3: ( rule__EqualsSymbol__Group__0 )
1088 // InternalSolverLanguage.g:369:4: rule__EqualsSymbol__Group__0
1089 {
1090 pushFollow(FOLLOW_2);
1091 rule__EqualsSymbol__Group__0();
1092
1093 state._fsp--;
1094
1095
1096 }
1097
1098 after(grammarAccess.getEqualsSymbolAccess().getGroup());
1099
1100 }
1101
1102
1103 }
1104
1105 }
1106 catch (RecognitionException re) {
1107 reportError(re);
1108 recover(input,re);
1109 }
1110 finally {
1111
1112 restoreStackSize(stackSize);
1113
1114 }
1115 return ;
1116 }
1117 // $ANTLR end "ruleEqualsSymbol"
1118
1119
1120 // $ANTLR start "entryRuleDataSymbol"
1121 // InternalSolverLanguage.g:378:1: entryRuleDataSymbol : ruleDataSymbol EOF ;
1122 public final void entryRuleDataSymbol() throws RecognitionException {
1123 try {
1124 // InternalSolverLanguage.g:379:1: ( ruleDataSymbol EOF )
1125 // InternalSolverLanguage.g:380:1: ruleDataSymbol EOF
1126 {
1127 before(grammarAccess.getDataSymbolRule());
1128 pushFollow(FOLLOW_1);
1129 ruleDataSymbol();
1130
1131 state._fsp--;
1132
1133 after(grammarAccess.getDataSymbolRule());
1134 match(input,EOF,FOLLOW_2);
1135
1136 }
1137
1138 }
1139 catch (RecognitionException re) {
1140 reportError(re);
1141 recover(input,re);
1142 }
1143 finally {
1144 }
1145 return ;
1146 }
1147 // $ANTLR end "entryRuleDataSymbol"
1148
1149
1150 // $ANTLR start "ruleDataSymbol"
1151 // InternalSolverLanguage.g:387:1: ruleDataSymbol : ( ( rule__DataSymbol__Alternatives ) ) ;
1152 public final void ruleDataSymbol() throws RecognitionException {
1153
1154 int stackSize = keepStackSize();
1155
1156 try {
1157 // InternalSolverLanguage.g:391:2: ( ( ( rule__DataSymbol__Alternatives ) ) )
1158 // InternalSolverLanguage.g:392:2: ( ( rule__DataSymbol__Alternatives ) )
1159 {
1160 // InternalSolverLanguage.g:392:2: ( ( rule__DataSymbol__Alternatives ) )
1161 // InternalSolverLanguage.g:393:3: ( rule__DataSymbol__Alternatives )
1162 {
1163 before(grammarAccess.getDataSymbolAccess().getAlternatives());
1164 // InternalSolverLanguage.g:394:3: ( rule__DataSymbol__Alternatives )
1165 // InternalSolverLanguage.g:394:4: rule__DataSymbol__Alternatives
1166 {
1167 pushFollow(FOLLOW_2);
1168 rule__DataSymbol__Alternatives();
1169
1170 state._fsp--;
1171
1172
1173 }
1174
1175 after(grammarAccess.getDataSymbolAccess().getAlternatives());
1176
1177 }
1178
1179
1180 }
1181
1182 }
1183 catch (RecognitionException re) {
1184 reportError(re);
1185 recover(input,re);
1186 }
1187 finally {
1188
1189 restoreStackSize(stackSize);
1190
1191 }
1192 return ;
1193 }
1194 // $ANTLR end "ruleDataSymbol"
1195
1196
1197 // $ANTLR start "entryRuleBooleanSymbol"
1198 // InternalSolverLanguage.g:403:1: entryRuleBooleanSymbol : ruleBooleanSymbol EOF ;
1199 public final void entryRuleBooleanSymbol() throws RecognitionException {
1200 try {
1201 // InternalSolverLanguage.g:404:1: ( ruleBooleanSymbol EOF )
1202 // InternalSolverLanguage.g:405:1: ruleBooleanSymbol EOF
1203 {
1204 before(grammarAccess.getBooleanSymbolRule());
1205 pushFollow(FOLLOW_1);
1206 ruleBooleanSymbol();
1207
1208 state._fsp--;
1209
1210 after(grammarAccess.getBooleanSymbolRule());
1211 match(input,EOF,FOLLOW_2);
1212
1213 }
1214
1215 }
1216 catch (RecognitionException re) {
1217 reportError(re);
1218 recover(input,re);
1219 }
1220 finally {
1221 }
1222 return ;
1223 }
1224 // $ANTLR end "entryRuleBooleanSymbol"
1225
1226
1227 // $ANTLR start "ruleBooleanSymbol"
1228 // InternalSolverLanguage.g:412:1: ruleBooleanSymbol : ( ( rule__BooleanSymbol__Group__0 ) ) ;
1229 public final void ruleBooleanSymbol() throws RecognitionException {
1230
1231 int stackSize = keepStackSize();
1232
1233 try {
1234 // InternalSolverLanguage.g:416:2: ( ( ( rule__BooleanSymbol__Group__0 ) ) )
1235 // InternalSolverLanguage.g:417:2: ( ( rule__BooleanSymbol__Group__0 ) )
1236 {
1237 // InternalSolverLanguage.g:417:2: ( ( rule__BooleanSymbol__Group__0 ) )
1238 // InternalSolverLanguage.g:418:3: ( rule__BooleanSymbol__Group__0 )
1239 {
1240 before(grammarAccess.getBooleanSymbolAccess().getGroup());
1241 // InternalSolverLanguage.g:419:3: ( rule__BooleanSymbol__Group__0 )
1242 // InternalSolverLanguage.g:419:4: rule__BooleanSymbol__Group__0
1243 {
1244 pushFollow(FOLLOW_2);
1245 rule__BooleanSymbol__Group__0();
1246
1247 state._fsp--;
1248
1249
1250 }
1251
1252 after(grammarAccess.getBooleanSymbolAccess().getGroup());
1253
1254 }
1255
1256
1257 }
1258
1259 }
1260 catch (RecognitionException re) {
1261 reportError(re);
1262 recover(input,re);
1263 }
1264 finally {
1265
1266 restoreStackSize(stackSize);
1267
1268 }
1269 return ;
1270 }
1271 // $ANTLR end "ruleBooleanSymbol"
1272
1273
1274 // $ANTLR start "entryRuleIntegerSymbol"
1275 // InternalSolverLanguage.g:428:1: entryRuleIntegerSymbol : ruleIntegerSymbol EOF ;
1276 public final void entryRuleIntegerSymbol() throws RecognitionException {
1277 try {
1278 // InternalSolverLanguage.g:429:1: ( ruleIntegerSymbol EOF )
1279 // InternalSolverLanguage.g:430:1: ruleIntegerSymbol EOF
1280 {
1281 before(grammarAccess.getIntegerSymbolRule());
1282 pushFollow(FOLLOW_1);
1283 ruleIntegerSymbol();
1284
1285 state._fsp--;
1286
1287 after(grammarAccess.getIntegerSymbolRule());
1288 match(input,EOF,FOLLOW_2);
1289
1290 }
1291
1292 }
1293 catch (RecognitionException re) {
1294 reportError(re);
1295 recover(input,re);
1296 }
1297 finally {
1298 }
1299 return ;
1300 }
1301 // $ANTLR end "entryRuleIntegerSymbol"
1302
1303
1304 // $ANTLR start "ruleIntegerSymbol"
1305 // InternalSolverLanguage.g:437:1: ruleIntegerSymbol : ( ( rule__IntegerSymbol__Group__0 ) ) ;
1306 public final void ruleIntegerSymbol() throws RecognitionException {
1307
1308 int stackSize = keepStackSize();
1309
1310 try {
1311 // InternalSolverLanguage.g:441:2: ( ( ( rule__IntegerSymbol__Group__0 ) ) )
1312 // InternalSolverLanguage.g:442:2: ( ( rule__IntegerSymbol__Group__0 ) )
1313 {
1314 // InternalSolverLanguage.g:442:2: ( ( rule__IntegerSymbol__Group__0 ) )
1315 // InternalSolverLanguage.g:443:3: ( rule__IntegerSymbol__Group__0 )
1316 {
1317 before(grammarAccess.getIntegerSymbolAccess().getGroup());
1318 // InternalSolverLanguage.g:444:3: ( rule__IntegerSymbol__Group__0 )
1319 // InternalSolverLanguage.g:444:4: rule__IntegerSymbol__Group__0
1320 {
1321 pushFollow(FOLLOW_2);
1322 rule__IntegerSymbol__Group__0();
1323
1324 state._fsp--;
1325
1326
1327 }
1328
1329 after(grammarAccess.getIntegerSymbolAccess().getGroup());
1330
1331 }
1332
1333
1334 }
1335
1336 }
1337 catch (RecognitionException re) {
1338 reportError(re);
1339 recover(input,re);
1340 }
1341 finally {
1342
1343 restoreStackSize(stackSize);
1344
1345 }
1346 return ;
1347 }
1348 // $ANTLR end "ruleIntegerSymbol"
1349
1350
1351 // $ANTLR start "entryRuleRealSymbol"
1352 // InternalSolverLanguage.g:453:1: entryRuleRealSymbol : ruleRealSymbol EOF ;
1353 public final void entryRuleRealSymbol() throws RecognitionException {
1354 try {
1355 // InternalSolverLanguage.g:454:1: ( ruleRealSymbol EOF )
1356 // InternalSolverLanguage.g:455:1: ruleRealSymbol EOF
1357 {
1358 before(grammarAccess.getRealSymbolRule());
1359 pushFollow(FOLLOW_1);
1360 ruleRealSymbol();
1361
1362 state._fsp--;
1363
1364 after(grammarAccess.getRealSymbolRule());
1365 match(input,EOF,FOLLOW_2);
1366
1367 }
1368
1369 }
1370 catch (RecognitionException re) {
1371 reportError(re);
1372 recover(input,re);
1373 }
1374 finally {
1375 }
1376 return ;
1377 }
1378 // $ANTLR end "entryRuleRealSymbol"
1379
1380
1381 // $ANTLR start "ruleRealSymbol"
1382 // InternalSolverLanguage.g:462:1: ruleRealSymbol : ( ( rule__RealSymbol__Group__0 ) ) ;
1383 public final void ruleRealSymbol() throws RecognitionException {
1384
1385 int stackSize = keepStackSize();
1386
1387 try {
1388 // InternalSolverLanguage.g:466:2: ( ( ( rule__RealSymbol__Group__0 ) ) )
1389 // InternalSolverLanguage.g:467:2: ( ( rule__RealSymbol__Group__0 ) )
1390 {
1391 // InternalSolverLanguage.g:467:2: ( ( rule__RealSymbol__Group__0 ) )
1392 // InternalSolverLanguage.g:468:3: ( rule__RealSymbol__Group__0 )
1393 {
1394 before(grammarAccess.getRealSymbolAccess().getGroup());
1395 // InternalSolverLanguage.g:469:3: ( rule__RealSymbol__Group__0 )
1396 // InternalSolverLanguage.g:469:4: rule__RealSymbol__Group__0
1397 {
1398 pushFollow(FOLLOW_2);
1399 rule__RealSymbol__Group__0();
1400
1401 state._fsp--;
1402
1403
1404 }
1405
1406 after(grammarAccess.getRealSymbolAccess().getGroup());
1407
1408 }
1409
1410
1411 }
1412
1413 }
1414 catch (RecognitionException re) {
1415 reportError(re);
1416 recover(input,re);
1417 }
1418 finally {
1419
1420 restoreStackSize(stackSize);
1421
1422 }
1423 return ;
1424 }
1425 // $ANTLR end "ruleRealSymbol"
1426
1427
1428 // $ANTLR start "entryRuleStringSymbol"
1429 // InternalSolverLanguage.g:478:1: entryRuleStringSymbol : ruleStringSymbol EOF ;
1430 public final void entryRuleStringSymbol() throws RecognitionException {
1431 try {
1432 // InternalSolverLanguage.g:479:1: ( ruleStringSymbol EOF )
1433 // InternalSolverLanguage.g:480:1: ruleStringSymbol EOF
1434 {
1435 before(grammarAccess.getStringSymbolRule());
1436 pushFollow(FOLLOW_1);
1437 ruleStringSymbol();
1438
1439 state._fsp--;
1440
1441 after(grammarAccess.getStringSymbolRule());
1442 match(input,EOF,FOLLOW_2);
1443
1444 }
1445
1446 }
1447 catch (RecognitionException re) {
1448 reportError(re);
1449 recover(input,re);
1450 }
1451 finally {
1452 }
1453 return ;
1454 }
1455 // $ANTLR end "entryRuleStringSymbol"
1456
1457
1458 // $ANTLR start "ruleStringSymbol"
1459 // InternalSolverLanguage.g:487:1: ruleStringSymbol : ( ( rule__StringSymbol__Group__0 ) ) ;
1460 public final void ruleStringSymbol() throws RecognitionException {
1461
1462 int stackSize = keepStackSize();
1463
1464 try {
1465 // InternalSolverLanguage.g:491:2: ( ( ( rule__StringSymbol__Group__0 ) ) )
1466 // InternalSolverLanguage.g:492:2: ( ( rule__StringSymbol__Group__0 ) )
1467 {
1468 // InternalSolverLanguage.g:492:2: ( ( rule__StringSymbol__Group__0 ) )
1469 // InternalSolverLanguage.g:493:3: ( rule__StringSymbol__Group__0 )
1470 {
1471 before(grammarAccess.getStringSymbolAccess().getGroup());
1472 // InternalSolverLanguage.g:494:3: ( rule__StringSymbol__Group__0 )
1473 // InternalSolverLanguage.g:494:4: rule__StringSymbol__Group__0
1474 {
1475 pushFollow(FOLLOW_2);
1476 rule__StringSymbol__Group__0();
1477
1478 state._fsp--;
1479
1480
1481 }
1482
1483 after(grammarAccess.getStringSymbolAccess().getGroup());
1484
1485 }
1486
1487
1488 }
1489
1490 }
1491 catch (RecognitionException re) {
1492 reportError(re);
1493 recover(input,re);
1494 }
1495 finally {
1496
1497 restoreStackSize(stackSize);
1498
1499 }
1500 return ;
1501 }
1502 // $ANTLR end "ruleStringSymbol"
1503
1504
1505 // $ANTLR start "entryRuleComplexObject"
1506 // InternalSolverLanguage.g:503:1: entryRuleComplexObject : ruleComplexObject EOF ;
1507 public final void entryRuleComplexObject() throws RecognitionException {
1508 try {
1509 // InternalSolverLanguage.g:504:1: ( ruleComplexObject EOF )
1510 // InternalSolverLanguage.g:505:1: ruleComplexObject EOF
1511 {
1512 before(grammarAccess.getComplexObjectRule());
1513 pushFollow(FOLLOW_1);
1514 ruleComplexObject();
1515
1516 state._fsp--;
1517
1518 after(grammarAccess.getComplexObjectRule());
1519 match(input,EOF,FOLLOW_2);
1520
1521 }
1522
1523 }
1524 catch (RecognitionException re) {
1525 reportError(re);
1526 recover(input,re);
1527 }
1528 finally {
1529 }
1530 return ;
1531 }
1532 // $ANTLR end "entryRuleComplexObject"
1533
1534
1535 // $ANTLR start "ruleComplexObject"
1536 // InternalSolverLanguage.g:512:1: ruleComplexObject : ( ( rule__ComplexObject__Alternatives ) ) ;
1537 public final void ruleComplexObject() throws RecognitionException {
1538
1539 int stackSize = keepStackSize();
1540
1541 try {
1542 // InternalSolverLanguage.g:516:2: ( ( ( rule__ComplexObject__Alternatives ) ) )
1543 // InternalSolverLanguage.g:517:2: ( ( rule__ComplexObject__Alternatives ) )
1544 {
1545 // InternalSolverLanguage.g:517:2: ( ( rule__ComplexObject__Alternatives ) )
1546 // InternalSolverLanguage.g:518:3: ( rule__ComplexObject__Alternatives )
1547 {
1548 before(grammarAccess.getComplexObjectAccess().getAlternatives());
1549 // InternalSolverLanguage.g:519:3: ( rule__ComplexObject__Alternatives )
1550 // InternalSolverLanguage.g:519:4: rule__ComplexObject__Alternatives
1551 {
1552 pushFollow(FOLLOW_2);
1553 rule__ComplexObject__Alternatives();
1554
1555 state._fsp--;
1556
1557
1558 }
1559
1560 after(grammarAccess.getComplexObjectAccess().getAlternatives());
1561
1562 }
1563
1564
1565 }
1566
1567 }
1568 catch (RecognitionException re) {
1569 reportError(re);
1570 recover(input,re);
1571 }
1572 finally {
1573
1574 restoreStackSize(stackSize);
1575
1576 }
1577 return ;
1578 }
1579 // $ANTLR end "ruleComplexObject"
1580
1581
1582 // $ANTLR start "entryRuleObject"
1583 // InternalSolverLanguage.g:528:1: entryRuleObject : ruleObject EOF ;
1584 public final void entryRuleObject() throws RecognitionException {
1585 try {
1586 // InternalSolverLanguage.g:529:1: ( ruleObject EOF )
1587 // InternalSolverLanguage.g:530:1: ruleObject EOF
1588 {
1589 before(grammarAccess.getObjectRule());
1590 pushFollow(FOLLOW_1);
1591 ruleObject();
1592
1593 state._fsp--;
1594
1595 after(grammarAccess.getObjectRule());
1596 match(input,EOF,FOLLOW_2);
1597
1598 }
1599
1600 }
1601 catch (RecognitionException re) {
1602 reportError(re);
1603 recover(input,re);
1604 }
1605 finally {
1606 }
1607 return ;
1608 }
1609 // $ANTLR end "entryRuleObject"
1610
1611
1612 // $ANTLR start "ruleObject"
1613 // InternalSolverLanguage.g:537:1: ruleObject : ( ( rule__Object__Alternatives ) ) ;
1614 public final void ruleObject() throws RecognitionException {
1615
1616 int stackSize = keepStackSize();
1617
1618 try {
1619 // InternalSolverLanguage.g:541:2: ( ( ( rule__Object__Alternatives ) ) )
1620 // InternalSolverLanguage.g:542:2: ( ( rule__Object__Alternatives ) )
1621 {
1622 // InternalSolverLanguage.g:542:2: ( ( rule__Object__Alternatives ) )
1623 // InternalSolverLanguage.g:543:3: ( rule__Object__Alternatives )
1624 {
1625 before(grammarAccess.getObjectAccess().getAlternatives());
1626 // InternalSolverLanguage.g:544:3: ( rule__Object__Alternatives )
1627 // InternalSolverLanguage.g:544:4: rule__Object__Alternatives
1628 {
1629 pushFollow(FOLLOW_2);
1630 rule__Object__Alternatives();
1631
1632 state._fsp--;
1633
1634
1635 }
1636
1637 after(grammarAccess.getObjectAccess().getAlternatives());
1638
1639 }
1640
1641
1642 }
1643
1644 }
1645 catch (RecognitionException re) {
1646 reportError(re);
1647 recover(input,re);
1648 }
1649 finally {
1650
1651 restoreStackSize(stackSize);
1652
1653 }
1654 return ;
1655 }
1656 // $ANTLR end "ruleObject"
1657
1658
1659 // $ANTLR start "entryRuleNamedObject"
1660 // InternalSolverLanguage.g:553:1: entryRuleNamedObject : ruleNamedObject EOF ;
1661 public final void entryRuleNamedObject() throws RecognitionException {
1662 try {
1663 // InternalSolverLanguage.g:554:1: ( ruleNamedObject EOF )
1664 // InternalSolverLanguage.g:555:1: ruleNamedObject EOF
1665 {
1666 before(grammarAccess.getNamedObjectRule());
1667 pushFollow(FOLLOW_1);
1668 ruleNamedObject();
1669
1670 state._fsp--;
1671
1672 after(grammarAccess.getNamedObjectRule());
1673 match(input,EOF,FOLLOW_2);
1674
1675 }
1676
1677 }
1678 catch (RecognitionException re) {
1679 reportError(re);
1680 recover(input,re);
1681 }
1682 finally {
1683 }
1684 return ;
1685 }
1686 // $ANTLR end "entryRuleNamedObject"
1687
1688
1689 // $ANTLR start "ruleNamedObject"
1690 // InternalSolverLanguage.g:562:1: ruleNamedObject : ( ( rule__NamedObject__Group__0 ) ) ;
1691 public final void ruleNamedObject() throws RecognitionException {
1692
1693 int stackSize = keepStackSize();
1694
1695 try {
1696 // InternalSolverLanguage.g:566:2: ( ( ( rule__NamedObject__Group__0 ) ) )
1697 // InternalSolverLanguage.g:567:2: ( ( rule__NamedObject__Group__0 ) )
1698 {
1699 // InternalSolverLanguage.g:567:2: ( ( rule__NamedObject__Group__0 ) )
1700 // InternalSolverLanguage.g:568:3: ( rule__NamedObject__Group__0 )
1701 {
1702 before(grammarAccess.getNamedObjectAccess().getGroup());
1703 // InternalSolverLanguage.g:569:3: ( rule__NamedObject__Group__0 )
1704 // InternalSolverLanguage.g:569:4: rule__NamedObject__Group__0
1705 {
1706 pushFollow(FOLLOW_2);
1707 rule__NamedObject__Group__0();
1708
1709 state._fsp--;
1710
1711
1712 }
1713
1714 after(grammarAccess.getNamedObjectAccess().getGroup());
1715
1716 }
1717
1718
1719 }
1720
1721 }
1722 catch (RecognitionException re) {
1723 reportError(re);
1724 recover(input,re);
1725 }
1726 finally {
1727
1728 restoreStackSize(stackSize);
1729
1730 }
1731 return ;
1732 }
1733 // $ANTLR end "ruleNamedObject"
1734
1735
1736 // $ANTLR start "entryRuleUnnamedObject"
1737 // InternalSolverLanguage.g:578:1: entryRuleUnnamedObject : ruleUnnamedObject EOF ;
1738 public final void entryRuleUnnamedObject() throws RecognitionException {
1739 try {
1740 // InternalSolverLanguage.g:579:1: ( ruleUnnamedObject EOF )
1741 // InternalSolverLanguage.g:580:1: ruleUnnamedObject EOF
1742 {
1743 before(grammarAccess.getUnnamedObjectRule());
1744 pushFollow(FOLLOW_1);
1745 ruleUnnamedObject();
1746
1747 state._fsp--;
1748
1749 after(grammarAccess.getUnnamedObjectRule());
1750 match(input,EOF,FOLLOW_2);
1751
1752 }
1753
1754 }
1755 catch (RecognitionException re) {
1756 reportError(re);
1757 recover(input,re);
1758 }
1759 finally {
1760 }
1761 return ;
1762 }
1763 // $ANTLR end "entryRuleUnnamedObject"
1764
1765
1766 // $ANTLR start "ruleUnnamedObject"
1767 // InternalSolverLanguage.g:587:1: ruleUnnamedObject : ( ( rule__UnnamedObject__NameAssignment ) ) ;
1768 public final void ruleUnnamedObject() throws RecognitionException {
1769
1770 int stackSize = keepStackSize();
1771
1772 try {
1773 // InternalSolverLanguage.g:591:2: ( ( ( rule__UnnamedObject__NameAssignment ) ) )
1774 // InternalSolverLanguage.g:592:2: ( ( rule__UnnamedObject__NameAssignment ) )
1775 {
1776 // InternalSolverLanguage.g:592:2: ( ( rule__UnnamedObject__NameAssignment ) )
1777 // InternalSolverLanguage.g:593:3: ( rule__UnnamedObject__NameAssignment )
1778 {
1779 before(grammarAccess.getUnnamedObjectAccess().getNameAssignment());
1780 // InternalSolverLanguage.g:594:3: ( rule__UnnamedObject__NameAssignment )
1781 // InternalSolverLanguage.g:594:4: rule__UnnamedObject__NameAssignment
1782 {
1783 pushFollow(FOLLOW_2);
1784 rule__UnnamedObject__NameAssignment();
1785
1786 state._fsp--;
1787
1788
1789 }
1790
1791 after(grammarAccess.getUnnamedObjectAccess().getNameAssignment());
1792
1793 }
1794
1795
1796 }
1797
1798 }
1799 catch (RecognitionException re) {
1800 reportError(re);
1801 recover(input,re);
1802 }
1803 finally {
1804
1805 restoreStackSize(stackSize);
1806
1807 }
1808 return ;
1809 }
1810 // $ANTLR end "ruleUnnamedObject"
1811
1812
1813 // $ANTLR start "entryRuleDataObject"
1814 // InternalSolverLanguage.g:603:1: entryRuleDataObject : ruleDataObject EOF ;
1815 public final void entryRuleDataObject() throws RecognitionException {
1816 try {
1817 // InternalSolverLanguage.g:604:1: ( ruleDataObject EOF )
1818 // InternalSolverLanguage.g:605:1: ruleDataObject EOF
1819 {
1820 before(grammarAccess.getDataObjectRule());
1821 pushFollow(FOLLOW_1);
1822 ruleDataObject();
1823
1824 state._fsp--;
1825
1826 after(grammarAccess.getDataObjectRule());
1827 match(input,EOF,FOLLOW_2);
1828
1829 }
1830
1831 }
1832 catch (RecognitionException re) {
1833 reportError(re);
1834 recover(input,re);
1835 }
1836 finally {
1837 }
1838 return ;
1839 }
1840 // $ANTLR end "entryRuleDataObject"
1841
1842
1843 // $ANTLR start "ruleDataObject"
1844 // InternalSolverLanguage.g:612:1: ruleDataObject : ( ( rule__DataObject__Alternatives ) ) ;
1845 public final void ruleDataObject() throws RecognitionException {
1846
1847 int stackSize = keepStackSize();
1848
1849 try {
1850 // InternalSolverLanguage.g:616:2: ( ( ( rule__DataObject__Alternatives ) ) )
1851 // InternalSolverLanguage.g:617:2: ( ( rule__DataObject__Alternatives ) )
1852 {
1853 // InternalSolverLanguage.g:617:2: ( ( rule__DataObject__Alternatives ) )
1854 // InternalSolverLanguage.g:618:3: ( rule__DataObject__Alternatives )
1855 {
1856 before(grammarAccess.getDataObjectAccess().getAlternatives());
1857 // InternalSolverLanguage.g:619:3: ( rule__DataObject__Alternatives )
1858 // InternalSolverLanguage.g:619:4: rule__DataObject__Alternatives
1859 {
1860 pushFollow(FOLLOW_2);
1861 rule__DataObject__Alternatives();
1862
1863 state._fsp--;
1864
1865
1866 }
1867
1868 after(grammarAccess.getDataObjectAccess().getAlternatives());
1869
1870 }
1871
1872
1873 }
1874
1875 }
1876 catch (RecognitionException re) {
1877 reportError(re);
1878 recover(input,re);
1879 }
1880 finally {
1881
1882 restoreStackSize(stackSize);
1883
1884 }
1885 return ;
1886 }
1887 // $ANTLR end "ruleDataObject"
1888
1889
1890 // $ANTLR start "entryRuleBooleanObject"
1891 // InternalSolverLanguage.g:628:1: entryRuleBooleanObject : ruleBooleanObject EOF ;
1892 public final void entryRuleBooleanObject() throws RecognitionException {
1893 try {
1894 // InternalSolverLanguage.g:629:1: ( ruleBooleanObject EOF )
1895 // InternalSolverLanguage.g:630:1: ruleBooleanObject EOF
1896 {
1897 before(grammarAccess.getBooleanObjectRule());
1898 pushFollow(FOLLOW_1);
1899 ruleBooleanObject();
1900
1901 state._fsp--;
1902
1903 after(grammarAccess.getBooleanObjectRule());
1904 match(input,EOF,FOLLOW_2);
1905
1906 }
1907
1908 }
1909 catch (RecognitionException re) {
1910 reportError(re);
1911 recover(input,re);
1912 }
1913 finally {
1914 }
1915 return ;
1916 }
1917 // $ANTLR end "entryRuleBooleanObject"
1918
1919
1920 // $ANTLR start "ruleBooleanObject"
1921 // InternalSolverLanguage.g:637:1: ruleBooleanObject : ( ( rule__BooleanObject__ValueAssignment ) ) ;
1922 public final void ruleBooleanObject() throws RecognitionException {
1923
1924 int stackSize = keepStackSize();
1925
1926 try {
1927 // InternalSolverLanguage.g:641:2: ( ( ( rule__BooleanObject__ValueAssignment ) ) )
1928 // InternalSolverLanguage.g:642:2: ( ( rule__BooleanObject__ValueAssignment ) )
1929 {
1930 // InternalSolverLanguage.g:642:2: ( ( rule__BooleanObject__ValueAssignment ) )
1931 // InternalSolverLanguage.g:643:3: ( rule__BooleanObject__ValueAssignment )
1932 {
1933 before(grammarAccess.getBooleanObjectAccess().getValueAssignment());
1934 // InternalSolverLanguage.g:644:3: ( rule__BooleanObject__ValueAssignment )
1935 // InternalSolverLanguage.g:644:4: rule__BooleanObject__ValueAssignment
1936 {
1937 pushFollow(FOLLOW_2);
1938 rule__BooleanObject__ValueAssignment();
1939
1940 state._fsp--;
1941
1942
1943 }
1944
1945 after(grammarAccess.getBooleanObjectAccess().getValueAssignment());
1946
1947 }
1948
1949
1950 }
1951
1952 }
1953 catch (RecognitionException re) {
1954 reportError(re);
1955 recover(input,re);
1956 }
1957 finally {
1958
1959 restoreStackSize(stackSize);
1960
1961 }
1962 return ;
1963 }
1964 // $ANTLR end "ruleBooleanObject"
1965
1966
1967 // $ANTLR start "entryRuleIntObject"
1968 // InternalSolverLanguage.g:653:1: entryRuleIntObject : ruleIntObject EOF ;
1969 public final void entryRuleIntObject() throws RecognitionException {
1970 try {
1971 // InternalSolverLanguage.g:654:1: ( ruleIntObject EOF )
1972 // InternalSolverLanguage.g:655:1: ruleIntObject EOF
1973 {
1974 before(grammarAccess.getIntObjectRule());
1975 pushFollow(FOLLOW_1);
1976 ruleIntObject();
1977
1978 state._fsp--;
1979
1980 after(grammarAccess.getIntObjectRule());
1981 match(input,EOF,FOLLOW_2);
1982
1983 }
1984
1985 }
1986 catch (RecognitionException re) {
1987 reportError(re);
1988 recover(input,re);
1989 }
1990 finally {
1991 }
1992 return ;
1993 }
1994 // $ANTLR end "entryRuleIntObject"
1995
1996
1997 // $ANTLR start "ruleIntObject"
1998 // InternalSolverLanguage.g:662:1: ruleIntObject : ( ( rule__IntObject__ValueAssignment ) ) ;
1999 public final void ruleIntObject() throws RecognitionException {
2000
2001 int stackSize = keepStackSize();
2002
2003 try {
2004 // InternalSolverLanguage.g:666:2: ( ( ( rule__IntObject__ValueAssignment ) ) )
2005 // InternalSolverLanguage.g:667:2: ( ( rule__IntObject__ValueAssignment ) )
2006 {
2007 // InternalSolverLanguage.g:667:2: ( ( rule__IntObject__ValueAssignment ) )
2008 // InternalSolverLanguage.g:668:3: ( rule__IntObject__ValueAssignment )
2009 {
2010 before(grammarAccess.getIntObjectAccess().getValueAssignment());
2011 // InternalSolverLanguage.g:669:3: ( rule__IntObject__ValueAssignment )
2012 // InternalSolverLanguage.g:669:4: rule__IntObject__ValueAssignment
2013 {
2014 pushFollow(FOLLOW_2);
2015 rule__IntObject__ValueAssignment();
2016
2017 state._fsp--;
2018
2019
2020 }
2021
2022 after(grammarAccess.getIntObjectAccess().getValueAssignment());
2023
2024 }
2025
2026
2027 }
2028
2029 }
2030 catch (RecognitionException re) {
2031 reportError(re);
2032 recover(input,re);
2033 }
2034 finally {
2035
2036 restoreStackSize(stackSize);
2037
2038 }
2039 return ;
2040 }
2041 // $ANTLR end "ruleIntObject"
2042
2043
2044 // $ANTLR start "entryRuleRealObject"
2045 // InternalSolverLanguage.g:678:1: entryRuleRealObject : ruleRealObject EOF ;
2046 public final void entryRuleRealObject() throws RecognitionException {
2047 try {
2048 // InternalSolverLanguage.g:679:1: ( ruleRealObject EOF )
2049 // InternalSolverLanguage.g:680:1: ruleRealObject EOF
2050 {
2051 before(grammarAccess.getRealObjectRule());
2052 pushFollow(FOLLOW_1);
2053 ruleRealObject();
2054
2055 state._fsp--;
2056
2057 after(grammarAccess.getRealObjectRule());
2058 match(input,EOF,FOLLOW_2);
2059
2060 }
2061
2062 }
2063 catch (RecognitionException re) {
2064 reportError(re);
2065 recover(input,re);
2066 }
2067 finally {
2068 }
2069 return ;
2070 }
2071 // $ANTLR end "entryRuleRealObject"
2072
2073
2074 // $ANTLR start "ruleRealObject"
2075 // InternalSolverLanguage.g:687:1: ruleRealObject : ( ( rule__RealObject__ValueAssignment ) ) ;
2076 public final void ruleRealObject() throws RecognitionException {
2077
2078 int stackSize = keepStackSize();
2079
2080 try {
2081 // InternalSolverLanguage.g:691:2: ( ( ( rule__RealObject__ValueAssignment ) ) )
2082 // InternalSolverLanguage.g:692:2: ( ( rule__RealObject__ValueAssignment ) )
2083 {
2084 // InternalSolverLanguage.g:692:2: ( ( rule__RealObject__ValueAssignment ) )
2085 // InternalSolverLanguage.g:693:3: ( rule__RealObject__ValueAssignment )
2086 {
2087 before(grammarAccess.getRealObjectAccess().getValueAssignment());
2088 // InternalSolverLanguage.g:694:3: ( rule__RealObject__ValueAssignment )
2089 // InternalSolverLanguage.g:694:4: rule__RealObject__ValueAssignment
2090 {
2091 pushFollow(FOLLOW_2);
2092 rule__RealObject__ValueAssignment();
2093
2094 state._fsp--;
2095
2096
2097 }
2098
2099 after(grammarAccess.getRealObjectAccess().getValueAssignment());
2100
2101 }
2102
2103
2104 }
2105
2106 }
2107 catch (RecognitionException re) {
2108 reportError(re);
2109 recover(input,re);
2110 }
2111 finally {
2112
2113 restoreStackSize(stackSize);
2114
2115 }
2116 return ;
2117 }
2118 // $ANTLR end "ruleRealObject"
2119
2120
2121 // $ANTLR start "entryRuleStringObject"
2122 // InternalSolverLanguage.g:703:1: entryRuleStringObject : ruleStringObject EOF ;
2123 public final void entryRuleStringObject() throws RecognitionException {
2124 try {
2125 // InternalSolverLanguage.g:704:1: ( ruleStringObject EOF )
2126 // InternalSolverLanguage.g:705:1: ruleStringObject EOF
2127 {
2128 before(grammarAccess.getStringObjectRule());
2129 pushFollow(FOLLOW_1);
2130 ruleStringObject();
2131
2132 state._fsp--;
2133
2134 after(grammarAccess.getStringObjectRule());
2135 match(input,EOF,FOLLOW_2);
2136
2137 }
2138
2139 }
2140 catch (RecognitionException re) {
2141 reportError(re);
2142 recover(input,re);
2143 }
2144 finally {
2145 }
2146 return ;
2147 }
2148 // $ANTLR end "entryRuleStringObject"
2149
2150
2151 // $ANTLR start "ruleStringObject"
2152 // InternalSolverLanguage.g:712:1: ruleStringObject : ( ( rule__StringObject__ValueAssignment ) ) ;
2153 public final void ruleStringObject() throws RecognitionException {
2154
2155 int stackSize = keepStackSize();
2156
2157 try {
2158 // InternalSolverLanguage.g:716:2: ( ( ( rule__StringObject__ValueAssignment ) ) )
2159 // InternalSolverLanguage.g:717:2: ( ( rule__StringObject__ValueAssignment ) )
2160 {
2161 // InternalSolverLanguage.g:717:2: ( ( rule__StringObject__ValueAssignment ) )
2162 // InternalSolverLanguage.g:718:3: ( rule__StringObject__ValueAssignment )
2163 {
2164 before(grammarAccess.getStringObjectAccess().getValueAssignment());
2165 // InternalSolverLanguage.g:719:3: ( rule__StringObject__ValueAssignment )
2166 // InternalSolverLanguage.g:719:4: rule__StringObject__ValueAssignment
2167 {
2168 pushFollow(FOLLOW_2);
2169 rule__StringObject__ValueAssignment();
2170
2171 state._fsp--;
2172
2173
2174 }
2175
2176 after(grammarAccess.getStringObjectAccess().getValueAssignment());
2177
2178 }
2179
2180
2181 }
2182
2183 }
2184 catch (RecognitionException re) {
2185 reportError(re);
2186 recover(input,re);
2187 }
2188 finally {
2189
2190 restoreStackSize(stackSize);
2191
2192 }
2193 return ;
2194 }
2195 // $ANTLR end "ruleStringObject"
2196
2197
2198 // $ANTLR start "entryRulePredicate"
2199 // InternalSolverLanguage.g:728:1: entryRulePredicate : rulePredicate EOF ;
2200 public final void entryRulePredicate() throws RecognitionException {
2201 try {
2202 // InternalSolverLanguage.g:729:1: ( rulePredicate EOF )
2203 // InternalSolverLanguage.g:730:1: rulePredicate EOF
2204 {
2205 before(grammarAccess.getPredicateRule());
2206 pushFollow(FOLLOW_1);
2207 rulePredicate();
2208
2209 state._fsp--;
2210
2211 after(grammarAccess.getPredicateRule());
2212 match(input,EOF,FOLLOW_2);
2213
2214 }
2215
2216 }
2217 catch (RecognitionException re) {
2218 reportError(re);
2219 recover(input,re);
2220 }
2221 finally {
2222 }
2223 return ;
2224 }
2225 // $ANTLR end "entryRulePredicate"
2226
2227
2228 // $ANTLR start "rulePredicate"
2229 // InternalSolverLanguage.g:737:1: rulePredicate : ( ( rule__Predicate__Alternatives ) ) ;
2230 public final void rulePredicate() throws RecognitionException {
2231
2232 int stackSize = keepStackSize();
2233
2234 try {
2235 // InternalSolverLanguage.g:741:2: ( ( ( rule__Predicate__Alternatives ) ) )
2236 // InternalSolverLanguage.g:742:2: ( ( rule__Predicate__Alternatives ) )
2237 {
2238 // InternalSolverLanguage.g:742:2: ( ( rule__Predicate__Alternatives ) )
2239 // InternalSolverLanguage.g:743:3: ( rule__Predicate__Alternatives )
2240 {
2241 before(grammarAccess.getPredicateAccess().getAlternatives());
2242 // InternalSolverLanguage.g:744:3: ( rule__Predicate__Alternatives )
2243 // InternalSolverLanguage.g:744:4: rule__Predicate__Alternatives
2244 {
2245 pushFollow(FOLLOW_2);
2246 rule__Predicate__Alternatives();
2247
2248 state._fsp--;
2249
2250
2251 }
2252
2253 after(grammarAccess.getPredicateAccess().getAlternatives());
2254
2255 }
2256
2257
2258 }
2259
2260 }
2261 catch (RecognitionException re) {
2262 reportError(re);
2263 recover(input,re);
2264 }
2265 finally {
2266
2267 restoreStackSize(stackSize);
2268
2269 }
2270 return ;
2271 }
2272 // $ANTLR end "rulePredicate"
2273
2274
2275 // $ANTLR start "entryRulePredicateSymbol"
2276 // InternalSolverLanguage.g:753:1: entryRulePredicateSymbol : rulePredicateSymbol EOF ;
2277 public final void entryRulePredicateSymbol() throws RecognitionException {
2278 try {
2279 // InternalSolverLanguage.g:754:1: ( rulePredicateSymbol EOF )
2280 // InternalSolverLanguage.g:755:1: rulePredicateSymbol EOF
2281 {
2282 before(grammarAccess.getPredicateSymbolRule());
2283 pushFollow(FOLLOW_1);
2284 rulePredicateSymbol();
2285
2286 state._fsp--;
2287
2288 after(grammarAccess.getPredicateSymbolRule());
2289 match(input,EOF,FOLLOW_2);
2290
2291 }
2292
2293 }
2294 catch (RecognitionException re) {
2295 reportError(re);
2296 recover(input,re);
2297 }
2298 finally {
2299 }
2300 return ;
2301 }
2302 // $ANTLR end "entryRulePredicateSymbol"
2303
2304
2305 // $ANTLR start "rulePredicateSymbol"
2306 // InternalSolverLanguage.g:762:1: rulePredicateSymbol : ( ( rule__PredicateSymbol__Group__0 ) ) ;
2307 public final void rulePredicateSymbol() throws RecognitionException {
2308
2309 int stackSize = keepStackSize();
2310
2311 try {
2312 // InternalSolverLanguage.g:766:2: ( ( ( rule__PredicateSymbol__Group__0 ) ) )
2313 // InternalSolverLanguage.g:767:2: ( ( rule__PredicateSymbol__Group__0 ) )
2314 {
2315 // InternalSolverLanguage.g:767:2: ( ( rule__PredicateSymbol__Group__0 ) )
2316 // InternalSolverLanguage.g:768:3: ( rule__PredicateSymbol__Group__0 )
2317 {
2318 before(grammarAccess.getPredicateSymbolAccess().getGroup());
2319 // InternalSolverLanguage.g:769:3: ( rule__PredicateSymbol__Group__0 )
2320 // InternalSolverLanguage.g:769:4: rule__PredicateSymbol__Group__0
2321 {
2322 pushFollow(FOLLOW_2);
2323 rule__PredicateSymbol__Group__0();
2324
2325 state._fsp--;
2326
2327
2328 }
2329
2330 after(grammarAccess.getPredicateSymbolAccess().getGroup());
2331
2332 }
2333
2334
2335 }
2336
2337 }
2338 catch (RecognitionException re) {
2339 reportError(re);
2340 recover(input,re);
2341 }
2342 finally {
2343
2344 restoreStackSize(stackSize);
2345
2346 }
2347 return ;
2348 }
2349 // $ANTLR end "rulePredicateSymbol"
2350
2351
2352 // $ANTLR start "entryRuleErrorPredicate"
2353 // InternalSolverLanguage.g:778:1: entryRuleErrorPredicate : ruleErrorPredicate EOF ;
2354 public final void entryRuleErrorPredicate() throws RecognitionException {
2355 try {
2356 // InternalSolverLanguage.g:779:1: ( ruleErrorPredicate EOF )
2357 // InternalSolverLanguage.g:780:1: ruleErrorPredicate EOF
2358 {
2359 before(grammarAccess.getErrorPredicateRule());
2360 pushFollow(FOLLOW_1);
2361 ruleErrorPredicate();
2362
2363 state._fsp--;
2364
2365 after(grammarAccess.getErrorPredicateRule());
2366 match(input,EOF,FOLLOW_2);
2367
2368 }
2369
2370 }
2371 catch (RecognitionException re) {
2372 reportError(re);
2373 recover(input,re);
2374 }
2375 finally {
2376 }
2377 return ;
2378 }
2379 // $ANTLR end "entryRuleErrorPredicate"
2380
2381
2382 // $ANTLR start "ruleErrorPredicate"
2383 // InternalSolverLanguage.g:787:1: ruleErrorPredicate : ( ( rule__ErrorPredicate__Group__0 ) ) ;
2384 public final void ruleErrorPredicate() throws RecognitionException {
2385
2386 int stackSize = keepStackSize();
2387
2388 try {
2389 // InternalSolverLanguage.g:791:2: ( ( ( rule__ErrorPredicate__Group__0 ) ) )
2390 // InternalSolverLanguage.g:792:2: ( ( rule__ErrorPredicate__Group__0 ) )
2391 {
2392 // InternalSolverLanguage.g:792:2: ( ( rule__ErrorPredicate__Group__0 ) )
2393 // InternalSolverLanguage.g:793:3: ( rule__ErrorPredicate__Group__0 )
2394 {
2395 before(grammarAccess.getErrorPredicateAccess().getGroup());
2396 // InternalSolverLanguage.g:794:3: ( rule__ErrorPredicate__Group__0 )
2397 // InternalSolverLanguage.g:794:4: rule__ErrorPredicate__Group__0
2398 {
2399 pushFollow(FOLLOW_2);
2400 rule__ErrorPredicate__Group__0();
2401
2402 state._fsp--;
2403
2404
2405 }
2406
2407 after(grammarAccess.getErrorPredicateAccess().getGroup());
2408
2409 }
2410
2411
2412 }
2413
2414 }
2415 catch (RecognitionException re) {
2416 reportError(re);
2417 recover(input,re);
2418 }
2419 finally {
2420
2421 restoreStackSize(stackSize);
2422
2423 }
2424 return ;
2425 }
2426 // $ANTLR end "ruleErrorPredicate"
2427
2428
2429 // $ANTLR start "entryRuleParameter"
2430 // InternalSolverLanguage.g:803:1: entryRuleParameter : ruleParameter EOF ;
2431 public final void entryRuleParameter() throws RecognitionException {
2432 try {
2433 // InternalSolverLanguage.g:804:1: ( ruleParameter EOF )
2434 // InternalSolverLanguage.g:805:1: ruleParameter EOF
2435 {
2436 before(grammarAccess.getParameterRule());
2437 pushFollow(FOLLOW_1);
2438 ruleParameter();
2439
2440 state._fsp--;
2441
2442 after(grammarAccess.getParameterRule());
2443 match(input,EOF,FOLLOW_2);
2444
2445 }
2446
2447 }
2448 catch (RecognitionException re) {
2449 reportError(re);
2450 recover(input,re);
2451 }
2452 finally {
2453 }
2454 return ;
2455 }
2456 // $ANTLR end "entryRuleParameter"
2457
2458
2459 // $ANTLR start "ruleParameter"
2460 // InternalSolverLanguage.g:812:1: ruleParameter : ( ( rule__Parameter__Group__0 ) ) ;
2461 public final void ruleParameter() throws RecognitionException {
2462
2463 int stackSize = keepStackSize();
2464
2465 try {
2466 // InternalSolverLanguage.g:816:2: ( ( ( rule__Parameter__Group__0 ) ) )
2467 // InternalSolverLanguage.g:817:2: ( ( rule__Parameter__Group__0 ) )
2468 {
2469 // InternalSolverLanguage.g:817:2: ( ( rule__Parameter__Group__0 ) )
2470 // InternalSolverLanguage.g:818:3: ( rule__Parameter__Group__0 )
2471 {
2472 before(grammarAccess.getParameterAccess().getGroup());
2473 // InternalSolverLanguage.g:819:3: ( rule__Parameter__Group__0 )
2474 // InternalSolverLanguage.g:819:4: rule__Parameter__Group__0
2475 {
2476 pushFollow(FOLLOW_2);
2477 rule__Parameter__Group__0();
2478
2479 state._fsp--;
2480
2481
2482 }
2483
2484 after(grammarAccess.getParameterAccess().getGroup());
2485
2486 }
2487
2488
2489 }
2490
2491 }
2492 catch (RecognitionException re) {
2493 reportError(re);
2494 recover(input,re);
2495 }
2496 finally {
2497
2498 restoreStackSize(stackSize);
2499
2500 }
2501 return ;
2502 }
2503 // $ANTLR end "ruleParameter"
2504
2505
2506 // $ANTLR start "entryRulePatternBody"
2507 // InternalSolverLanguage.g:828:1: entryRulePatternBody : rulePatternBody EOF ;
2508 public final void entryRulePatternBody() throws RecognitionException {
2509 try {
2510 // InternalSolverLanguage.g:829:1: ( rulePatternBody EOF )
2511 // InternalSolverLanguage.g:830:1: rulePatternBody EOF
2512 {
2513 before(grammarAccess.getPatternBodyRule());
2514 pushFollow(FOLLOW_1);
2515 rulePatternBody();
2516
2517 state._fsp--;
2518
2519 after(grammarAccess.getPatternBodyRule());
2520 match(input,EOF,FOLLOW_2);
2521
2522 }
2523
2524 }
2525 catch (RecognitionException re) {
2526 reportError(re);
2527 recover(input,re);
2528 }
2529 finally {
2530 }
2531 return ;
2532 }
2533 // $ANTLR end "entryRulePatternBody"
2534
2535
2536 // $ANTLR start "rulePatternBody"
2537 // InternalSolverLanguage.g:837:1: rulePatternBody : ( ( rule__PatternBody__Group__0 ) ) ;
2538 public final void rulePatternBody() throws RecognitionException {
2539
2540 int stackSize = keepStackSize();
2541
2542 try {
2543 // InternalSolverLanguage.g:841:2: ( ( ( rule__PatternBody__Group__0 ) ) )
2544 // InternalSolverLanguage.g:842:2: ( ( rule__PatternBody__Group__0 ) )
2545 {
2546 // InternalSolverLanguage.g:842:2: ( ( rule__PatternBody__Group__0 ) )
2547 // InternalSolverLanguage.g:843:3: ( rule__PatternBody__Group__0 )
2548 {
2549 before(grammarAccess.getPatternBodyAccess().getGroup());
2550 // InternalSolverLanguage.g:844:3: ( rule__PatternBody__Group__0 )
2551 // InternalSolverLanguage.g:844:4: rule__PatternBody__Group__0
2552 {
2553 pushFollow(FOLLOW_2);
2554 rule__PatternBody__Group__0();
2555
2556 state._fsp--;
2557
2558
2559 }
2560
2561 after(grammarAccess.getPatternBodyAccess().getGroup());
2562
2563 }
2564
2565
2566 }
2567
2568 }
2569 catch (RecognitionException re) {
2570 reportError(re);
2571 recover(input,re);
2572 }
2573 finally {
2574
2575 restoreStackSize(stackSize);
2576
2577 }
2578 return ;
2579 }
2580 // $ANTLR end "rulePatternBody"
2581
2582
2583 // $ANTLR start "entryRulePolarity"
2584 // InternalSolverLanguage.g:853:1: entryRulePolarity : rulePolarity EOF ;
2585 public final void entryRulePolarity() throws RecognitionException {
2586 try {
2587 // InternalSolverLanguage.g:854:1: ( rulePolarity EOF )
2588 // InternalSolverLanguage.g:855:1: rulePolarity EOF
2589 {
2590 before(grammarAccess.getPolarityRule());
2591 pushFollow(FOLLOW_1);
2592 rulePolarity();
2593
2594 state._fsp--;
2595
2596 after(grammarAccess.getPolarityRule());
2597 match(input,EOF,FOLLOW_2);
2598
2599 }
2600
2601 }
2602 catch (RecognitionException re) {
2603 reportError(re);
2604 recover(input,re);
2605 }
2606 finally {
2607 }
2608 return ;
2609 }
2610 // $ANTLR end "entryRulePolarity"
2611
2612
2613 // $ANTLR start "rulePolarity"
2614 // InternalSolverLanguage.g:862:1: rulePolarity : ( ( rule__Polarity__Alternatives ) ) ;
2615 public final void rulePolarity() throws RecognitionException {
2616
2617 int stackSize = keepStackSize();
2618
2619 try {
2620 // InternalSolverLanguage.g:866:2: ( ( ( rule__Polarity__Alternatives ) ) )
2621 // InternalSolverLanguage.g:867:2: ( ( rule__Polarity__Alternatives ) )
2622 {
2623 // InternalSolverLanguage.g:867:2: ( ( rule__Polarity__Alternatives ) )
2624 // InternalSolverLanguage.g:868:3: ( rule__Polarity__Alternatives )
2625 {
2626 before(grammarAccess.getPolarityAccess().getAlternatives());
2627 // InternalSolverLanguage.g:869:3: ( rule__Polarity__Alternatives )
2628 // InternalSolverLanguage.g:869:4: rule__Polarity__Alternatives
2629 {
2630 pushFollow(FOLLOW_2);
2631 rule__Polarity__Alternatives();
2632
2633 state._fsp--;
2634
2635
2636 }
2637
2638 after(grammarAccess.getPolarityAccess().getAlternatives());
2639
2640 }
2641
2642
2643 }
2644
2645 }
2646 catch (RecognitionException re) {
2647 reportError(re);
2648 recover(input,re);
2649 }
2650 finally {
2651
2652 restoreStackSize(stackSize);
2653
2654 }
2655 return ;
2656 }
2657 // $ANTLR end "rulePolarity"
2658
2659
2660 // $ANTLR start "entryRuleConstraint"
2661 // InternalSolverLanguage.g:878:1: entryRuleConstraint : ruleConstraint EOF ;
2662 public final void entryRuleConstraint() throws RecognitionException {
2663 try {
2664 // InternalSolverLanguage.g:879:1: ( ruleConstraint EOF )
2665 // InternalSolverLanguage.g:880:1: ruleConstraint EOF
2666 {
2667 before(grammarAccess.getConstraintRule());
2668 pushFollow(FOLLOW_1);
2669 ruleConstraint();
2670
2671 state._fsp--;
2672
2673 after(grammarAccess.getConstraintRule());
2674 match(input,EOF,FOLLOW_2);
2675
2676 }
2677
2678 }
2679 catch (RecognitionException re) {
2680 reportError(re);
2681 recover(input,re);
2682 }
2683 finally {
2684 }
2685 return ;
2686 }
2687 // $ANTLR end "entryRuleConstraint"
2688
2689
2690 // $ANTLR start "ruleConstraint"
2691 // InternalSolverLanguage.g:887:1: ruleConstraint : ( ( rule__Constraint__Group__0 ) ) ;
2692 public final void ruleConstraint() throws RecognitionException {
2693
2694 int stackSize = keepStackSize();
2695
2696 try {
2697 // InternalSolverLanguage.g:891:2: ( ( ( rule__Constraint__Group__0 ) ) )
2698 // InternalSolverLanguage.g:892:2: ( ( rule__Constraint__Group__0 ) )
2699 {
2700 // InternalSolverLanguage.g:892:2: ( ( rule__Constraint__Group__0 ) )
2701 // InternalSolverLanguage.g:893:3: ( rule__Constraint__Group__0 )
2702 {
2703 before(grammarAccess.getConstraintAccess().getGroup());
2704 // InternalSolverLanguage.g:894:3: ( rule__Constraint__Group__0 )
2705 // InternalSolverLanguage.g:894:4: rule__Constraint__Group__0
2706 {
2707 pushFollow(FOLLOW_2);
2708 rule__Constraint__Group__0();
2709
2710 state._fsp--;
2711
2712
2713 }
2714
2715 after(grammarAccess.getConstraintAccess().getGroup());
2716
2717 }
2718
2719
2720 }
2721
2722 }
2723 catch (RecognitionException re) {
2724 reportError(re);
2725 recover(input,re);
2726 }
2727 finally {
2728
2729 restoreStackSize(stackSize);
2730
2731 }
2732 return ;
2733 }
2734 // $ANTLR end "ruleConstraint"
2735
2736
2737 // $ANTLR start "entryRuleClosureType"
2738 // InternalSolverLanguage.g:903:1: entryRuleClosureType : ruleClosureType EOF ;
2739 public final void entryRuleClosureType() throws RecognitionException {
2740 try {
2741 // InternalSolverLanguage.g:904:1: ( ruleClosureType EOF )
2742 // InternalSolverLanguage.g:905:1: ruleClosureType EOF
2743 {
2744 before(grammarAccess.getClosureTypeRule());
2745 pushFollow(FOLLOW_1);
2746 ruleClosureType();
2747
2748 state._fsp--;
2749
2750 after(grammarAccess.getClosureTypeRule());
2751 match(input,EOF,FOLLOW_2);
2752
2753 }
2754
2755 }
2756 catch (RecognitionException re) {
2757 reportError(re);
2758 recover(input,re);
2759 }
2760 finally {
2761 }
2762 return ;
2763 }
2764 // $ANTLR end "entryRuleClosureType"
2765
2766
2767 // $ANTLR start "ruleClosureType"
2768 // InternalSolverLanguage.g:912:1: ruleClosureType : ( ( rule__ClosureType__Alternatives ) ) ;
2769 public final void ruleClosureType() throws RecognitionException {
2770
2771 int stackSize = keepStackSize();
2772
2773 try {
2774 // InternalSolverLanguage.g:916:2: ( ( ( rule__ClosureType__Alternatives ) ) )
2775 // InternalSolverLanguage.g:917:2: ( ( rule__ClosureType__Alternatives ) )
2776 {
2777 // InternalSolverLanguage.g:917:2: ( ( rule__ClosureType__Alternatives ) )
2778 // InternalSolverLanguage.g:918:3: ( rule__ClosureType__Alternatives )
2779 {
2780 before(grammarAccess.getClosureTypeAccess().getAlternatives());
2781 // InternalSolverLanguage.g:919:3: ( rule__ClosureType__Alternatives )
2782 // InternalSolverLanguage.g:919:4: rule__ClosureType__Alternatives
2783 {
2784 pushFollow(FOLLOW_2);
2785 rule__ClosureType__Alternatives();
2786
2787 state._fsp--;
2788
2789
2790 }
2791
2792 after(grammarAccess.getClosureTypeAccess().getAlternatives());
2793
2794 }
2795
2796
2797 }
2798
2799 }
2800 catch (RecognitionException re) {
2801 reportError(re);
2802 recover(input,re);
2803 }
2804 finally {
2805
2806 restoreStackSize(stackSize);
2807
2808 }
2809 return ;
2810 }
2811 // $ANTLR end "ruleClosureType"
2812
2813
2814 // $ANTLR start "entryRuleLiteral"
2815 // InternalSolverLanguage.g:928:1: entryRuleLiteral : ruleLiteral EOF ;
2816 public final void entryRuleLiteral() throws RecognitionException {
2817 try {
2818 // InternalSolverLanguage.g:929:1: ( ruleLiteral EOF )
2819 // InternalSolverLanguage.g:930:1: ruleLiteral EOF
2820 {
2821 before(grammarAccess.getLiteralRule());
2822 pushFollow(FOLLOW_1);
2823 ruleLiteral();
2824
2825 state._fsp--;
2826
2827 after(grammarAccess.getLiteralRule());
2828 match(input,EOF,FOLLOW_2);
2829
2830 }
2831
2832 }
2833 catch (RecognitionException re) {
2834 reportError(re);
2835 recover(input,re);
2836 }
2837 finally {
2838 }
2839 return ;
2840 }
2841 // $ANTLR end "entryRuleLiteral"
2842
2843
2844 // $ANTLR start "ruleLiteral"
2845 // InternalSolverLanguage.g:937:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ;
2846 public final void ruleLiteral() throws RecognitionException {
2847
2848 int stackSize = keepStackSize();
2849
2850 try {
2851 // InternalSolverLanguage.g:941:2: ( ( ( rule__Literal__Alternatives ) ) )
2852 // InternalSolverLanguage.g:942:2: ( ( rule__Literal__Alternatives ) )
2853 {
2854 // InternalSolverLanguage.g:942:2: ( ( rule__Literal__Alternatives ) )
2855 // InternalSolverLanguage.g:943:3: ( rule__Literal__Alternatives )
2856 {
2857 before(grammarAccess.getLiteralAccess().getAlternatives());
2858 // InternalSolverLanguage.g:944:3: ( rule__Literal__Alternatives )
2859 // InternalSolverLanguage.g:944:4: rule__Literal__Alternatives
2860 {
2861 pushFollow(FOLLOW_2);
2862 rule__Literal__Alternatives();
2863
2864 state._fsp--;
2865
2866
2867 }
2868
2869 after(grammarAccess.getLiteralAccess().getAlternatives());
2870
2871 }
2872
2873
2874 }
2875
2876 }
2877 catch (RecognitionException re) {
2878 reportError(re);
2879 recover(input,re);
2880 }
2881 finally {
2882
2883 restoreStackSize(stackSize);
2884
2885 }
2886 return ;
2887 }
2888 // $ANTLR end "ruleLiteral"
2889
2890
2891 // $ANTLR start "entryRuleVariable"
2892 // InternalSolverLanguage.g:953:1: entryRuleVariable : ruleVariable EOF ;
2893 public final void entryRuleVariable() throws RecognitionException {
2894 try {
2895 // InternalSolverLanguage.g:954:1: ( ruleVariable EOF )
2896 // InternalSolverLanguage.g:955:1: ruleVariable EOF
2897 {
2898 before(grammarAccess.getVariableRule());
2899 pushFollow(FOLLOW_1);
2900 ruleVariable();
2901
2902 state._fsp--;
2903
2904 after(grammarAccess.getVariableRule());
2905 match(input,EOF,FOLLOW_2);
2906
2907 }
2908
2909 }
2910 catch (RecognitionException re) {
2911 reportError(re);
2912 recover(input,re);
2913 }
2914 finally {
2915 }
2916 return ;
2917 }
2918 // $ANTLR end "entryRuleVariable"
2919
2920
2921 // $ANTLR start "ruleVariable"
2922 // InternalSolverLanguage.g:962:1: ruleVariable : ( ( rule__Variable__NameAssignment ) ) ;
2923 public final void ruleVariable() throws RecognitionException {
2924
2925 int stackSize = keepStackSize();
2926
2927 try {
2928 // InternalSolverLanguage.g:966:2: ( ( ( rule__Variable__NameAssignment ) ) )
2929 // InternalSolverLanguage.g:967:2: ( ( rule__Variable__NameAssignment ) )
2930 {
2931 // InternalSolverLanguage.g:967:2: ( ( rule__Variable__NameAssignment ) )
2932 // InternalSolverLanguage.g:968:3: ( rule__Variable__NameAssignment )
2933 {
2934 before(grammarAccess.getVariableAccess().getNameAssignment());
2935 // InternalSolverLanguage.g:969:3: ( rule__Variable__NameAssignment )
2936 // InternalSolverLanguage.g:969:4: rule__Variable__NameAssignment
2937 {
2938 pushFollow(FOLLOW_2);
2939 rule__Variable__NameAssignment();
2940
2941 state._fsp--;
2942
2943
2944 }
2945
2946 after(grammarAccess.getVariableAccess().getNameAssignment());
2947
2948 }
2949
2950
2951 }
2952
2953 }
2954 catch (RecognitionException re) {
2955 reportError(re);
2956 recover(input,re);
2957 }
2958 finally {
2959
2960 restoreStackSize(stackSize);
2961
2962 }
2963 return ;
2964 }
2965 // $ANTLR end "ruleVariable"
2966
2967
2968 // $ANTLR start "entryRuleAllInstances"
2969 // InternalSolverLanguage.g:978:1: entryRuleAllInstances : ruleAllInstances EOF ;
2970 public final void entryRuleAllInstances() throws RecognitionException {
2971 try {
2972 // InternalSolverLanguage.g:979:1: ( ruleAllInstances EOF )
2973 // InternalSolverLanguage.g:980:1: ruleAllInstances EOF
2974 {
2975 before(grammarAccess.getAllInstancesRule());
2976 pushFollow(FOLLOW_1);
2977 ruleAllInstances();
2978
2979 state._fsp--;
2980
2981 after(grammarAccess.getAllInstancesRule());
2982 match(input,EOF,FOLLOW_2);
2983
2984 }
2985
2986 }
2987 catch (RecognitionException re) {
2988 reportError(re);
2989 recover(input,re);
2990 }
2991 finally {
2992 }
2993 return ;
2994 }
2995 // $ANTLR end "entryRuleAllInstances"
2996
2997
2998 // $ANTLR start "ruleAllInstances"
2999 // InternalSolverLanguage.g:987:1: ruleAllInstances : ( ( rule__AllInstances__Group__0 ) ) ;
3000 public final void ruleAllInstances() throws RecognitionException {
3001
3002 int stackSize = keepStackSize();
3003
3004 try {
3005 // InternalSolverLanguage.g:991:2: ( ( ( rule__AllInstances__Group__0 ) ) )
3006 // InternalSolverLanguage.g:992:2: ( ( rule__AllInstances__Group__0 ) )
3007 {
3008 // InternalSolverLanguage.g:992:2: ( ( rule__AllInstances__Group__0 ) )
3009 // InternalSolverLanguage.g:993:3: ( rule__AllInstances__Group__0 )
3010 {
3011 before(grammarAccess.getAllInstancesAccess().getGroup());
3012 // InternalSolverLanguage.g:994:3: ( rule__AllInstances__Group__0 )
3013 // InternalSolverLanguage.g:994:4: rule__AllInstances__Group__0
3014 {
3015 pushFollow(FOLLOW_2);
3016 rule__AllInstances__Group__0();
3017
3018 state._fsp--;
3019
3020
3021 }
3022
3023 after(grammarAccess.getAllInstancesAccess().getGroup());
3024
3025 }
3026
3027
3028 }
3029
3030 }
3031 catch (RecognitionException re) {
3032 reportError(re);
3033 recover(input,re);
3034 }
3035 finally {
3036
3037 restoreStackSize(stackSize);
3038
3039 }
3040 return ;
3041 }
3042 // $ANTLR end "ruleAllInstances"
3043
3044
3045 // $ANTLR start "entryRuleAllObjects"
3046 // InternalSolverLanguage.g:1003:1: entryRuleAllObjects : ruleAllObjects EOF ;
3047 public final void entryRuleAllObjects() throws RecognitionException {
3048 try {
3049 // InternalSolverLanguage.g:1004:1: ( ruleAllObjects EOF )
3050 // InternalSolverLanguage.g:1005:1: ruleAllObjects EOF
3051 {
3052 before(grammarAccess.getAllObjectsRule());
3053 pushFollow(FOLLOW_1);
3054 ruleAllObjects();
3055
3056 state._fsp--;
3057
3058 after(grammarAccess.getAllObjectsRule());
3059 match(input,EOF,FOLLOW_2);
3060
3061 }
3062
3063 }
3064 catch (RecognitionException re) {
3065 reportError(re);
3066 recover(input,re);
3067 }
3068 finally {
3069 }
3070 return ;
3071 }
3072 // $ANTLR end "entryRuleAllObjects"
3073
3074
3075 // $ANTLR start "ruleAllObjects"
3076 // InternalSolverLanguage.g:1012:1: ruleAllObjects : ( ( rule__AllObjects__Group__0 ) ) ;
3077 public final void ruleAllObjects() throws RecognitionException {
3078
3079 int stackSize = keepStackSize();
3080
3081 try {
3082 // InternalSolverLanguage.g:1016:2: ( ( ( rule__AllObjects__Group__0 ) ) )
3083 // InternalSolverLanguage.g:1017:2: ( ( rule__AllObjects__Group__0 ) )
3084 {
3085 // InternalSolverLanguage.g:1017:2: ( ( rule__AllObjects__Group__0 ) )
3086 // InternalSolverLanguage.g:1018:3: ( rule__AllObjects__Group__0 )
3087 {
3088 before(grammarAccess.getAllObjectsAccess().getGroup());
3089 // InternalSolverLanguage.g:1019:3: ( rule__AllObjects__Group__0 )
3090 // InternalSolverLanguage.g:1019:4: rule__AllObjects__Group__0
3091 {
3092 pushFollow(FOLLOW_2);
3093 rule__AllObjects__Group__0();
3094
3095 state._fsp--;
3096
3097
3098 }
3099
3100 after(grammarAccess.getAllObjectsAccess().getGroup());
3101
3102 }
3103
3104
3105 }
3106
3107 }
3108 catch (RecognitionException re) {
3109 reportError(re);
3110 recover(input,re);
3111 }
3112 finally {
3113
3114 restoreStackSize(stackSize);
3115
3116 }
3117 return ;
3118 }
3119 // $ANTLR end "ruleAllObjects"
3120
3121
3122 // $ANTLR start "entryRuleDefaultInterpretation"
3123 // InternalSolverLanguage.g:1028:1: entryRuleDefaultInterpretation : ruleDefaultInterpretation EOF ;
3124 public final void entryRuleDefaultInterpretation() throws RecognitionException {
3125 try {
3126 // InternalSolverLanguage.g:1029:1: ( ruleDefaultInterpretation EOF )
3127 // InternalSolverLanguage.g:1030:1: ruleDefaultInterpretation EOF
3128 {
3129 before(grammarAccess.getDefaultInterpretationRule());
3130 pushFollow(FOLLOW_1);
3131 ruleDefaultInterpretation();
3132
3133 state._fsp--;
3134
3135 after(grammarAccess.getDefaultInterpretationRule());
3136 match(input,EOF,FOLLOW_2);
3137
3138 }
3139
3140 }
3141 catch (RecognitionException re) {
3142 reportError(re);
3143 recover(input,re);
3144 }
3145 finally {
3146 }
3147 return ;
3148 }
3149 // $ANTLR end "entryRuleDefaultInterpretation"
3150
3151
3152 // $ANTLR start "ruleDefaultInterpretation"
3153 // InternalSolverLanguage.g:1037:1: ruleDefaultInterpretation : ( ( rule__DefaultInterpretation__Group__0 ) ) ;
3154 public final void ruleDefaultInterpretation() throws RecognitionException {
3155
3156 int stackSize = keepStackSize();
3157
3158 try {
3159 // InternalSolverLanguage.g:1041:2: ( ( ( rule__DefaultInterpretation__Group__0 ) ) )
3160 // InternalSolverLanguage.g:1042:2: ( ( rule__DefaultInterpretation__Group__0 ) )
3161 {
3162 // InternalSolverLanguage.g:1042:2: ( ( rule__DefaultInterpretation__Group__0 ) )
3163 // InternalSolverLanguage.g:1043:3: ( rule__DefaultInterpretation__Group__0 )
3164 {
3165 before(grammarAccess.getDefaultInterpretationAccess().getGroup());
3166 // InternalSolverLanguage.g:1044:3: ( rule__DefaultInterpretation__Group__0 )
3167 // InternalSolverLanguage.g:1044:4: rule__DefaultInterpretation__Group__0
3168 {
3169 pushFollow(FOLLOW_2);
3170 rule__DefaultInterpretation__Group__0();
3171
3172 state._fsp--;
3173
3174
3175 }
3176
3177 after(grammarAccess.getDefaultInterpretationAccess().getGroup());
3178
3179 }
3180
3181
3182 }
3183
3184 }
3185 catch (RecognitionException re) {
3186 reportError(re);
3187 recover(input,re);
3188 }
3189 finally {
3190
3191 restoreStackSize(stackSize);
3192
3193 }
3194 return ;
3195 }
3196 // $ANTLR end "ruleDefaultInterpretation"
3197
3198
3199 // $ANTLR start "entryRuleCDInterpretation"
3200 // InternalSolverLanguage.g:1053:1: entryRuleCDInterpretation : ruleCDInterpretation EOF ;
3201 public final void entryRuleCDInterpretation() throws RecognitionException {
3202 try {
3203 // InternalSolverLanguage.g:1054:1: ( ruleCDInterpretation EOF )
3204 // InternalSolverLanguage.g:1055:1: ruleCDInterpretation EOF
3205 {
3206 before(grammarAccess.getCDInterpretationRule());
3207 pushFollow(FOLLOW_1);
3208 ruleCDInterpretation();
3209
3210 state._fsp--;
3211
3212 after(grammarAccess.getCDInterpretationRule());
3213 match(input,EOF,FOLLOW_2);
3214
3215 }
3216
3217 }
3218 catch (RecognitionException re) {
3219 reportError(re);
3220 recover(input,re);
3221 }
3222 finally {
3223 }
3224 return ;
3225 }
3226 // $ANTLR end "entryRuleCDInterpretation"
3227
3228
3229 // $ANTLR start "ruleCDInterpretation"
3230 // InternalSolverLanguage.g:1062:1: ruleCDInterpretation : ( ( rule__CDInterpretation__Alternatives ) ) ;
3231 public final void ruleCDInterpretation() throws RecognitionException {
3232
3233 int stackSize = keepStackSize();
3234
3235 try {
3236 // InternalSolverLanguage.g:1066:2: ( ( ( rule__CDInterpretation__Alternatives ) ) )
3237 // InternalSolverLanguage.g:1067:2: ( ( rule__CDInterpretation__Alternatives ) )
3238 {
3239 // InternalSolverLanguage.g:1067:2: ( ( rule__CDInterpretation__Alternatives ) )
3240 // InternalSolverLanguage.g:1068:3: ( rule__CDInterpretation__Alternatives )
3241 {
3242 before(grammarAccess.getCDInterpretationAccess().getAlternatives());
3243 // InternalSolverLanguage.g:1069:3: ( rule__CDInterpretation__Alternatives )
3244 // InternalSolverLanguage.g:1069:4: rule__CDInterpretation__Alternatives
3245 {
3246 pushFollow(FOLLOW_2);
3247 rule__CDInterpretation__Alternatives();
3248
3249 state._fsp--;
3250
3251
3252 }
3253
3254 after(grammarAccess.getCDInterpretationAccess().getAlternatives());
3255
3256 }
3257
3258
3259 }
3260
3261 }
3262 catch (RecognitionException re) {
3263 reportError(re);
3264 recover(input,re);
3265 }
3266 finally {
3267
3268 restoreStackSize(stackSize);
3269
3270 }
3271 return ;
3272 }
3273 // $ANTLR end "ruleCDInterpretation"
3274
3275
3276 // $ANTLR start "entryRuleClassInterpretation"
3277 // InternalSolverLanguage.g:1078:1: entryRuleClassInterpretation : ruleClassInterpretation EOF ;
3278 public final void entryRuleClassInterpretation() throws RecognitionException {
3279 try {
3280 // InternalSolverLanguage.g:1079:1: ( ruleClassInterpretation EOF )
3281 // InternalSolverLanguage.g:1080:1: ruleClassInterpretation EOF
3282 {
3283 before(grammarAccess.getClassInterpretationRule());
3284 pushFollow(FOLLOW_1);
3285 ruleClassInterpretation();
3286
3287 state._fsp--;
3288
3289 after(grammarAccess.getClassInterpretationRule());
3290 match(input,EOF,FOLLOW_2);
3291
3292 }
3293
3294 }
3295 catch (RecognitionException re) {
3296 reportError(re);
3297 recover(input,re);
3298 }
3299 finally {
3300 }
3301 return ;
3302 }
3303 // $ANTLR end "entryRuleClassInterpretation"
3304
3305
3306 // $ANTLR start "ruleClassInterpretation"
3307 // InternalSolverLanguage.g:1087:1: ruleClassInterpretation : ( ( rule__ClassInterpretation__Group__0 ) ) ;
3308 public final void ruleClassInterpretation() throws RecognitionException {
3309
3310 int stackSize = keepStackSize();
3311
3312 try {
3313 // InternalSolverLanguage.g:1091:2: ( ( ( rule__ClassInterpretation__Group__0 ) ) )
3314 // InternalSolverLanguage.g:1092:2: ( ( rule__ClassInterpretation__Group__0 ) )
3315 {
3316 // InternalSolverLanguage.g:1092:2: ( ( rule__ClassInterpretation__Group__0 ) )
3317 // InternalSolverLanguage.g:1093:3: ( rule__ClassInterpretation__Group__0 )
3318 {
3319 before(grammarAccess.getClassInterpretationAccess().getGroup());
3320 // InternalSolverLanguage.g:1094:3: ( rule__ClassInterpretation__Group__0 )
3321 // InternalSolverLanguage.g:1094:4: rule__ClassInterpretation__Group__0
3322 {
3323 pushFollow(FOLLOW_2);
3324 rule__ClassInterpretation__Group__0();
3325
3326 state._fsp--;
3327
3328
3329 }
3330
3331 after(grammarAccess.getClassInterpretationAccess().getGroup());
3332
3333 }
3334
3335
3336 }
3337
3338 }
3339 catch (RecognitionException re) {
3340 reportError(re);
3341 recover(input,re);
3342 }
3343 finally {
3344
3345 restoreStackSize(stackSize);
3346
3347 }
3348 return ;
3349 }
3350 // $ANTLR end "ruleClassInterpretation"
3351
3352
3353 // $ANTLR start "entryRuleEnumInterpretation"
3354 // InternalSolverLanguage.g:1103:1: entryRuleEnumInterpretation : ruleEnumInterpretation EOF ;
3355 public final void entryRuleEnumInterpretation() throws RecognitionException {
3356 try {
3357 // InternalSolverLanguage.g:1104:1: ( ruleEnumInterpretation EOF )
3358 // InternalSolverLanguage.g:1105:1: ruleEnumInterpretation EOF
3359 {
3360 before(grammarAccess.getEnumInterpretationRule());
3361 pushFollow(FOLLOW_1);
3362 ruleEnumInterpretation();
3363
3364 state._fsp--;
3365
3366 after(grammarAccess.getEnumInterpretationRule());
3367 match(input,EOF,FOLLOW_2);
3368
3369 }
3370
3371 }
3372 catch (RecognitionException re) {
3373 reportError(re);
3374 recover(input,re);
3375 }
3376 finally {
3377 }
3378 return ;
3379 }
3380 // $ANTLR end "entryRuleEnumInterpretation"
3381
3382
3383 // $ANTLR start "ruleEnumInterpretation"
3384 // InternalSolverLanguage.g:1112:1: ruleEnumInterpretation : ( ( rule__EnumInterpretation__Group__0 ) ) ;
3385 public final void ruleEnumInterpretation() throws RecognitionException {
3386
3387 int stackSize = keepStackSize();
3388
3389 try {
3390 // InternalSolverLanguage.g:1116:2: ( ( ( rule__EnumInterpretation__Group__0 ) ) )
3391 // InternalSolverLanguage.g:1117:2: ( ( rule__EnumInterpretation__Group__0 ) )
3392 {
3393 // InternalSolverLanguage.g:1117:2: ( ( rule__EnumInterpretation__Group__0 ) )
3394 // InternalSolverLanguage.g:1118:3: ( rule__EnumInterpretation__Group__0 )
3395 {
3396 before(grammarAccess.getEnumInterpretationAccess().getGroup());
3397 // InternalSolverLanguage.g:1119:3: ( rule__EnumInterpretation__Group__0 )
3398 // InternalSolverLanguage.g:1119:4: rule__EnumInterpretation__Group__0
3399 {
3400 pushFollow(FOLLOW_2);
3401 rule__EnumInterpretation__Group__0();
3402
3403 state._fsp--;
3404
3405
3406 }
3407
3408 after(grammarAccess.getEnumInterpretationAccess().getGroup());
3409
3410 }
3411
3412
3413 }
3414
3415 }
3416 catch (RecognitionException re) {
3417 reportError(re);
3418 recover(input,re);
3419 }
3420 finally {
3421
3422 restoreStackSize(stackSize);
3423
3424 }
3425 return ;
3426 }
3427 // $ANTLR end "ruleEnumInterpretation"
3428
3429
3430 // $ANTLR start "entryRuleFieldRelationInterpretation"
3431 // InternalSolverLanguage.g:1128:1: entryRuleFieldRelationInterpretation : ruleFieldRelationInterpretation EOF ;
3432 public final void entryRuleFieldRelationInterpretation() throws RecognitionException {
3433 try {
3434 // InternalSolverLanguage.g:1129:1: ( ruleFieldRelationInterpretation EOF )
3435 // InternalSolverLanguage.g:1130:1: ruleFieldRelationInterpretation EOF
3436 {
3437 before(grammarAccess.getFieldRelationInterpretationRule());
3438 pushFollow(FOLLOW_1);
3439 ruleFieldRelationInterpretation();
3440
3441 state._fsp--;
3442
3443 after(grammarAccess.getFieldRelationInterpretationRule());
3444 match(input,EOF,FOLLOW_2);
3445
3446 }
3447
3448 }
3449 catch (RecognitionException re) {
3450 reportError(re);
3451 recover(input,re);
3452 }
3453 finally {
3454 }
3455 return ;
3456 }
3457 // $ANTLR end "entryRuleFieldRelationInterpretation"
3458
3459
3460 // $ANTLR start "ruleFieldRelationInterpretation"
3461 // InternalSolverLanguage.g:1137:1: ruleFieldRelationInterpretation : ( ( rule__FieldRelationInterpretation__Group__0 ) ) ;
3462 public final void ruleFieldRelationInterpretation() throws RecognitionException {
3463
3464 int stackSize = keepStackSize();
3465
3466 try {
3467 // InternalSolverLanguage.g:1141:2: ( ( ( rule__FieldRelationInterpretation__Group__0 ) ) )
3468 // InternalSolverLanguage.g:1142:2: ( ( rule__FieldRelationInterpretation__Group__0 ) )
3469 {
3470 // InternalSolverLanguage.g:1142:2: ( ( rule__FieldRelationInterpretation__Group__0 ) )
3471 // InternalSolverLanguage.g:1143:3: ( rule__FieldRelationInterpretation__Group__0 )
3472 {
3473 before(grammarAccess.getFieldRelationInterpretationAccess().getGroup());
3474 // InternalSolverLanguage.g:1144:3: ( rule__FieldRelationInterpretation__Group__0 )
3475 // InternalSolverLanguage.g:1144:4: rule__FieldRelationInterpretation__Group__0
3476 {
3477 pushFollow(FOLLOW_2);
3478 rule__FieldRelationInterpretation__Group__0();
3479
3480 state._fsp--;
3481
3482
3483 }
3484
3485 after(grammarAccess.getFieldRelationInterpretationAccess().getGroup());
3486
3487 }
3488
3489
3490 }
3491
3492 }
3493 catch (RecognitionException re) {
3494 reportError(re);
3495 recover(input,re);
3496 }
3497 finally {
3498
3499 restoreStackSize(stackSize);
3500
3501 }
3502 return ;
3503 }
3504 // $ANTLR end "ruleFieldRelationInterpretation"
3505
3506
3507 // $ANTLR start "entryRuleGlobalRelationInterpretation"
3508 // InternalSolverLanguage.g:1153:1: entryRuleGlobalRelationInterpretation : ruleGlobalRelationInterpretation EOF ;
3509 public final void entryRuleGlobalRelationInterpretation() throws RecognitionException {
3510 try {
3511 // InternalSolverLanguage.g:1154:1: ( ruleGlobalRelationInterpretation EOF )
3512 // InternalSolverLanguage.g:1155:1: ruleGlobalRelationInterpretation EOF
3513 {
3514 before(grammarAccess.getGlobalRelationInterpretationRule());
3515 pushFollow(FOLLOW_1);
3516 ruleGlobalRelationInterpretation();
3517
3518 state._fsp--;
3519
3520 after(grammarAccess.getGlobalRelationInterpretationRule());
3521 match(input,EOF,FOLLOW_2);
3522
3523 }
3524
3525 }
3526 catch (RecognitionException re) {
3527 reportError(re);
3528 recover(input,re);
3529 }
3530 finally {
3531 }
3532 return ;
3533 }
3534 // $ANTLR end "entryRuleGlobalRelationInterpretation"
3535
3536
3537 // $ANTLR start "ruleGlobalRelationInterpretation"
3538 // InternalSolverLanguage.g:1162:1: ruleGlobalRelationInterpretation : ( ( rule__GlobalRelationInterpretation__Group__0 ) ) ;
3539 public final void ruleGlobalRelationInterpretation() throws RecognitionException {
3540
3541 int stackSize = keepStackSize();
3542
3543 try {
3544 // InternalSolverLanguage.g:1166:2: ( ( ( rule__GlobalRelationInterpretation__Group__0 ) ) )
3545 // InternalSolverLanguage.g:1167:2: ( ( rule__GlobalRelationInterpretation__Group__0 ) )
3546 {
3547 // InternalSolverLanguage.g:1167:2: ( ( rule__GlobalRelationInterpretation__Group__0 ) )
3548 // InternalSolverLanguage.g:1168:3: ( rule__GlobalRelationInterpretation__Group__0 )
3549 {
3550 before(grammarAccess.getGlobalRelationInterpretationAccess().getGroup());
3551 // InternalSolverLanguage.g:1169:3: ( rule__GlobalRelationInterpretation__Group__0 )
3552 // InternalSolverLanguage.g:1169:4: rule__GlobalRelationInterpretation__Group__0
3553 {
3554 pushFollow(FOLLOW_2);
3555 rule__GlobalRelationInterpretation__Group__0();
3556
3557 state._fsp--;
3558
3559
3560 }
3561
3562 after(grammarAccess.getGlobalRelationInterpretationAccess().getGroup());
3563
3564 }
3565
3566
3567 }
3568
3569 }
3570 catch (RecognitionException re) {
3571 reportError(re);
3572 recover(input,re);
3573 }
3574 finally {
3575
3576 restoreStackSize(stackSize);
3577
3578 }
3579 return ;
3580 }
3581 // $ANTLR end "ruleGlobalRelationInterpretation"
3582
3583
3584 // $ANTLR start "entryRuleMultiplicityDefinition"
3585 // InternalSolverLanguage.g:1178:1: entryRuleMultiplicityDefinition : ruleMultiplicityDefinition EOF ;
3586 public final void entryRuleMultiplicityDefinition() throws RecognitionException {
3587 try {
3588 // InternalSolverLanguage.g:1179:1: ( ruleMultiplicityDefinition EOF )
3589 // InternalSolverLanguage.g:1180:1: ruleMultiplicityDefinition EOF
3590 {
3591 before(grammarAccess.getMultiplicityDefinitionRule());
3592 pushFollow(FOLLOW_1);
3593 ruleMultiplicityDefinition();
3594
3595 state._fsp--;
3596
3597 after(grammarAccess.getMultiplicityDefinitionRule());
3598 match(input,EOF,FOLLOW_2);
3599
3600 }
3601
3602 }
3603 catch (RecognitionException re) {
3604 reportError(re);
3605 recover(input,re);
3606 }
3607 finally {
3608 }
3609 return ;
3610 }
3611 // $ANTLR end "entryRuleMultiplicityDefinition"
3612
3613
3614 // $ANTLR start "ruleMultiplicityDefinition"
3615 // InternalSolverLanguage.g:1187:1: ruleMultiplicityDefinition : ( ( rule__MultiplicityDefinition__Group__0 ) ) ;
3616 public final void ruleMultiplicityDefinition() throws RecognitionException {
3617
3618 int stackSize = keepStackSize();
3619
3620 try {
3621 // InternalSolverLanguage.g:1191:2: ( ( ( rule__MultiplicityDefinition__Group__0 ) ) )
3622 // InternalSolverLanguage.g:1192:2: ( ( rule__MultiplicityDefinition__Group__0 ) )
3623 {
3624 // InternalSolverLanguage.g:1192:2: ( ( rule__MultiplicityDefinition__Group__0 ) )
3625 // InternalSolverLanguage.g:1193:3: ( rule__MultiplicityDefinition__Group__0 )
3626 {
3627 before(grammarAccess.getMultiplicityDefinitionAccess().getGroup());
3628 // InternalSolverLanguage.g:1194:3: ( rule__MultiplicityDefinition__Group__0 )
3629 // InternalSolverLanguage.g:1194:4: rule__MultiplicityDefinition__Group__0
3630 {
3631 pushFollow(FOLLOW_2);
3632 rule__MultiplicityDefinition__Group__0();
3633
3634 state._fsp--;
3635
3636
3637 }
3638
3639 after(grammarAccess.getMultiplicityDefinitionAccess().getGroup());
3640
3641 }
3642
3643
3644 }
3645
3646 }
3647 catch (RecognitionException re) {
3648 reportError(re);
3649 recover(input,re);
3650 }
3651 finally {
3652
3653 restoreStackSize(stackSize);
3654
3655 }
3656 return ;
3657 }
3658 // $ANTLR end "ruleMultiplicityDefinition"
3659
3660
3661 // $ANTLR start "rule__Statement__Alternatives"
3662 // InternalSolverLanguage.g:1202:1: rule__Statement__Alternatives : ( ( ruleInterpretation ) | ( rulePredicate ) );
3663 public final void rule__Statement__Alternatives() throws RecognitionException {
3664
3665 int stackSize = keepStackSize();
3666
3667 try {
3668 // InternalSolverLanguage.g:1206:1: ( ( ruleInterpretation ) | ( rulePredicate ) )
3669 int alt2=2;
3670 int LA2_0 = input.LA(1);
3671
3672 if ( (LA2_0==RULE_ID||(LA2_0>=20 && LA2_0<=25)||LA2_0==31||LA2_0==36||(LA2_0>=39 && LA2_0<=40)) ) {
3673 alt2=1;
3674 }
3675 else if ( (LA2_0==16||LA2_0==27) ) {
3676 alt2=2;
3677 }
3678 else {
3679 NoViableAltException nvae =
3680 new NoViableAltException("", 2, 0, input);
3681
3682 throw nvae;
3683 }
3684 switch (alt2) {
3685 case 1 :
3686 // InternalSolverLanguage.g:1207:2: ( ruleInterpretation )
3687 {
3688 // InternalSolverLanguage.g:1207:2: ( ruleInterpretation )
3689 // InternalSolverLanguage.g:1208:3: ruleInterpretation
3690 {
3691 before(grammarAccess.getStatementAccess().getInterpretationParserRuleCall_0());
3692 pushFollow(FOLLOW_2);
3693 ruleInterpretation();
3694
3695 state._fsp--;
3696
3697 after(grammarAccess.getStatementAccess().getInterpretationParserRuleCall_0());
3698
3699 }
3700
3701
3702 }
3703 break;
3704 case 2 :
3705 // InternalSolverLanguage.g:1213:2: ( rulePredicate )
3706 {
3707 // InternalSolverLanguage.g:1213:2: ( rulePredicate )
3708 // InternalSolverLanguage.g:1214:3: rulePredicate
3709 {
3710 before(grammarAccess.getStatementAccess().getPredicateParserRuleCall_1());
3711 pushFollow(FOLLOW_2);
3712 rulePredicate();
3713
3714 state._fsp--;
3715
3716 after(grammarAccess.getStatementAccess().getPredicateParserRuleCall_1());
3717
3718 }
3719
3720
3721 }
3722 break;
3723
3724 }
3725 }
3726 catch (RecognitionException re) {
3727 reportError(re);
3728 recover(input,re);
3729 }
3730 finally {
3731
3732 restoreStackSize(stackSize);
3733
3734 }
3735 return ;
3736 }
3737 // $ANTLR end "rule__Statement__Alternatives"
3738
3739
3740 // $ANTLR start "rule__BooleanValue__Alternatives"
3741 // InternalSolverLanguage.g:1223:1: rule__BooleanValue__Alternatives : ( ( ( rule__BooleanValue__Group_0__0 ) ) | ( ( rule__BooleanValue__Group_1__0 ) ) );
3742 public final void rule__BooleanValue__Alternatives() throws RecognitionException {
3743
3744 int stackSize = keepStackSize();
3745
3746 try {
3747 // InternalSolverLanguage.g:1227:1: ( ( ( rule__BooleanValue__Group_0__0 ) ) | ( ( rule__BooleanValue__Group_1__0 ) ) )
3748 int alt3=2;
3749 int LA3_0 = input.LA(1);
3750
3751 if ( (LA3_0==12) ) {
3752 alt3=1;
3753 }
3754 else if ( (LA3_0==11) ) {
3755 alt3=2;
3756 }
3757 else {
3758 NoViableAltException nvae =
3759 new NoViableAltException("", 3, 0, input);
3760
3761 throw nvae;
3762 }
3763 switch (alt3) {
3764 case 1 :
3765 // InternalSolverLanguage.g:1228:2: ( ( rule__BooleanValue__Group_0__0 ) )
3766 {
3767 // InternalSolverLanguage.g:1228:2: ( ( rule__BooleanValue__Group_0__0 ) )
3768 // InternalSolverLanguage.g:1229:3: ( rule__BooleanValue__Group_0__0 )
3769 {
3770 before(grammarAccess.getBooleanValueAccess().getGroup_0());
3771 // InternalSolverLanguage.g:1230:3: ( rule__BooleanValue__Group_0__0 )
3772 // InternalSolverLanguage.g:1230:4: rule__BooleanValue__Group_0__0
3773 {
3774 pushFollow(FOLLOW_2);
3775 rule__BooleanValue__Group_0__0();
3776
3777 state._fsp--;
3778
3779
3780 }
3781
3782 after(grammarAccess.getBooleanValueAccess().getGroup_0());
3783
3784 }
3785
3786
3787 }
3788 break;
3789 case 2 :
3790 // InternalSolverLanguage.g:1234:2: ( ( rule__BooleanValue__Group_1__0 ) )
3791 {
3792 // InternalSolverLanguage.g:1234:2: ( ( rule__BooleanValue__Group_1__0 ) )
3793 // InternalSolverLanguage.g:1235:3: ( rule__BooleanValue__Group_1__0 )
3794 {
3795 before(grammarAccess.getBooleanValueAccess().getGroup_1());
3796 // InternalSolverLanguage.g:1236:3: ( rule__BooleanValue__Group_1__0 )
3797 // InternalSolverLanguage.g:1236:4: rule__BooleanValue__Group_1__0
3798 {
3799 pushFollow(FOLLOW_2);
3800 rule__BooleanValue__Group_1__0();
3801
3802 state._fsp--;
3803
3804
3805 }
3806
3807 after(grammarAccess.getBooleanValueAccess().getGroup_1());
3808
3809 }
3810
3811
3812 }
3813 break;
3814
3815 }
3816 }
3817 catch (RecognitionException re) {
3818 reportError(re);
3819 recover(input,re);
3820 }
3821 finally {
3822
3823 restoreStackSize(stackSize);
3824
3825 }
3826 return ;
3827 }
3828 // $ANTLR end "rule__BooleanValue__Alternatives"
3829
3830
3831 // $ANTLR start "rule__TruthValue__Alternatives"
3832 // InternalSolverLanguage.g:1244:1: rule__TruthValue__Alternatives : ( ( ( rule__TruthValue__Group_0__0 ) ) | ( ( rule__TruthValue__Group_1__0 ) ) | ( ( rule__TruthValue__Group_2__0 ) ) | ( ( rule__TruthValue__Group_3__0 ) ) );
3833 public final void rule__TruthValue__Alternatives() throws RecognitionException {
3834
3835 int stackSize = keepStackSize();
3836
3837 try {
3838 // InternalSolverLanguage.g:1248:1: ( ( ( rule__TruthValue__Group_0__0 ) ) | ( ( rule__TruthValue__Group_1__0 ) ) | ( ( rule__TruthValue__Group_2__0 ) ) | ( ( rule__TruthValue__Group_3__0 ) ) )
3839 int alt4=4;
3840 switch ( input.LA(1) ) {
3841 case 12:
3842 {
3843 alt4=1;
3844 }
3845 break;
3846 case 11:
3847 {
3848 alt4=2;
3849 }
3850 break;
3851 case 15:
3852 {
3853 alt4=3;
3854 }
3855 break;
3856 case 16:
3857 {
3858 alt4=4;
3859 }
3860 break;
3861 default:
3862 NoViableAltException nvae =
3863 new NoViableAltException("", 4, 0, input);
3864
3865 throw nvae;
3866 }
3867
3868 switch (alt4) {
3869 case 1 :
3870 // InternalSolverLanguage.g:1249:2: ( ( rule__TruthValue__Group_0__0 ) )
3871 {
3872 // InternalSolverLanguage.g:1249:2: ( ( rule__TruthValue__Group_0__0 ) )
3873 // InternalSolverLanguage.g:1250:3: ( rule__TruthValue__Group_0__0 )
3874 {
3875 before(grammarAccess.getTruthValueAccess().getGroup_0());
3876 // InternalSolverLanguage.g:1251:3: ( rule__TruthValue__Group_0__0 )
3877 // InternalSolverLanguage.g:1251:4: rule__TruthValue__Group_0__0
3878 {
3879 pushFollow(FOLLOW_2);
3880 rule__TruthValue__Group_0__0();
3881
3882 state._fsp--;
3883
3884
3885 }
3886
3887 after(grammarAccess.getTruthValueAccess().getGroup_0());
3888
3889 }
3890
3891
3892 }
3893 break;
3894 case 2 :
3895 // InternalSolverLanguage.g:1255:2: ( ( rule__TruthValue__Group_1__0 ) )
3896 {
3897 // InternalSolverLanguage.g:1255:2: ( ( rule__TruthValue__Group_1__0 ) )
3898 // InternalSolverLanguage.g:1256:3: ( rule__TruthValue__Group_1__0 )
3899 {
3900 before(grammarAccess.getTruthValueAccess().getGroup_1());
3901 // InternalSolverLanguage.g:1257:3: ( rule__TruthValue__Group_1__0 )
3902 // InternalSolverLanguage.g:1257:4: rule__TruthValue__Group_1__0
3903 {
3904 pushFollow(FOLLOW_2);
3905 rule__TruthValue__Group_1__0();
3906
3907 state._fsp--;
3908
3909
3910 }
3911
3912 after(grammarAccess.getTruthValueAccess().getGroup_1());
3913
3914 }
3915
3916
3917 }
3918 break;
3919 case 3 :
3920 // InternalSolverLanguage.g:1261:2: ( ( rule__TruthValue__Group_2__0 ) )
3921 {
3922 // InternalSolverLanguage.g:1261:2: ( ( rule__TruthValue__Group_2__0 ) )
3923 // InternalSolverLanguage.g:1262:3: ( rule__TruthValue__Group_2__0 )
3924 {
3925 before(grammarAccess.getTruthValueAccess().getGroup_2());
3926 // InternalSolverLanguage.g:1263:3: ( rule__TruthValue__Group_2__0 )
3927 // InternalSolverLanguage.g:1263:4: rule__TruthValue__Group_2__0
3928 {
3929 pushFollow(FOLLOW_2);
3930 rule__TruthValue__Group_2__0();
3931
3932 state._fsp--;
3933
3934
3935 }
3936
3937 after(grammarAccess.getTruthValueAccess().getGroup_2());
3938
3939 }
3940
3941
3942 }
3943 break;
3944 case 4 :
3945 // InternalSolverLanguage.g:1267:2: ( ( rule__TruthValue__Group_3__0 ) )
3946 {
3947 // InternalSolverLanguage.g:1267:2: ( ( rule__TruthValue__Group_3__0 ) )
3948 // InternalSolverLanguage.g:1268:3: ( rule__TruthValue__Group_3__0 )
3949 {
3950 before(grammarAccess.getTruthValueAccess().getGroup_3());
3951 // InternalSolverLanguage.g:1269:3: ( rule__TruthValue__Group_3__0 )
3952 // InternalSolverLanguage.g:1269:4: rule__TruthValue__Group_3__0
3953 {
3954 pushFollow(FOLLOW_2);
3955 rule__TruthValue__Group_3__0();
3956
3957 state._fsp--;
3958
3959
3960 }
3961
3962 after(grammarAccess.getTruthValueAccess().getGroup_3());
3963
3964 }
3965
3966
3967 }
3968 break;
3969
3970 }
3971 }
3972 catch (RecognitionException re) {
3973 reportError(re);
3974 recover(input,re);
3975 }
3976 finally {
3977
3978 restoreStackSize(stackSize);
3979
3980 }
3981 return ;
3982 }
3983 // $ANTLR end "rule__TruthValue__Alternatives"
3984
3985
3986 // $ANTLR start "rule__Interpretation__Alternatives"
3987 // InternalSolverLanguage.g:1277:1: rule__Interpretation__Alternatives : ( ( ruleBasicInterpretation ) | ( ruleDefaultInterpretation ) | ( ruleCDInterpretation ) );
3988 public final void rule__Interpretation__Alternatives() throws RecognitionException {
3989
3990 int stackSize = keepStackSize();
3991
3992 try {
3993 // InternalSolverLanguage.g:1281:1: ( ( ruleBasicInterpretation ) | ( ruleDefaultInterpretation ) | ( ruleCDInterpretation ) )
3994 int alt5=3;
3995 switch ( input.LA(1) ) {
3996 case RULE_ID:
3997 case 20:
3998 case 21:
3999 case 22:
4000 case 23:
4001 case 24:
4002 case 25:
4003 {
4004 alt5=1;
4005 }
4006 break;
4007 case 31:
4008 {
4009 alt5=2;
4010 }
4011 break;
4012 case 36:
4013 case 39:
4014 case 40:
4015 {
4016 alt5=3;
4017 }
4018 break;
4019 default:
4020 NoViableAltException nvae =
4021 new NoViableAltException("", 5, 0, input);
4022
4023 throw nvae;
4024 }
4025
4026 switch (alt5) {
4027 case 1 :
4028 // InternalSolverLanguage.g:1282:2: ( ruleBasicInterpretation )
4029 {
4030 // InternalSolverLanguage.g:1282:2: ( ruleBasicInterpretation )
4031 // InternalSolverLanguage.g:1283:3: ruleBasicInterpretation
4032 {
4033 before(grammarAccess.getInterpretationAccess().getBasicInterpretationParserRuleCall_0());
4034 pushFollow(FOLLOW_2);
4035 ruleBasicInterpretation();
4036
4037 state._fsp--;
4038
4039 after(grammarAccess.getInterpretationAccess().getBasicInterpretationParserRuleCall_0());
4040
4041 }
4042
4043
4044 }
4045 break;
4046 case 2 :
4047 // InternalSolverLanguage.g:1288:2: ( ruleDefaultInterpretation )
4048 {
4049 // InternalSolverLanguage.g:1288:2: ( ruleDefaultInterpretation )
4050 // InternalSolverLanguage.g:1289:3: ruleDefaultInterpretation
4051 {
4052 before(grammarAccess.getInterpretationAccess().getDefaultInterpretationParserRuleCall_1());
4053 pushFollow(FOLLOW_2);
4054 ruleDefaultInterpretation();
4055
4056 state._fsp--;
4057
4058 after(grammarAccess.getInterpretationAccess().getDefaultInterpretationParserRuleCall_1());
4059
4060 }
4061
4062
4063 }
4064 break;
4065 case 3 :
4066 // InternalSolverLanguage.g:1294:2: ( ruleCDInterpretation )
4067 {
4068 // InternalSolverLanguage.g:1294:2: ( ruleCDInterpretation )
4069 // InternalSolverLanguage.g:1295:3: ruleCDInterpretation
4070 {
4071 before(grammarAccess.getInterpretationAccess().getCDInterpretationParserRuleCall_2());
4072 pushFollow(FOLLOW_2);
4073 ruleCDInterpretation();
4074
4075 state._fsp--;
4076
4077 after(grammarAccess.getInterpretationAccess().getCDInterpretationParserRuleCall_2());
4078
4079 }
4080
4081
4082 }
4083 break;
4084
4085 }
4086 }
4087 catch (RecognitionException re) {
4088 reportError(re);
4089 recover(input,re);
4090 }
4091 finally {
4092
4093 restoreStackSize(stackSize);
4094
4095 }
4096 return ;
4097 }
4098 // $ANTLR end "rule__Interpretation__Alternatives"
4099
4100
4101 // $ANTLR start "rule__Symbol__Alternatives"
4102 // InternalSolverLanguage.g:1304:1: rule__Symbol__Alternatives : ( ( ruleModelSymbol ) | ( rulePartialitySymbol ) | ( ruleDataSymbol ) );
4103 public final void rule__Symbol__Alternatives() throws RecognitionException {
4104
4105 int stackSize = keepStackSize();
4106
4107 try {
4108 // InternalSolverLanguage.g:1308:1: ( ( ruleModelSymbol ) | ( rulePartialitySymbol ) | ( ruleDataSymbol ) )
4109 int alt6=3;
4110 switch ( input.LA(1) ) {
4111 case RULE_ID:
4112 {
4113 alt6=1;
4114 }
4115 break;
4116 case 20:
4117 case 21:
4118 {
4119 alt6=2;
4120 }
4121 break;
4122 case 22:
4123 case 23:
4124 case 24:
4125 case 25:
4126 {
4127 alt6=3;
4128 }
4129 break;
4130 default:
4131 NoViableAltException nvae =
4132 new NoViableAltException("", 6, 0, input);
4133
4134 throw nvae;
4135 }
4136
4137 switch (alt6) {
4138 case 1 :
4139 // InternalSolverLanguage.g:1309:2: ( ruleModelSymbol )
4140 {
4141 // InternalSolverLanguage.g:1309:2: ( ruleModelSymbol )
4142 // InternalSolverLanguage.g:1310:3: ruleModelSymbol
4143 {
4144 before(grammarAccess.getSymbolAccess().getModelSymbolParserRuleCall_0());
4145 pushFollow(FOLLOW_2);
4146 ruleModelSymbol();
4147
4148 state._fsp--;
4149
4150 after(grammarAccess.getSymbolAccess().getModelSymbolParserRuleCall_0());
4151
4152 }
4153
4154
4155 }
4156 break;
4157 case 2 :
4158 // InternalSolverLanguage.g:1315:2: ( rulePartialitySymbol )
4159 {
4160 // InternalSolverLanguage.g:1315:2: ( rulePartialitySymbol )
4161 // InternalSolverLanguage.g:1316:3: rulePartialitySymbol
4162 {
4163 before(grammarAccess.getSymbolAccess().getPartialitySymbolParserRuleCall_1());
4164 pushFollow(FOLLOW_2);
4165 rulePartialitySymbol();
4166
4167 state._fsp--;
4168
4169 after(grammarAccess.getSymbolAccess().getPartialitySymbolParserRuleCall_1());
4170
4171 }
4172
4173
4174 }
4175 break;
4176 case 3 :
4177 // InternalSolverLanguage.g:1321:2: ( ruleDataSymbol )
4178 {
4179 // InternalSolverLanguage.g:1321:2: ( ruleDataSymbol )
4180 // InternalSolverLanguage.g:1322:3: ruleDataSymbol
4181 {
4182 before(grammarAccess.getSymbolAccess().getDataSymbolParserRuleCall_2());
4183 pushFollow(FOLLOW_2);
4184 ruleDataSymbol();
4185
4186 state._fsp--;
4187
4188 after(grammarAccess.getSymbolAccess().getDataSymbolParserRuleCall_2());
4189
4190 }
4191
4192
4193 }
4194 break;
4195
4196 }
4197 }
4198 catch (RecognitionException re) {
4199 reportError(re);
4200 recover(input,re);
4201 }
4202 finally {
4203
4204 restoreStackSize(stackSize);
4205
4206 }
4207 return ;
4208 }
4209 // $ANTLR end "rule__Symbol__Alternatives"
4210
4211
4212 // $ANTLR start "rule__PartialitySymbol__Alternatives"
4213 // InternalSolverLanguage.g:1331:1: rule__PartialitySymbol__Alternatives : ( ( ruleExistSymbol ) | ( ruleEqualsSymbol ) );
4214 public final void rule__PartialitySymbol__Alternatives() throws RecognitionException {
4215
4216 int stackSize = keepStackSize();
4217
4218 try {
4219 // InternalSolverLanguage.g:1335:1: ( ( ruleExistSymbol ) | ( ruleEqualsSymbol ) )
4220 int alt7=2;
4221 int LA7_0 = input.LA(1);
4222
4223 if ( (LA7_0==20) ) {
4224 alt7=1;
4225 }
4226 else if ( (LA7_0==21) ) {
4227 alt7=2;
4228 }
4229 else {
4230 NoViableAltException nvae =
4231 new NoViableAltException("", 7, 0, input);
4232
4233 throw nvae;
4234 }
4235 switch (alt7) {
4236 case 1 :
4237 // InternalSolverLanguage.g:1336:2: ( ruleExistSymbol )
4238 {
4239 // InternalSolverLanguage.g:1336:2: ( ruleExistSymbol )
4240 // InternalSolverLanguage.g:1337:3: ruleExistSymbol
4241 {
4242 before(grammarAccess.getPartialitySymbolAccess().getExistSymbolParserRuleCall_0());
4243 pushFollow(FOLLOW_2);
4244 ruleExistSymbol();
4245
4246 state._fsp--;
4247
4248 after(grammarAccess.getPartialitySymbolAccess().getExistSymbolParserRuleCall_0());
4249
4250 }
4251
4252
4253 }
4254 break;
4255 case 2 :
4256 // InternalSolverLanguage.g:1342:2: ( ruleEqualsSymbol )
4257 {
4258 // InternalSolverLanguage.g:1342:2: ( ruleEqualsSymbol )
4259 // InternalSolverLanguage.g:1343:3: ruleEqualsSymbol
4260 {
4261 before(grammarAccess.getPartialitySymbolAccess().getEqualsSymbolParserRuleCall_1());
4262 pushFollow(FOLLOW_2);
4263 ruleEqualsSymbol();
4264
4265 state._fsp--;
4266
4267 after(grammarAccess.getPartialitySymbolAccess().getEqualsSymbolParserRuleCall_1());
4268
4269 }
4270
4271
4272 }
4273 break;
4274
4275 }
4276 }
4277 catch (RecognitionException re) {
4278 reportError(re);
4279 recover(input,re);
4280 }
4281 finally {
4282
4283 restoreStackSize(stackSize);
4284
4285 }
4286 return ;
4287 }
4288 // $ANTLR end "rule__PartialitySymbol__Alternatives"
4289
4290
4291 // $ANTLR start "rule__DataSymbol__Alternatives"
4292 // InternalSolverLanguage.g:1352:1: rule__DataSymbol__Alternatives : ( ( ruleBooleanSymbol ) | ( ruleIntegerSymbol ) | ( ruleRealSymbol ) | ( ruleStringSymbol ) );
4293 public final void rule__DataSymbol__Alternatives() throws RecognitionException {
4294
4295 int stackSize = keepStackSize();
4296
4297 try {
4298 // InternalSolverLanguage.g:1356:1: ( ( ruleBooleanSymbol ) | ( ruleIntegerSymbol ) | ( ruleRealSymbol ) | ( ruleStringSymbol ) )
4299 int alt8=4;
4300 switch ( input.LA(1) ) {
4301 case 22:
4302 {
4303 alt8=1;
4304 }
4305 break;
4306 case 23:
4307 {
4308 alt8=2;
4309 }
4310 break;
4311 case 24:
4312 {
4313 alt8=3;
4314 }
4315 break;
4316 case 25:
4317 {
4318 alt8=4;
4319 }
4320 break;
4321 default:
4322 NoViableAltException nvae =
4323 new NoViableAltException("", 8, 0, input);
4324
4325 throw nvae;
4326 }
4327
4328 switch (alt8) {
4329 case 1 :
4330 // InternalSolverLanguage.g:1357:2: ( ruleBooleanSymbol )
4331 {
4332 // InternalSolverLanguage.g:1357:2: ( ruleBooleanSymbol )
4333 // InternalSolverLanguage.g:1358:3: ruleBooleanSymbol
4334 {
4335 before(grammarAccess.getDataSymbolAccess().getBooleanSymbolParserRuleCall_0());
4336 pushFollow(FOLLOW_2);
4337 ruleBooleanSymbol();
4338
4339 state._fsp--;
4340
4341 after(grammarAccess.getDataSymbolAccess().getBooleanSymbolParserRuleCall_0());
4342
4343 }
4344
4345
4346 }
4347 break;
4348 case 2 :
4349 // InternalSolverLanguage.g:1363:2: ( ruleIntegerSymbol )
4350 {
4351 // InternalSolverLanguage.g:1363:2: ( ruleIntegerSymbol )
4352 // InternalSolverLanguage.g:1364:3: ruleIntegerSymbol
4353 {
4354 before(grammarAccess.getDataSymbolAccess().getIntegerSymbolParserRuleCall_1());
4355 pushFollow(FOLLOW_2);
4356 ruleIntegerSymbol();
4357
4358 state._fsp--;
4359
4360 after(grammarAccess.getDataSymbolAccess().getIntegerSymbolParserRuleCall_1());
4361
4362 }
4363
4364
4365 }
4366 break;
4367 case 3 :
4368 // InternalSolverLanguage.g:1369:2: ( ruleRealSymbol )
4369 {
4370 // InternalSolverLanguage.g:1369:2: ( ruleRealSymbol )
4371 // InternalSolverLanguage.g:1370:3: ruleRealSymbol
4372 {
4373 before(grammarAccess.getDataSymbolAccess().getRealSymbolParserRuleCall_2());
4374 pushFollow(FOLLOW_2);
4375 ruleRealSymbol();
4376
4377 state._fsp--;
4378
4379 after(grammarAccess.getDataSymbolAccess().getRealSymbolParserRuleCall_2());
4380
4381 }
4382
4383
4384 }
4385 break;
4386 case 4 :
4387 // InternalSolverLanguage.g:1375:2: ( ruleStringSymbol )
4388 {
4389 // InternalSolverLanguage.g:1375:2: ( ruleStringSymbol )
4390 // InternalSolverLanguage.g:1376:3: ruleStringSymbol
4391 {
4392 before(grammarAccess.getDataSymbolAccess().getStringSymbolParserRuleCall_3());
4393 pushFollow(FOLLOW_2);
4394 ruleStringSymbol();
4395
4396 state._fsp--;
4397
4398 after(grammarAccess.getDataSymbolAccess().getStringSymbolParserRuleCall_3());
4399
4400 }
4401
4402
4403 }
4404 break;
4405
4406 }
4407 }
4408 catch (RecognitionException re) {
4409 reportError(re);
4410 recover(input,re);
4411 }
4412 finally {
4413
4414 restoreStackSize(stackSize);
4415
4416 }
4417 return ;
4418 }
4419 // $ANTLR end "rule__DataSymbol__Alternatives"
4420
4421
4422 // $ANTLR start "rule__ComplexObject__Alternatives"
4423 // InternalSolverLanguage.g:1385:1: rule__ComplexObject__Alternatives : ( ( ruleObject ) | ( ruleAllInstances ) | ( ruleAllObjects ) );
4424 public final void rule__ComplexObject__Alternatives() throws RecognitionException {
4425
4426 int stackSize = keepStackSize();
4427
4428 try {
4429 // InternalSolverLanguage.g:1389:1: ( ( ruleObject ) | ( ruleAllInstances ) | ( ruleAllObjects ) )
4430 int alt9=3;
4431 switch ( input.LA(1) ) {
4432 case RULE_INT:
4433 case RULE_ID:
4434 case RULE_STRING:
4435 case 11:
4436 case 12:
4437 case 13:
4438 case 26:
4439 {
4440 alt9=1;
4441 }
4442 break;
4443 case 19:
4444 {
4445 alt9=2;
4446 }
4447 break;
4448 case 30:
4449 {
4450 alt9=3;
4451 }
4452 break;
4453 default:
4454 NoViableAltException nvae =
4455 new NoViableAltException("", 9, 0, input);
4456
4457 throw nvae;
4458 }
4459
4460 switch (alt9) {
4461 case 1 :
4462 // InternalSolverLanguage.g:1390:2: ( ruleObject )
4463 {
4464 // InternalSolverLanguage.g:1390:2: ( ruleObject )
4465 // InternalSolverLanguage.g:1391:3: ruleObject
4466 {
4467 before(grammarAccess.getComplexObjectAccess().getObjectParserRuleCall_0());
4468 pushFollow(FOLLOW_2);
4469 ruleObject();
4470
4471 state._fsp--;
4472
4473 after(grammarAccess.getComplexObjectAccess().getObjectParserRuleCall_0());
4474
4475 }
4476
4477
4478 }
4479 break;
4480 case 2 :
4481 // InternalSolverLanguage.g:1396:2: ( ruleAllInstances )
4482 {
4483 // InternalSolverLanguage.g:1396:2: ( ruleAllInstances )
4484 // InternalSolverLanguage.g:1397:3: ruleAllInstances
4485 {
4486 before(grammarAccess.getComplexObjectAccess().getAllInstancesParserRuleCall_1());
4487 pushFollow(FOLLOW_2);
4488 ruleAllInstances();
4489
4490 state._fsp--;
4491
4492 after(grammarAccess.getComplexObjectAccess().getAllInstancesParserRuleCall_1());
4493
4494 }
4495
4496
4497 }
4498 break;
4499 case 3 :
4500 // InternalSolverLanguage.g:1402:2: ( ruleAllObjects )
4501 {
4502 // InternalSolverLanguage.g:1402:2: ( ruleAllObjects )
4503 // InternalSolverLanguage.g:1403:3: ruleAllObjects
4504 {
4505 before(grammarAccess.getComplexObjectAccess().getAllObjectsParserRuleCall_2());
4506 pushFollow(FOLLOW_2);
4507 ruleAllObjects();
4508
4509 state._fsp--;
4510
4511 after(grammarAccess.getComplexObjectAccess().getAllObjectsParserRuleCall_2());
4512
4513 }
4514
4515
4516 }
4517 break;
4518
4519 }
4520 }
4521 catch (RecognitionException re) {
4522 reportError(re);
4523 recover(input,re);
4524 }
4525 finally {
4526
4527 restoreStackSize(stackSize);
4528
4529 }
4530 return ;
4531 }
4532 // $ANTLR end "rule__ComplexObject__Alternatives"
4533
4534
4535 // $ANTLR start "rule__Object__Alternatives"
4536 // InternalSolverLanguage.g:1412:1: rule__Object__Alternatives : ( ( ruleNamedObject ) | ( ruleUnnamedObject ) | ( ruleDataObject ) );
4537 public final void rule__Object__Alternatives() throws RecognitionException {
4538
4539 int stackSize = keepStackSize();
4540
4541 try {
4542 // InternalSolverLanguage.g:1416:1: ( ( ruleNamedObject ) | ( ruleUnnamedObject ) | ( ruleDataObject ) )
4543 int alt10=3;
4544 switch ( input.LA(1) ) {
4545 case 26:
4546 {
4547 alt10=1;
4548 }
4549 break;
4550 case RULE_ID:
4551 {
4552 alt10=2;
4553 }
4554 break;
4555 case RULE_INT:
4556 case RULE_STRING:
4557 case 11:
4558 case 12:
4559 case 13:
4560 {
4561 alt10=3;
4562 }
4563 break;
4564 default:
4565 NoViableAltException nvae =
4566 new NoViableAltException("", 10, 0, input);
4567
4568 throw nvae;
4569 }
4570
4571 switch (alt10) {
4572 case 1 :
4573 // InternalSolverLanguage.g:1417:2: ( ruleNamedObject )
4574 {
4575 // InternalSolverLanguage.g:1417:2: ( ruleNamedObject )
4576 // InternalSolverLanguage.g:1418:3: ruleNamedObject
4577 {
4578 before(grammarAccess.getObjectAccess().getNamedObjectParserRuleCall_0());
4579 pushFollow(FOLLOW_2);
4580 ruleNamedObject();
4581
4582 state._fsp--;
4583
4584 after(grammarAccess.getObjectAccess().getNamedObjectParserRuleCall_0());
4585
4586 }
4587
4588
4589 }
4590 break;
4591 case 2 :
4592 // InternalSolverLanguage.g:1423:2: ( ruleUnnamedObject )
4593 {
4594 // InternalSolverLanguage.g:1423:2: ( ruleUnnamedObject )
4595 // InternalSolverLanguage.g:1424:3: ruleUnnamedObject
4596 {
4597 before(grammarAccess.getObjectAccess().getUnnamedObjectParserRuleCall_1());
4598 pushFollow(FOLLOW_2);
4599 ruleUnnamedObject();
4600
4601 state._fsp--;
4602
4603 after(grammarAccess.getObjectAccess().getUnnamedObjectParserRuleCall_1());
4604
4605 }
4606
4607
4608 }
4609 break;
4610 case 3 :
4611 // InternalSolverLanguage.g:1429:2: ( ruleDataObject )
4612 {
4613 // InternalSolverLanguage.g:1429:2: ( ruleDataObject )
4614 // InternalSolverLanguage.g:1430:3: ruleDataObject
4615 {
4616 before(grammarAccess.getObjectAccess().getDataObjectParserRuleCall_2());
4617 pushFollow(FOLLOW_2);
4618 ruleDataObject();
4619
4620 state._fsp--;
4621
4622 after(grammarAccess.getObjectAccess().getDataObjectParserRuleCall_2());
4623
4624 }
4625
4626
4627 }
4628 break;
4629
4630 }
4631 }
4632 catch (RecognitionException re) {
4633 reportError(re);
4634 recover(input,re);
4635 }
4636 finally {
4637
4638 restoreStackSize(stackSize);
4639
4640 }
4641 return ;
4642 }
4643 // $ANTLR end "rule__Object__Alternatives"
4644
4645
4646 // $ANTLR start "rule__DataObject__Alternatives"
4647 // InternalSolverLanguage.g:1439:1: rule__DataObject__Alternatives : ( ( ruleBooleanObject ) | ( ruleIntObject ) | ( ruleRealObject ) | ( ruleStringObject ) );
4648 public final void rule__DataObject__Alternatives() throws RecognitionException {
4649
4650 int stackSize = keepStackSize();
4651
4652 try {
4653 // InternalSolverLanguage.g:1443:1: ( ( ruleBooleanObject ) | ( ruleIntObject ) | ( ruleRealObject ) | ( ruleStringObject ) )
4654 int alt11=4;
4655 switch ( input.LA(1) ) {
4656 case 11:
4657 case 12:
4658 {
4659 alt11=1;
4660 }
4661 break;
4662 case 13:
4663 {
4664 int LA11_2 = input.LA(2);
4665
4666 if ( (LA11_2==RULE_INT) ) {
4667 int LA11_3 = input.LA(3);
4668
4669 if ( (LA11_3==14) ) {
4670 alt11=3;
4671 }
4672 else if ( (LA11_3==EOF||(LA11_3>=RULE_INT && LA11_3<=RULE_STRING)||(LA11_3>=11 && LA11_3<=13)||(LA11_3>=18 && LA11_3<=19)||LA11_3==26||LA11_3==30) ) {
4673 alt11=2;
4674 }
4675 else {
4676 NoViableAltException nvae =
4677 new NoViableAltException("", 11, 3, input);
4678
4679 throw nvae;
4680 }
4681 }
4682 else {
4683 NoViableAltException nvae =
4684 new NoViableAltException("", 11, 2, input);
4685
4686 throw nvae;
4687 }
4688 }
4689 break;
4690 case RULE_INT:
4691 {
4692 int LA11_3 = input.LA(2);
4693
4694 if ( (LA11_3==14) ) {
4695 alt11=3;
4696 }
4697 else if ( (LA11_3==EOF||(LA11_3>=RULE_INT && LA11_3<=RULE_STRING)||(LA11_3>=11 && LA11_3<=13)||(LA11_3>=18 && LA11_3<=19)||LA11_3==26||LA11_3==30) ) {
4698 alt11=2;
4699 }
4700 else {
4701 NoViableAltException nvae =
4702 new NoViableAltException("", 11, 3, input);
4703
4704 throw nvae;
4705 }
4706 }
4707 break;
4708 case RULE_STRING:
4709 {
4710 alt11=4;
4711 }
4712 break;
4713 default:
4714 NoViableAltException nvae =
4715 new NoViableAltException("", 11, 0, input);
4716
4717 throw nvae;
4718 }
4719
4720 switch (alt11) {
4721 case 1 :
4722 // InternalSolverLanguage.g:1444:2: ( ruleBooleanObject )
4723 {
4724 // InternalSolverLanguage.g:1444:2: ( ruleBooleanObject )
4725 // InternalSolverLanguage.g:1445:3: ruleBooleanObject
4726 {
4727 before(grammarAccess.getDataObjectAccess().getBooleanObjectParserRuleCall_0());
4728 pushFollow(FOLLOW_2);
4729 ruleBooleanObject();
4730
4731 state._fsp--;
4732
4733 after(grammarAccess.getDataObjectAccess().getBooleanObjectParserRuleCall_0());
4734
4735 }
4736
4737
4738 }
4739 break;
4740 case 2 :
4741 // InternalSolverLanguage.g:1450:2: ( ruleIntObject )
4742 {
4743 // InternalSolverLanguage.g:1450:2: ( ruleIntObject )
4744 // InternalSolverLanguage.g:1451:3: ruleIntObject
4745 {
4746 before(grammarAccess.getDataObjectAccess().getIntObjectParserRuleCall_1());
4747 pushFollow(FOLLOW_2);
4748 ruleIntObject();
4749
4750 state._fsp--;
4751
4752 after(grammarAccess.getDataObjectAccess().getIntObjectParserRuleCall_1());
4753
4754 }
4755
4756
4757 }
4758 break;
4759 case 3 :
4760 // InternalSolverLanguage.g:1456:2: ( ruleRealObject )
4761 {
4762 // InternalSolverLanguage.g:1456:2: ( ruleRealObject )
4763 // InternalSolverLanguage.g:1457:3: ruleRealObject
4764 {
4765 before(grammarAccess.getDataObjectAccess().getRealObjectParserRuleCall_2());
4766 pushFollow(FOLLOW_2);
4767 ruleRealObject();
4768
4769 state._fsp--;
4770
4771 after(grammarAccess.getDataObjectAccess().getRealObjectParserRuleCall_2());
4772
4773 }
4774
4775
4776 }
4777 break;
4778 case 4 :
4779 // InternalSolverLanguage.g:1462:2: ( ruleStringObject )
4780 {
4781 // InternalSolverLanguage.g:1462:2: ( ruleStringObject )
4782 // InternalSolverLanguage.g:1463:3: ruleStringObject
4783 {
4784 before(grammarAccess.getDataObjectAccess().getStringObjectParserRuleCall_3());
4785 pushFollow(FOLLOW_2);
4786 ruleStringObject();
4787
4788 state._fsp--;
4789
4790 after(grammarAccess.getDataObjectAccess().getStringObjectParserRuleCall_3());
4791
4792 }
4793
4794
4795 }
4796 break;
4797
4798 }
4799 }
4800 catch (RecognitionException re) {
4801 reportError(re);
4802 recover(input,re);
4803 }
4804 finally {
4805
4806 restoreStackSize(stackSize);
4807
4808 }
4809 return ;
4810 }
4811 // $ANTLR end "rule__DataObject__Alternatives"
4812
4813
4814 // $ANTLR start "rule__Predicate__Alternatives"
4815 // InternalSolverLanguage.g:1472:1: rule__Predicate__Alternatives : ( ( rulePredicateSymbol ) | ( ruleErrorPredicate ) );
4816 public final void rule__Predicate__Alternatives() throws RecognitionException {
4817
4818 int stackSize = keepStackSize();
4819
4820 try {
4821 // InternalSolverLanguage.g:1476:1: ( ( rulePredicateSymbol ) | ( ruleErrorPredicate ) )
4822 int alt12=2;
4823 int LA12_0 = input.LA(1);
4824
4825 if ( (LA12_0==27) ) {
4826 alt12=1;
4827 }
4828 else if ( (LA12_0==16) ) {
4829 alt12=2;
4830 }
4831 else {
4832 NoViableAltException nvae =
4833 new NoViableAltException("", 12, 0, input);
4834
4835 throw nvae;
4836 }
4837 switch (alt12) {
4838 case 1 :
4839 // InternalSolverLanguage.g:1477:2: ( rulePredicateSymbol )
4840 {
4841 // InternalSolverLanguage.g:1477:2: ( rulePredicateSymbol )
4842 // InternalSolverLanguage.g:1478:3: rulePredicateSymbol
4843 {
4844 before(grammarAccess.getPredicateAccess().getPredicateSymbolParserRuleCall_0());
4845 pushFollow(FOLLOW_2);
4846 rulePredicateSymbol();
4847
4848 state._fsp--;
4849
4850 after(grammarAccess.getPredicateAccess().getPredicateSymbolParserRuleCall_0());
4851
4852 }
4853
4854
4855 }
4856 break;
4857 case 2 :
4858 // InternalSolverLanguage.g:1483:2: ( ruleErrorPredicate )
4859 {
4860 // InternalSolverLanguage.g:1483:2: ( ruleErrorPredicate )
4861 // InternalSolverLanguage.g:1484:3: ruleErrorPredicate
4862 {
4863 before(grammarAccess.getPredicateAccess().getErrorPredicateParserRuleCall_1());
4864 pushFollow(FOLLOW_2);
4865 ruleErrorPredicate();
4866
4867 state._fsp--;
4868
4869 after(grammarAccess.getPredicateAccess().getErrorPredicateParserRuleCall_1());
4870
4871 }
4872
4873
4874 }
4875 break;
4876
4877 }
4878 }
4879 catch (RecognitionException re) {
4880 reportError(re);
4881 recover(input,re);
4882 }
4883 finally {
4884
4885 restoreStackSize(stackSize);
4886
4887 }
4888 return ;
4889 }
4890 // $ANTLR end "rule__Predicate__Alternatives"
4891
4892
4893 // $ANTLR start "rule__PredicateSymbol__Alternatives_6"
4894 // InternalSolverLanguage.g:1493:1: rule__PredicateSymbol__Alternatives_6 : ( ( 'false' ) | ( ( rule__PredicateSymbol__Group_6_1__0 ) ) );
4895 public final void rule__PredicateSymbol__Alternatives_6() throws RecognitionException {
4896
4897 int stackSize = keepStackSize();
4898
4899 try {
4900 // InternalSolverLanguage.g:1497:1: ( ( 'false' ) | ( ( rule__PredicateSymbol__Group_6_1__0 ) ) )
4901 int alt13=2;
4902 int LA13_0 = input.LA(1);
4903
4904 if ( (LA13_0==11) ) {
4905 alt13=1;
4906 }
4907 else if ( (LA13_0==EOF||LA13_0==RULE_ID||(LA13_0>=12 && LA13_0<=14)||(LA13_0>=28 && LA13_0<=29)) ) {
4908 alt13=2;
4909 }
4910 else {
4911 NoViableAltException nvae =
4912 new NoViableAltException("", 13, 0, input);
4913
4914 throw nvae;
4915 }
4916 switch (alt13) {
4917 case 1 :
4918 // InternalSolverLanguage.g:1498:2: ( 'false' )
4919 {
4920 // InternalSolverLanguage.g:1498:2: ( 'false' )
4921 // InternalSolverLanguage.g:1499:3: 'false'
4922 {
4923 before(grammarAccess.getPredicateSymbolAccess().getFalseKeyword_6_0());
4924 match(input,11,FOLLOW_2);
4925 after(grammarAccess.getPredicateSymbolAccess().getFalseKeyword_6_0());
4926
4927 }
4928
4929
4930 }
4931 break;
4932 case 2 :
4933 // InternalSolverLanguage.g:1504:2: ( ( rule__PredicateSymbol__Group_6_1__0 ) )
4934 {
4935 // InternalSolverLanguage.g:1504:2: ( ( rule__PredicateSymbol__Group_6_1__0 ) )
4936 // InternalSolverLanguage.g:1505:3: ( rule__PredicateSymbol__Group_6_1__0 )
4937 {
4938 before(grammarAccess.getPredicateSymbolAccess().getGroup_6_1());
4939 // InternalSolverLanguage.g:1506:3: ( rule__PredicateSymbol__Group_6_1__0 )
4940 // InternalSolverLanguage.g:1506:4: rule__PredicateSymbol__Group_6_1__0
4941 {
4942 pushFollow(FOLLOW_2);
4943 rule__PredicateSymbol__Group_6_1__0();
4944
4945 state._fsp--;
4946
4947
4948 }
4949
4950 after(grammarAccess.getPredicateSymbolAccess().getGroup_6_1());
4951
4952 }
4953
4954
4955 }
4956 break;
4957
4958 }
4959 }
4960 catch (RecognitionException re) {
4961 reportError(re);
4962 recover(input,re);
4963 }
4964 finally {
4965
4966 restoreStackSize(stackSize);
4967
4968 }
4969 return ;
4970 }
4971 // $ANTLR end "rule__PredicateSymbol__Alternatives_6"
4972
4973
4974 // $ANTLR start "rule__ErrorPredicate__Alternatives_5"
4975 // InternalSolverLanguage.g:1514:1: rule__ErrorPredicate__Alternatives_5 : ( ( 'false' ) | ( ( rule__ErrorPredicate__Group_5_1__0 ) ) );
4976 public final void rule__ErrorPredicate__Alternatives_5() throws RecognitionException {
4977
4978 int stackSize = keepStackSize();
4979
4980 try {
4981 // InternalSolverLanguage.g:1518:1: ( ( 'false' ) | ( ( rule__ErrorPredicate__Group_5_1__0 ) ) )
4982 int alt14=2;
4983 int LA14_0 = input.LA(1);
4984
4985 if ( (LA14_0==11) ) {
4986 alt14=1;
4987 }
4988 else if ( (LA14_0==EOF||LA14_0==RULE_ID||(LA14_0>=12 && LA14_0<=14)||(LA14_0>=28 && LA14_0<=29)) ) {
4989 alt14=2;
4990 }
4991 else {
4992 NoViableAltException nvae =
4993 new NoViableAltException("", 14, 0, input);
4994
4995 throw nvae;
4996 }
4997 switch (alt14) {
4998 case 1 :
4999 // InternalSolverLanguage.g:1519:2: ( 'false' )
5000 {
5001 // InternalSolverLanguage.g:1519:2: ( 'false' )
5002 // InternalSolverLanguage.g:1520:3: 'false'
5003 {
5004 before(grammarAccess.getErrorPredicateAccess().getFalseKeyword_5_0());
5005 match(input,11,FOLLOW_2);
5006 after(grammarAccess.getErrorPredicateAccess().getFalseKeyword_5_0());
5007
5008 }
5009
5010
5011 }
5012 break;
5013 case 2 :
5014 // InternalSolverLanguage.g:1525:2: ( ( rule__ErrorPredicate__Group_5_1__0 ) )
5015 {
5016 // InternalSolverLanguage.g:1525:2: ( ( rule__ErrorPredicate__Group_5_1__0 ) )
5017 // InternalSolverLanguage.g:1526:3: ( rule__ErrorPredicate__Group_5_1__0 )
5018 {
5019 before(grammarAccess.getErrorPredicateAccess().getGroup_5_1());
5020 // InternalSolverLanguage.g:1527:3: ( rule__ErrorPredicate__Group_5_1__0 )
5021 // InternalSolverLanguage.g:1527:4: rule__ErrorPredicate__Group_5_1__0
5022 {
5023 pushFollow(FOLLOW_2);
5024 rule__ErrorPredicate__Group_5_1__0();
5025
5026 state._fsp--;
5027
5028
5029 }
5030
5031 after(grammarAccess.getErrorPredicateAccess().getGroup_5_1());
5032
5033 }
5034
5035
5036 }
5037 break;
5038
5039 }
5040 }
5041 catch (RecognitionException re) {
5042 reportError(re);
5043 recover(input,re);
5044 }
5045 finally {
5046
5047 restoreStackSize(stackSize);
5048
5049 }
5050 return ;
5051 }
5052 // $ANTLR end "rule__ErrorPredicate__Alternatives_5"
5053
5054
5055 // $ANTLR start "rule__PatternBody__Alternatives_1"
5056 // InternalSolverLanguage.g:1535:1: rule__PatternBody__Alternatives_1 : ( ( 'true' ) | ( ( rule__PatternBody__ConstraintsAssignment_1_1 )* ) );
5057 public final void rule__PatternBody__Alternatives_1() throws RecognitionException {
5058
5059 int stackSize = keepStackSize();
5060
5061 try {
5062 // InternalSolverLanguage.g:1539:1: ( ( 'true' ) | ( ( rule__PatternBody__ConstraintsAssignment_1_1 )* ) )
5063 int alt16=2;
5064 int LA16_0 = input.LA(1);
5065
5066 if ( (LA16_0==12) ) {
5067 alt16=1;
5068 }
5069 else if ( (LA16_0==EOF||LA16_0==RULE_ID||(LA16_0>=13 && LA16_0<=14)||(LA16_0>=28 && LA16_0<=29)) ) {
5070 alt16=2;
5071 }
5072 else {
5073 NoViableAltException nvae =
5074 new NoViableAltException("", 16, 0, input);
5075
5076 throw nvae;
5077 }
5078 switch (alt16) {
5079 case 1 :
5080 // InternalSolverLanguage.g:1540:2: ( 'true' )
5081 {
5082 // InternalSolverLanguage.g:1540:2: ( 'true' )
5083 // InternalSolverLanguage.g:1541:3: 'true'
5084 {
5085 before(grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0());
5086 match(input,12,FOLLOW_2);
5087 after(grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0());
5088
5089 }
5090
5091
5092 }
5093 break;
5094 case 2 :
5095 // InternalSolverLanguage.g:1546:2: ( ( rule__PatternBody__ConstraintsAssignment_1_1 )* )
5096 {
5097 // InternalSolverLanguage.g:1546:2: ( ( rule__PatternBody__ConstraintsAssignment_1_1 )* )
5098 // InternalSolverLanguage.g:1547:3: ( rule__PatternBody__ConstraintsAssignment_1_1 )*
5099 {
5100 before(grammarAccess.getPatternBodyAccess().getConstraintsAssignment_1_1());
5101 // InternalSolverLanguage.g:1548:3: ( rule__PatternBody__ConstraintsAssignment_1_1 )*
5102 loop15:
5103 do {
5104 int alt15=2;
5105 int LA15_0 = input.LA(1);
5106
5107 if ( (LA15_0==RULE_ID||LA15_0==13||LA15_0==29) ) {
5108 alt15=1;
5109 }
5110
5111
5112 switch (alt15) {
5113 case 1 :
5114 // InternalSolverLanguage.g:1548:4: rule__PatternBody__ConstraintsAssignment_1_1
5115 {
5116 pushFollow(FOLLOW_4);
5117 rule__PatternBody__ConstraintsAssignment_1_1();
5118
5119 state._fsp--;
5120
5121
5122 }
5123 break;
5124
5125 default :
5126 break loop15;
5127 }
5128 } while (true);
5129
5130 after(grammarAccess.getPatternBodyAccess().getConstraintsAssignment_1_1());
5131
5132 }
5133
5134
5135 }
5136 break;
5137
5138 }
5139 }
5140 catch (RecognitionException re) {
5141 reportError(re);
5142 recover(input,re);
5143 }
5144 finally {
5145
5146 restoreStackSize(stackSize);
5147
5148 }
5149 return ;
5150 }
5151 // $ANTLR end "rule__PatternBody__Alternatives_1"
5152
5153
5154 // $ANTLR start "rule__Polarity__Alternatives"
5155 // InternalSolverLanguage.g:1556:1: rule__Polarity__Alternatives : ( ( ( rule__Polarity__Group_0__0 ) ) | ( ( rule__Polarity__Group_1__0 ) ) );
5156 public final void rule__Polarity__Alternatives() throws RecognitionException {
5157
5158 int stackSize = keepStackSize();
5159
5160 try {
5161 // InternalSolverLanguage.g:1560:1: ( ( ( rule__Polarity__Group_0__0 ) ) | ( ( rule__Polarity__Group_1__0 ) ) )
5162 int alt17=2;
5163 int LA17_0 = input.LA(1);
5164
5165 if ( (LA17_0==29) ) {
5166 alt17=1;
5167 }
5168 else if ( (LA17_0==13) ) {
5169 alt17=2;
5170 }
5171 else {
5172 NoViableAltException nvae =
5173 new NoViableAltException("", 17, 0, input);
5174
5175 throw nvae;
5176 }
5177 switch (alt17) {
5178 case 1 :
5179 // InternalSolverLanguage.g:1561:2: ( ( rule__Polarity__Group_0__0 ) )
5180 {
5181 // InternalSolverLanguage.g:1561:2: ( ( rule__Polarity__Group_0__0 ) )
5182 // InternalSolverLanguage.g:1562:3: ( rule__Polarity__Group_0__0 )
5183 {
5184 before(grammarAccess.getPolarityAccess().getGroup_0());
5185 // InternalSolverLanguage.g:1563:3: ( rule__Polarity__Group_0__0 )
5186 // InternalSolverLanguage.g:1563:4: rule__Polarity__Group_0__0
5187 {
5188 pushFollow(FOLLOW_2);
5189 rule__Polarity__Group_0__0();
5190
5191 state._fsp--;
5192
5193
5194 }
5195
5196 after(grammarAccess.getPolarityAccess().getGroup_0());
5197
5198 }
5199
5200
5201 }
5202 break;
5203 case 2 :
5204 // InternalSolverLanguage.g:1567:2: ( ( rule__Polarity__Group_1__0 ) )
5205 {
5206 // InternalSolverLanguage.g:1567:2: ( ( rule__Polarity__Group_1__0 ) )
5207 // InternalSolverLanguage.g:1568:3: ( rule__Polarity__Group_1__0 )
5208 {
5209 before(grammarAccess.getPolarityAccess().getGroup_1());
5210 // InternalSolverLanguage.g:1569:3: ( rule__Polarity__Group_1__0 )
5211 // InternalSolverLanguage.g:1569:4: rule__Polarity__Group_1__0
5212 {
5213 pushFollow(FOLLOW_2);
5214 rule__Polarity__Group_1__0();
5215
5216 state._fsp--;
5217
5218
5219 }
5220
5221 after(grammarAccess.getPolarityAccess().getGroup_1());
5222
5223 }
5224
5225
5226 }
5227 break;
5228
5229 }
5230 }
5231 catch (RecognitionException re) {
5232 reportError(re);
5233 recover(input,re);
5234 }
5235 finally {
5236
5237 restoreStackSize(stackSize);
5238
5239 }
5240 return ;
5241 }
5242 // $ANTLR end "rule__Polarity__Alternatives"
5243
5244
5245 // $ANTLR start "rule__Constraint__Alternatives_2"
5246 // InternalSolverLanguage.g:1577:1: rule__Constraint__Alternatives_2 : ( ( ( rule__Constraint__Group_2_0__0 ) ) | ( ( rule__Constraint__Group_2_1__0 ) ) );
5247 public final void rule__Constraint__Alternatives_2() throws RecognitionException {
5248
5249 int stackSize = keepStackSize();
5250
5251 try {
5252 // InternalSolverLanguage.g:1581:1: ( ( ( rule__Constraint__Group_2_0__0 ) ) | ( ( rule__Constraint__Group_2_1__0 ) ) )
5253 int alt18=2;
5254 int LA18_0 = input.LA(1);
5255
5256 if ( (LA18_0==17) ) {
5257 alt18=1;
5258 }
5259 else if ( ((LA18_0>=29 && LA18_0<=30)) ) {
5260 alt18=2;
5261 }
5262 else {
5263 NoViableAltException nvae =
5264 new NoViableAltException("", 18, 0, input);
5265
5266 throw nvae;
5267 }
5268 switch (alt18) {
5269 case 1 :
5270 // InternalSolverLanguage.g:1582:2: ( ( rule__Constraint__Group_2_0__0 ) )
5271 {
5272 // InternalSolverLanguage.g:1582:2: ( ( rule__Constraint__Group_2_0__0 ) )
5273 // InternalSolverLanguage.g:1583:3: ( rule__Constraint__Group_2_0__0 )
5274 {
5275 before(grammarAccess.getConstraintAccess().getGroup_2_0());
5276 // InternalSolverLanguage.g:1584:3: ( rule__Constraint__Group_2_0__0 )
5277 // InternalSolverLanguage.g:1584:4: rule__Constraint__Group_2_0__0
5278 {
5279 pushFollow(FOLLOW_2);
5280 rule__Constraint__Group_2_0__0();
5281
5282 state._fsp--;
5283
5284
5285 }
5286
5287 after(grammarAccess.getConstraintAccess().getGroup_2_0());
5288
5289 }
5290
5291
5292 }
5293 break;
5294 case 2 :
5295 // InternalSolverLanguage.g:1588:2: ( ( rule__Constraint__Group_2_1__0 ) )
5296 {
5297 // InternalSolverLanguage.g:1588:2: ( ( rule__Constraint__Group_2_1__0 ) )
5298 // InternalSolverLanguage.g:1589:3: ( rule__Constraint__Group_2_1__0 )
5299 {
5300 before(grammarAccess.getConstraintAccess().getGroup_2_1());
5301 // InternalSolverLanguage.g:1590:3: ( rule__Constraint__Group_2_1__0 )
5302 // InternalSolverLanguage.g:1590:4: rule__Constraint__Group_2_1__0
5303 {
5304 pushFollow(FOLLOW_2);
5305 rule__Constraint__Group_2_1__0();
5306
5307 state._fsp--;
5308
5309
5310 }
5311
5312 after(grammarAccess.getConstraintAccess().getGroup_2_1());
5313
5314 }
5315
5316
5317 }
5318 break;
5319
5320 }
5321 }
5322 catch (RecognitionException re) {
5323 reportError(re);
5324 recover(input,re);
5325 }
5326 finally {
5327
5328 restoreStackSize(stackSize);
5329
5330 }
5331 return ;
5332 }
5333 // $ANTLR end "rule__Constraint__Alternatives_2"
5334
5335
5336 // $ANTLR start "rule__ClosureType__Alternatives"
5337 // InternalSolverLanguage.g:1598:1: rule__ClosureType__Alternatives : ( ( ( rule__ClosureType__Group_0__0 ) ) | ( ( rule__ClosureType__Group_1__0 ) ) );
5338 public final void rule__ClosureType__Alternatives() throws RecognitionException {
5339
5340 int stackSize = keepStackSize();
5341
5342 try {
5343 // InternalSolverLanguage.g:1602:1: ( ( ( rule__ClosureType__Group_0__0 ) ) | ( ( rule__ClosureType__Group_1__0 ) ) )
5344 int alt19=2;
5345 int LA19_0 = input.LA(1);
5346
5347 if ( (LA19_0==30) ) {
5348 alt19=1;
5349 }
5350 else if ( (LA19_0==29) ) {
5351 alt19=2;
5352 }
5353 else {
5354 NoViableAltException nvae =
5355 new NoViableAltException("", 19, 0, input);
5356
5357 throw nvae;
5358 }
5359 switch (alt19) {
5360 case 1 :
5361 // InternalSolverLanguage.g:1603:2: ( ( rule__ClosureType__Group_0__0 ) )
5362 {
5363 // InternalSolverLanguage.g:1603:2: ( ( rule__ClosureType__Group_0__0 ) )
5364 // InternalSolverLanguage.g:1604:3: ( rule__ClosureType__Group_0__0 )
5365 {
5366 before(grammarAccess.getClosureTypeAccess().getGroup_0());
5367 // InternalSolverLanguage.g:1605:3: ( rule__ClosureType__Group_0__0 )
5368 // InternalSolverLanguage.g:1605:4: rule__ClosureType__Group_0__0
5369 {
5370 pushFollow(FOLLOW_2);
5371 rule__ClosureType__Group_0__0();
5372
5373 state._fsp--;
5374
5375
5376 }
5377
5378 after(grammarAccess.getClosureTypeAccess().getGroup_0());
5379
5380 }
5381
5382
5383 }
5384 break;
5385 case 2 :
5386 // InternalSolverLanguage.g:1609:2: ( ( rule__ClosureType__Group_1__0 ) )
5387 {
5388 // InternalSolverLanguage.g:1609:2: ( ( rule__ClosureType__Group_1__0 ) )
5389 // InternalSolverLanguage.g:1610:3: ( rule__ClosureType__Group_1__0 )
5390 {
5391 before(grammarAccess.getClosureTypeAccess().getGroup_1());
5392 // InternalSolverLanguage.g:1611:3: ( rule__ClosureType__Group_1__0 )
5393 // InternalSolverLanguage.g:1611:4: rule__ClosureType__Group_1__0
5394 {
5395 pushFollow(FOLLOW_2);
5396 rule__ClosureType__Group_1__0();
5397
5398 state._fsp--;
5399
5400
5401 }
5402
5403 after(grammarAccess.getClosureTypeAccess().getGroup_1());
5404
5405 }
5406
5407
5408 }
5409 break;
5410
5411 }
5412 }
5413 catch (RecognitionException re) {
5414 reportError(re);
5415 recover(input,re);
5416 }
5417 finally {
5418
5419 restoreStackSize(stackSize);
5420
5421 }
5422 return ;
5423 }
5424 // $ANTLR end "rule__ClosureType__Alternatives"
5425
5426
5427 // $ANTLR start "rule__Literal__Alternatives"
5428 // InternalSolverLanguage.g:1619:1: rule__Literal__Alternatives : ( ( ruleVariable ) | ( ruleDataObject ) );
5429 public final void rule__Literal__Alternatives() throws RecognitionException {
5430
5431 int stackSize = keepStackSize();
5432
5433 try {
5434 // InternalSolverLanguage.g:1623:1: ( ( ruleVariable ) | ( ruleDataObject ) )
5435 int alt20=2;
5436 int LA20_0 = input.LA(1);
5437
5438 if ( (LA20_0==RULE_ID) ) {
5439 alt20=1;
5440 }
5441 else if ( (LA20_0==RULE_INT||LA20_0==RULE_STRING||(LA20_0>=11 && LA20_0<=13)) ) {
5442 alt20=2;
5443 }
5444 else {
5445 NoViableAltException nvae =
5446 new NoViableAltException("", 20, 0, input);
5447
5448 throw nvae;
5449 }
5450 switch (alt20) {
5451 case 1 :
5452 // InternalSolverLanguage.g:1624:2: ( ruleVariable )
5453 {
5454 // InternalSolverLanguage.g:1624:2: ( ruleVariable )
5455 // InternalSolverLanguage.g:1625:3: ruleVariable
5456 {
5457 before(grammarAccess.getLiteralAccess().getVariableParserRuleCall_0());
5458 pushFollow(FOLLOW_2);
5459 ruleVariable();
5460
5461 state._fsp--;
5462
5463 after(grammarAccess.getLiteralAccess().getVariableParserRuleCall_0());
5464
5465 }
5466
5467
5468 }
5469 break;
5470 case 2 :
5471 // InternalSolverLanguage.g:1630:2: ( ruleDataObject )
5472 {
5473 // InternalSolverLanguage.g:1630:2: ( ruleDataObject )
5474 // InternalSolverLanguage.g:1631:3: ruleDataObject
5475 {
5476 before(grammarAccess.getLiteralAccess().getDataObjectParserRuleCall_1());
5477 pushFollow(FOLLOW_2);
5478 ruleDataObject();
5479
5480 state._fsp--;
5481
5482 after(grammarAccess.getLiteralAccess().getDataObjectParserRuleCall_1());
5483
5484 }
5485
5486
5487 }
5488 break;
5489
5490 }
5491 }
5492 catch (RecognitionException re) {
5493 reportError(re);
5494 recover(input,re);
5495 }
5496 finally {
5497
5498 restoreStackSize(stackSize);
5499
5500 }
5501 return ;
5502 }
5503 // $ANTLR end "rule__Literal__Alternatives"
5504
5505
5506 // $ANTLR start "rule__CDInterpretation__Alternatives"
5507 // InternalSolverLanguage.g:1640:1: rule__CDInterpretation__Alternatives : ( ( ruleClassInterpretation ) | ( ruleEnumInterpretation ) | ( ruleGlobalRelationInterpretation ) );
5508 public final void rule__CDInterpretation__Alternatives() throws RecognitionException {
5509
5510 int stackSize = keepStackSize();
5511
5512 try {
5513 // InternalSolverLanguage.g:1644:1: ( ( ruleClassInterpretation ) | ( ruleEnumInterpretation ) | ( ruleGlobalRelationInterpretation ) )
5514 int alt21=3;
5515 switch ( input.LA(1) ) {
5516 case 39:
5517 {
5518 alt21=1;
5519 }
5520 break;
5521 case 36:
5522 {
5523 alt21=2;
5524 }
5525 break;
5526 case 40:
5527 {
5528 alt21=3;
5529 }
5530 break;
5531 default:
5532 NoViableAltException nvae =
5533 new NoViableAltException("", 21, 0, input);
5534
5535 throw nvae;
5536 }
5537
5538 switch (alt21) {
5539 case 1 :
5540 // InternalSolverLanguage.g:1645:2: ( ruleClassInterpretation )
5541 {
5542 // InternalSolverLanguage.g:1645:2: ( ruleClassInterpretation )
5543 // InternalSolverLanguage.g:1646:3: ruleClassInterpretation
5544 {
5545 before(grammarAccess.getCDInterpretationAccess().getClassInterpretationParserRuleCall_0());
5546 pushFollow(FOLLOW_2);
5547 ruleClassInterpretation();
5548
5549 state._fsp--;
5550
5551 after(grammarAccess.getCDInterpretationAccess().getClassInterpretationParserRuleCall_0());
5552
5553 }
5554
5555
5556 }
5557 break;
5558 case 2 :
5559 // InternalSolverLanguage.g:1651:2: ( ruleEnumInterpretation )
5560 {
5561 // InternalSolverLanguage.g:1651:2: ( ruleEnumInterpretation )
5562 // InternalSolverLanguage.g:1652:3: ruleEnumInterpretation
5563 {
5564 before(grammarAccess.getCDInterpretationAccess().getEnumInterpretationParserRuleCall_1());
5565 pushFollow(FOLLOW_2);
5566 ruleEnumInterpretation();
5567
5568 state._fsp--;
5569
5570 after(grammarAccess.getCDInterpretationAccess().getEnumInterpretationParserRuleCall_1());
5571
5572 }
5573
5574
5575 }
5576 break;
5577 case 3 :
5578 // InternalSolverLanguage.g:1657:2: ( ruleGlobalRelationInterpretation )
5579 {
5580 // InternalSolverLanguage.g:1657:2: ( ruleGlobalRelationInterpretation )
5581 // InternalSolverLanguage.g:1658:3: ruleGlobalRelationInterpretation
5582 {
5583 before(grammarAccess.getCDInterpretationAccess().getGlobalRelationInterpretationParserRuleCall_2());
5584 pushFollow(FOLLOW_2);
5585 ruleGlobalRelationInterpretation();
5586
5587 state._fsp--;
5588
5589 after(grammarAccess.getCDInterpretationAccess().getGlobalRelationInterpretationParserRuleCall_2());
5590
5591 }
5592
5593
5594 }
5595 break;
5596
5597 }
5598 }
5599 catch (RecognitionException re) {
5600 reportError(re);
5601 recover(input,re);
5602 }
5603 finally {
5604
5605 restoreStackSize(stackSize);
5606
5607 }
5608 return ;
5609 }
5610 // $ANTLR end "rule__CDInterpretation__Alternatives"
5611
5612
5613 // $ANTLR start "rule__MultiplicityDefinition__Alternatives_2"
5614 // InternalSolverLanguage.g:1667:1: rule__MultiplicityDefinition__Alternatives_2 : ( ( ( rule__MultiplicityDefinition__UpperAssignment_2_0 ) ) | ( ( rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 ) ) );
5615 public final void rule__MultiplicityDefinition__Alternatives_2() throws RecognitionException {
5616
5617 int stackSize = keepStackSize();
5618
5619 try {
5620 // InternalSolverLanguage.g:1671:1: ( ( ( rule__MultiplicityDefinition__UpperAssignment_2_0 ) ) | ( ( rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 ) ) )
5621 int alt22=2;
5622 int LA22_0 = input.LA(1);
5623
5624 if ( (LA22_0==RULE_INT) ) {
5625 alt22=1;
5626 }
5627 else if ( (LA22_0==30) ) {
5628 alt22=2;
5629 }
5630 else {
5631 NoViableAltException nvae =
5632 new NoViableAltException("", 22, 0, input);
5633
5634 throw nvae;
5635 }
5636 switch (alt22) {
5637 case 1 :
5638 // InternalSolverLanguage.g:1672:2: ( ( rule__MultiplicityDefinition__UpperAssignment_2_0 ) )
5639 {
5640 // InternalSolverLanguage.g:1672:2: ( ( rule__MultiplicityDefinition__UpperAssignment_2_0 ) )
5641 // InternalSolverLanguage.g:1673:3: ( rule__MultiplicityDefinition__UpperAssignment_2_0 )
5642 {
5643 before(grammarAccess.getMultiplicityDefinitionAccess().getUpperAssignment_2_0());
5644 // InternalSolverLanguage.g:1674:3: ( rule__MultiplicityDefinition__UpperAssignment_2_0 )
5645 // InternalSolverLanguage.g:1674:4: rule__MultiplicityDefinition__UpperAssignment_2_0
5646 {
5647 pushFollow(FOLLOW_2);
5648 rule__MultiplicityDefinition__UpperAssignment_2_0();
5649
5650 state._fsp--;
5651
5652
5653 }
5654
5655 after(grammarAccess.getMultiplicityDefinitionAccess().getUpperAssignment_2_0());
5656
5657 }
5658
5659
5660 }
5661 break;
5662 case 2 :
5663 // InternalSolverLanguage.g:1678:2: ( ( rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 ) )
5664 {
5665 // InternalSolverLanguage.g:1678:2: ( ( rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 ) )
5666 // InternalSolverLanguage.g:1679:3: ( rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 )
5667 {
5668 before(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAssignment_2_1());
5669 // InternalSolverLanguage.g:1680:3: ( rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 )
5670 // InternalSolverLanguage.g:1680:4: rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1
5671 {
5672 pushFollow(FOLLOW_2);
5673 rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1();
5674
5675 state._fsp--;
5676
5677
5678 }
5679
5680 after(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAssignment_2_1());
5681
5682 }
5683
5684
5685 }
5686 break;
5687
5688 }
5689 }
5690 catch (RecognitionException re) {
5691 reportError(re);
5692 recover(input,re);
5693 }
5694 finally {
5695
5696 restoreStackSize(stackSize);
5697
5698 }
5699 return ;
5700 }
5701 // $ANTLR end "rule__MultiplicityDefinition__Alternatives_2"
5702
5703
5704 // $ANTLR start "rule__REALLiteral__Group__0"
5705 // InternalSolverLanguage.g:1688:1: rule__REALLiteral__Group__0 : rule__REALLiteral__Group__0__Impl rule__REALLiteral__Group__1 ;
5706 public final void rule__REALLiteral__Group__0() throws RecognitionException {
5707
5708 int stackSize = keepStackSize();
5709
5710 try {
5711 // InternalSolverLanguage.g:1692:1: ( rule__REALLiteral__Group__0__Impl rule__REALLiteral__Group__1 )
5712 // InternalSolverLanguage.g:1693:2: rule__REALLiteral__Group__0__Impl rule__REALLiteral__Group__1
5713 {
5714 pushFollow(FOLLOW_5);
5715 rule__REALLiteral__Group__0__Impl();
5716
5717 state._fsp--;
5718
5719 pushFollow(FOLLOW_2);
5720 rule__REALLiteral__Group__1();
5721
5722 state._fsp--;
5723
5724
5725 }
5726
5727 }
5728 catch (RecognitionException re) {
5729 reportError(re);
5730 recover(input,re);
5731 }
5732 finally {
5733
5734 restoreStackSize(stackSize);
5735
5736 }
5737 return ;
5738 }
5739 // $ANTLR end "rule__REALLiteral__Group__0"
5740
5741
5742 // $ANTLR start "rule__REALLiteral__Group__0__Impl"
5743 // InternalSolverLanguage.g:1700:1: rule__REALLiteral__Group__0__Impl : ( ( '-' )? ) ;
5744 public final void rule__REALLiteral__Group__0__Impl() throws RecognitionException {
5745
5746 int stackSize = keepStackSize();
5747
5748 try {
5749 // InternalSolverLanguage.g:1704:1: ( ( ( '-' )? ) )
5750 // InternalSolverLanguage.g:1705:1: ( ( '-' )? )
5751 {
5752 // InternalSolverLanguage.g:1705:1: ( ( '-' )? )
5753 // InternalSolverLanguage.g:1706:2: ( '-' )?
5754 {
5755 before(grammarAccess.getREALLiteralAccess().getHyphenMinusKeyword_0());
5756 // InternalSolverLanguage.g:1707:2: ( '-' )?
5757 int alt23=2;
5758 int LA23_0 = input.LA(1);
5759
5760 if ( (LA23_0==13) ) {
5761 alt23=1;
5762 }
5763 switch (alt23) {
5764 case 1 :
5765 // InternalSolverLanguage.g:1707:3: '-'
5766 {
5767 match(input,13,FOLLOW_2);
5768
5769 }
5770 break;
5771
5772 }
5773
5774 after(grammarAccess.getREALLiteralAccess().getHyphenMinusKeyword_0());
5775
5776 }
5777
5778
5779 }
5780
5781 }
5782 catch (RecognitionException re) {
5783 reportError(re);
5784 recover(input,re);
5785 }
5786 finally {
5787
5788 restoreStackSize(stackSize);
5789
5790 }
5791 return ;
5792 }
5793 // $ANTLR end "rule__REALLiteral__Group__0__Impl"
5794
5795
5796 // $ANTLR start "rule__REALLiteral__Group__1"
5797 // InternalSolverLanguage.g:1715:1: rule__REALLiteral__Group__1 : rule__REALLiteral__Group__1__Impl rule__REALLiteral__Group__2 ;
5798 public final void rule__REALLiteral__Group__1() throws RecognitionException {
5799
5800 int stackSize = keepStackSize();
5801
5802 try {
5803 // InternalSolverLanguage.g:1719:1: ( rule__REALLiteral__Group__1__Impl rule__REALLiteral__Group__2 )
5804 // InternalSolverLanguage.g:1720:2: rule__REALLiteral__Group__1__Impl rule__REALLiteral__Group__2
5805 {
5806 pushFollow(FOLLOW_6);
5807 rule__REALLiteral__Group__1__Impl();
5808
5809 state._fsp--;
5810
5811 pushFollow(FOLLOW_2);
5812 rule__REALLiteral__Group__2();
5813
5814 state._fsp--;
5815
5816
5817 }
5818
5819 }
5820 catch (RecognitionException re) {
5821 reportError(re);
5822 recover(input,re);
5823 }
5824 finally {
5825
5826 restoreStackSize(stackSize);
5827
5828 }
5829 return ;
5830 }
5831 // $ANTLR end "rule__REALLiteral__Group__1"
5832
5833
5834 // $ANTLR start "rule__REALLiteral__Group__1__Impl"
5835 // InternalSolverLanguage.g:1727:1: rule__REALLiteral__Group__1__Impl : ( RULE_INT ) ;
5836 public final void rule__REALLiteral__Group__1__Impl() throws RecognitionException {
5837
5838 int stackSize = keepStackSize();
5839
5840 try {
5841 // InternalSolverLanguage.g:1731:1: ( ( RULE_INT ) )
5842 // InternalSolverLanguage.g:1732:1: ( RULE_INT )
5843 {
5844 // InternalSolverLanguage.g:1732:1: ( RULE_INT )
5845 // InternalSolverLanguage.g:1733:2: RULE_INT
5846 {
5847 before(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_1());
5848 match(input,RULE_INT,FOLLOW_2);
5849 after(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_1());
5850
5851 }
5852
5853
5854 }
5855
5856 }
5857 catch (RecognitionException re) {
5858 reportError(re);
5859 recover(input,re);
5860 }
5861 finally {
5862
5863 restoreStackSize(stackSize);
5864
5865 }
5866 return ;
5867 }
5868 // $ANTLR end "rule__REALLiteral__Group__1__Impl"
5869
5870
5871 // $ANTLR start "rule__REALLiteral__Group__2"
5872 // InternalSolverLanguage.g:1742:1: rule__REALLiteral__Group__2 : rule__REALLiteral__Group__2__Impl rule__REALLiteral__Group__3 ;
5873 public final void rule__REALLiteral__Group__2() throws RecognitionException {
5874
5875 int stackSize = keepStackSize();
5876
5877 try {
5878 // InternalSolverLanguage.g:1746:1: ( rule__REALLiteral__Group__2__Impl rule__REALLiteral__Group__3 )
5879 // InternalSolverLanguage.g:1747:2: rule__REALLiteral__Group__2__Impl rule__REALLiteral__Group__3
5880 {
5881 pushFollow(FOLLOW_5);
5882 rule__REALLiteral__Group__2__Impl();
5883
5884 state._fsp--;
5885
5886 pushFollow(FOLLOW_2);
5887 rule__REALLiteral__Group__3();
5888
5889 state._fsp--;
5890
5891
5892 }
5893
5894 }
5895 catch (RecognitionException re) {
5896 reportError(re);
5897 recover(input,re);
5898 }
5899 finally {
5900
5901 restoreStackSize(stackSize);
5902
5903 }
5904 return ;
5905 }
5906 // $ANTLR end "rule__REALLiteral__Group__2"
5907
5908
5909 // $ANTLR start "rule__REALLiteral__Group__2__Impl"
5910 // InternalSolverLanguage.g:1754:1: rule__REALLiteral__Group__2__Impl : ( '.' ) ;
5911 public final void rule__REALLiteral__Group__2__Impl() throws RecognitionException {
5912
5913 int stackSize = keepStackSize();
5914
5915 try {
5916 // InternalSolverLanguage.g:1758:1: ( ( '.' ) )
5917 // InternalSolverLanguage.g:1759:1: ( '.' )
5918 {
5919 // InternalSolverLanguage.g:1759:1: ( '.' )
5920 // InternalSolverLanguage.g:1760:2: '.'
5921 {
5922 before(grammarAccess.getREALLiteralAccess().getFullStopKeyword_2());
5923 match(input,14,FOLLOW_2);
5924 after(grammarAccess.getREALLiteralAccess().getFullStopKeyword_2());
5925
5926 }
5927
5928
5929 }
5930
5931 }
5932 catch (RecognitionException re) {
5933 reportError(re);
5934 recover(input,re);
5935 }
5936 finally {
5937
5938 restoreStackSize(stackSize);
5939
5940 }
5941 return ;
5942 }
5943 // $ANTLR end "rule__REALLiteral__Group__2__Impl"
5944
5945
5946 // $ANTLR start "rule__REALLiteral__Group__3"
5947 // InternalSolverLanguage.g:1769:1: rule__REALLiteral__Group__3 : rule__REALLiteral__Group__3__Impl ;
5948 public final void rule__REALLiteral__Group__3() throws RecognitionException {
5949
5950 int stackSize = keepStackSize();
5951
5952 try {
5953 // InternalSolverLanguage.g:1773:1: ( rule__REALLiteral__Group__3__Impl )
5954 // InternalSolverLanguage.g:1774:2: rule__REALLiteral__Group__3__Impl
5955 {
5956 pushFollow(FOLLOW_2);
5957 rule__REALLiteral__Group__3__Impl();
5958
5959 state._fsp--;
5960
5961
5962 }
5963
5964 }
5965 catch (RecognitionException re) {
5966 reportError(re);
5967 recover(input,re);
5968 }
5969 finally {
5970
5971 restoreStackSize(stackSize);
5972
5973 }
5974 return ;
5975 }
5976 // $ANTLR end "rule__REALLiteral__Group__3"
5977
5978
5979 // $ANTLR start "rule__REALLiteral__Group__3__Impl"
5980 // InternalSolverLanguage.g:1780:1: rule__REALLiteral__Group__3__Impl : ( RULE_INT ) ;
5981 public final void rule__REALLiteral__Group__3__Impl() throws RecognitionException {
5982
5983 int stackSize = keepStackSize();
5984
5985 try {
5986 // InternalSolverLanguage.g:1784:1: ( ( RULE_INT ) )
5987 // InternalSolverLanguage.g:1785:1: ( RULE_INT )
5988 {
5989 // InternalSolverLanguage.g:1785:1: ( RULE_INT )
5990 // InternalSolverLanguage.g:1786:2: RULE_INT
5991 {
5992 before(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_3());
5993 match(input,RULE_INT,FOLLOW_2);
5994 after(grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_3());
5995
5996 }
5997
5998
5999 }
6000
6001 }
6002 catch (RecognitionException re) {
6003 reportError(re);
6004 recover(input,re);
6005 }
6006 finally {
6007
6008 restoreStackSize(stackSize);
6009
6010 }
6011 return ;
6012 }
6013 // $ANTLR end "rule__REALLiteral__Group__3__Impl"
6014
6015
6016 // $ANTLR start "rule__INTLiteral__Group__0"
6017 // InternalSolverLanguage.g:1796:1: rule__INTLiteral__Group__0 : rule__INTLiteral__Group__0__Impl rule__INTLiteral__Group__1 ;
6018 public final void rule__INTLiteral__Group__0() throws RecognitionException {
6019
6020 int stackSize = keepStackSize();
6021
6022 try {
6023 // InternalSolverLanguage.g:1800:1: ( rule__INTLiteral__Group__0__Impl rule__INTLiteral__Group__1 )
6024 // InternalSolverLanguage.g:1801:2: rule__INTLiteral__Group__0__Impl rule__INTLiteral__Group__1
6025 {
6026 pushFollow(FOLLOW_5);
6027 rule__INTLiteral__Group__0__Impl();
6028
6029 state._fsp--;
6030
6031 pushFollow(FOLLOW_2);
6032 rule__INTLiteral__Group__1();
6033
6034 state._fsp--;
6035
6036
6037 }
6038
6039 }
6040 catch (RecognitionException re) {
6041 reportError(re);
6042 recover(input,re);
6043 }
6044 finally {
6045
6046 restoreStackSize(stackSize);
6047
6048 }
6049 return ;
6050 }
6051 // $ANTLR end "rule__INTLiteral__Group__0"
6052
6053
6054 // $ANTLR start "rule__INTLiteral__Group__0__Impl"
6055 // InternalSolverLanguage.g:1808:1: rule__INTLiteral__Group__0__Impl : ( ( '-' )? ) ;
6056 public final void rule__INTLiteral__Group__0__Impl() throws RecognitionException {
6057
6058 int stackSize = keepStackSize();
6059
6060 try {
6061 // InternalSolverLanguage.g:1812:1: ( ( ( '-' )? ) )
6062 // InternalSolverLanguage.g:1813:1: ( ( '-' )? )
6063 {
6064 // InternalSolverLanguage.g:1813:1: ( ( '-' )? )
6065 // InternalSolverLanguage.g:1814:2: ( '-' )?
6066 {
6067 before(grammarAccess.getINTLiteralAccess().getHyphenMinusKeyword_0());
6068 // InternalSolverLanguage.g:1815:2: ( '-' )?
6069 int alt24=2;
6070 int LA24_0 = input.LA(1);
6071
6072 if ( (LA24_0==13) ) {
6073 alt24=1;
6074 }
6075 switch (alt24) {
6076 case 1 :
6077 // InternalSolverLanguage.g:1815:3: '-'
6078 {
6079 match(input,13,FOLLOW_2);
6080
6081 }
6082 break;
6083
6084 }
6085
6086 after(grammarAccess.getINTLiteralAccess().getHyphenMinusKeyword_0());
6087
6088 }
6089
6090
6091 }
6092
6093 }
6094 catch (RecognitionException re) {
6095 reportError(re);
6096 recover(input,re);
6097 }
6098 finally {
6099
6100 restoreStackSize(stackSize);
6101
6102 }
6103 return ;
6104 }
6105 // $ANTLR end "rule__INTLiteral__Group__0__Impl"
6106
6107
6108 // $ANTLR start "rule__INTLiteral__Group__1"
6109 // InternalSolverLanguage.g:1823:1: rule__INTLiteral__Group__1 : rule__INTLiteral__Group__1__Impl ;
6110 public final void rule__INTLiteral__Group__1() throws RecognitionException {
6111
6112 int stackSize = keepStackSize();
6113
6114 try {
6115 // InternalSolverLanguage.g:1827:1: ( rule__INTLiteral__Group__1__Impl )
6116 // InternalSolverLanguage.g:1828:2: rule__INTLiteral__Group__1__Impl
6117 {
6118 pushFollow(FOLLOW_2);
6119 rule__INTLiteral__Group__1__Impl();
6120
6121 state._fsp--;
6122
6123
6124 }
6125
6126 }
6127 catch (RecognitionException re) {
6128 reportError(re);
6129 recover(input,re);
6130 }
6131 finally {
6132
6133 restoreStackSize(stackSize);
6134
6135 }
6136 return ;
6137 }
6138 // $ANTLR end "rule__INTLiteral__Group__1"
6139
6140
6141 // $ANTLR start "rule__INTLiteral__Group__1__Impl"
6142 // InternalSolverLanguage.g:1834:1: rule__INTLiteral__Group__1__Impl : ( RULE_INT ) ;
6143 public final void rule__INTLiteral__Group__1__Impl() throws RecognitionException {
6144
6145 int stackSize = keepStackSize();
6146
6147 try {
6148 // InternalSolverLanguage.g:1838:1: ( ( RULE_INT ) )
6149 // InternalSolverLanguage.g:1839:1: ( RULE_INT )
6150 {
6151 // InternalSolverLanguage.g:1839:1: ( RULE_INT )
6152 // InternalSolverLanguage.g:1840:2: RULE_INT
6153 {
6154 before(grammarAccess.getINTLiteralAccess().getINTTerminalRuleCall_1());
6155 match(input,RULE_INT,FOLLOW_2);
6156 after(grammarAccess.getINTLiteralAccess().getINTTerminalRuleCall_1());
6157
6158 }
6159
6160
6161 }
6162
6163 }
6164 catch (RecognitionException re) {
6165 reportError(re);
6166 recover(input,re);
6167 }
6168 finally {
6169
6170 restoreStackSize(stackSize);
6171
6172 }
6173 return ;
6174 }
6175 // $ANTLR end "rule__INTLiteral__Group__1__Impl"
6176
6177
6178 // $ANTLR start "rule__BooleanValue__Group_0__0"
6179 // InternalSolverLanguage.g:1850:1: rule__BooleanValue__Group_0__0 : rule__BooleanValue__Group_0__0__Impl rule__BooleanValue__Group_0__1 ;
6180 public final void rule__BooleanValue__Group_0__0() throws RecognitionException {
6181
6182 int stackSize = keepStackSize();
6183
6184 try {
6185 // InternalSolverLanguage.g:1854:1: ( rule__BooleanValue__Group_0__0__Impl rule__BooleanValue__Group_0__1 )
6186 // InternalSolverLanguage.g:1855:2: rule__BooleanValue__Group_0__0__Impl rule__BooleanValue__Group_0__1
6187 {
6188 pushFollow(FOLLOW_7);
6189 rule__BooleanValue__Group_0__0__Impl();
6190
6191 state._fsp--;
6192
6193 pushFollow(FOLLOW_2);
6194 rule__BooleanValue__Group_0__1();
6195
6196 state._fsp--;
6197
6198
6199 }
6200
6201 }
6202 catch (RecognitionException re) {
6203 reportError(re);
6204 recover(input,re);
6205 }
6206 finally {
6207
6208 restoreStackSize(stackSize);
6209
6210 }
6211 return ;
6212 }
6213 // $ANTLR end "rule__BooleanValue__Group_0__0"
6214
6215
6216 // $ANTLR start "rule__BooleanValue__Group_0__0__Impl"
6217 // InternalSolverLanguage.g:1862:1: rule__BooleanValue__Group_0__0__Impl : ( () ) ;
6218 public final void rule__BooleanValue__Group_0__0__Impl() throws RecognitionException {
6219
6220 int stackSize = keepStackSize();
6221
6222 try {
6223 // InternalSolverLanguage.g:1866:1: ( ( () ) )
6224 // InternalSolverLanguage.g:1867:1: ( () )
6225 {
6226 // InternalSolverLanguage.g:1867:1: ( () )
6227 // InternalSolverLanguage.g:1868:2: ()
6228 {
6229 before(grammarAccess.getBooleanValueAccess().getBooleanTrueAction_0_0());
6230 // InternalSolverLanguage.g:1869:2: ()
6231 // InternalSolverLanguage.g:1869:3:
6232 {
6233 }
6234
6235 after(grammarAccess.getBooleanValueAccess().getBooleanTrueAction_0_0());
6236
6237 }
6238
6239
6240 }
6241
6242 }
6243 finally {
6244
6245 restoreStackSize(stackSize);
6246
6247 }
6248 return ;
6249 }
6250 // $ANTLR end "rule__BooleanValue__Group_0__0__Impl"
6251
6252
6253 // $ANTLR start "rule__BooleanValue__Group_0__1"
6254 // InternalSolverLanguage.g:1877:1: rule__BooleanValue__Group_0__1 : rule__BooleanValue__Group_0__1__Impl ;
6255 public final void rule__BooleanValue__Group_0__1() throws RecognitionException {
6256
6257 int stackSize = keepStackSize();
6258
6259 try {
6260 // InternalSolverLanguage.g:1881:1: ( rule__BooleanValue__Group_0__1__Impl )
6261 // InternalSolverLanguage.g:1882:2: rule__BooleanValue__Group_0__1__Impl
6262 {
6263 pushFollow(FOLLOW_2);
6264 rule__BooleanValue__Group_0__1__Impl();
6265
6266 state._fsp--;
6267
6268
6269 }
6270
6271 }
6272 catch (RecognitionException re) {
6273 reportError(re);
6274 recover(input,re);
6275 }
6276 finally {
6277
6278 restoreStackSize(stackSize);
6279
6280 }
6281 return ;
6282 }
6283 // $ANTLR end "rule__BooleanValue__Group_0__1"
6284
6285
6286 // $ANTLR start "rule__BooleanValue__Group_0__1__Impl"
6287 // InternalSolverLanguage.g:1888:1: rule__BooleanValue__Group_0__1__Impl : ( 'true' ) ;
6288 public final void rule__BooleanValue__Group_0__1__Impl() throws RecognitionException {
6289
6290 int stackSize = keepStackSize();
6291
6292 try {
6293 // InternalSolverLanguage.g:1892:1: ( ( 'true' ) )
6294 // InternalSolverLanguage.g:1893:1: ( 'true' )
6295 {
6296 // InternalSolverLanguage.g:1893:1: ( 'true' )
6297 // InternalSolverLanguage.g:1894:2: 'true'
6298 {
6299 before(grammarAccess.getBooleanValueAccess().getTrueKeyword_0_1());
6300 match(input,12,FOLLOW_2);
6301 after(grammarAccess.getBooleanValueAccess().getTrueKeyword_0_1());
6302
6303 }
6304
6305
6306 }
6307
6308 }
6309 catch (RecognitionException re) {
6310 reportError(re);
6311 recover(input,re);
6312 }
6313 finally {
6314
6315 restoreStackSize(stackSize);
6316
6317 }
6318 return ;
6319 }
6320 // $ANTLR end "rule__BooleanValue__Group_0__1__Impl"
6321
6322
6323 // $ANTLR start "rule__BooleanValue__Group_1__0"
6324 // InternalSolverLanguage.g:1904:1: rule__BooleanValue__Group_1__0 : rule__BooleanValue__Group_1__0__Impl rule__BooleanValue__Group_1__1 ;
6325 public final void rule__BooleanValue__Group_1__0() throws RecognitionException {
6326
6327 int stackSize = keepStackSize();
6328
6329 try {
6330 // InternalSolverLanguage.g:1908:1: ( rule__BooleanValue__Group_1__0__Impl rule__BooleanValue__Group_1__1 )
6331 // InternalSolverLanguage.g:1909:2: rule__BooleanValue__Group_1__0__Impl rule__BooleanValue__Group_1__1
6332 {
6333 pushFollow(FOLLOW_1);
6334 rule__BooleanValue__Group_1__0__Impl();
6335
6336 state._fsp--;
6337
6338 pushFollow(FOLLOW_2);
6339 rule__BooleanValue__Group_1__1();
6340
6341 state._fsp--;
6342
6343
6344 }
6345
6346 }
6347 catch (RecognitionException re) {
6348 reportError(re);
6349 recover(input,re);
6350 }
6351 finally {
6352
6353 restoreStackSize(stackSize);
6354
6355 }
6356 return ;
6357 }
6358 // $ANTLR end "rule__BooleanValue__Group_1__0"
6359
6360
6361 // $ANTLR start "rule__BooleanValue__Group_1__0__Impl"
6362 // InternalSolverLanguage.g:1916:1: rule__BooleanValue__Group_1__0__Impl : ( 'false' ) ;
6363 public final void rule__BooleanValue__Group_1__0__Impl() throws RecognitionException {
6364
6365 int stackSize = keepStackSize();
6366
6367 try {
6368 // InternalSolverLanguage.g:1920:1: ( ( 'false' ) )
6369 // InternalSolverLanguage.g:1921:1: ( 'false' )
6370 {
6371 // InternalSolverLanguage.g:1921:1: ( 'false' )
6372 // InternalSolverLanguage.g:1922:2: 'false'
6373 {
6374 before(grammarAccess.getBooleanValueAccess().getFalseKeyword_1_0());
6375 match(input,11,FOLLOW_2);
6376 after(grammarAccess.getBooleanValueAccess().getFalseKeyword_1_0());
6377
6378 }
6379
6380
6381 }
6382
6383 }
6384 catch (RecognitionException re) {
6385 reportError(re);
6386 recover(input,re);
6387 }
6388 finally {
6389
6390 restoreStackSize(stackSize);
6391
6392 }
6393 return ;
6394 }
6395 // $ANTLR end "rule__BooleanValue__Group_1__0__Impl"
6396
6397
6398 // $ANTLR start "rule__BooleanValue__Group_1__1"
6399 // InternalSolverLanguage.g:1931:1: rule__BooleanValue__Group_1__1 : rule__BooleanValue__Group_1__1__Impl ;
6400 public final void rule__BooleanValue__Group_1__1() throws RecognitionException {
6401
6402 int stackSize = keepStackSize();
6403
6404 try {
6405 // InternalSolverLanguage.g:1935:1: ( rule__BooleanValue__Group_1__1__Impl )
6406 // InternalSolverLanguage.g:1936:2: rule__BooleanValue__Group_1__1__Impl
6407 {
6408 pushFollow(FOLLOW_2);
6409 rule__BooleanValue__Group_1__1__Impl();
6410
6411 state._fsp--;
6412
6413
6414 }
6415
6416 }
6417 catch (RecognitionException re) {
6418 reportError(re);
6419 recover(input,re);
6420 }
6421 finally {
6422
6423 restoreStackSize(stackSize);
6424
6425 }
6426 return ;
6427 }
6428 // $ANTLR end "rule__BooleanValue__Group_1__1"
6429
6430
6431 // $ANTLR start "rule__BooleanValue__Group_1__1__Impl"
6432 // InternalSolverLanguage.g:1942:1: rule__BooleanValue__Group_1__1__Impl : ( () ) ;
6433 public final void rule__BooleanValue__Group_1__1__Impl() throws RecognitionException {
6434
6435 int stackSize = keepStackSize();
6436
6437 try {
6438 // InternalSolverLanguage.g:1946:1: ( ( () ) )
6439 // InternalSolverLanguage.g:1947:1: ( () )
6440 {
6441 // InternalSolverLanguage.g:1947:1: ( () )
6442 // InternalSolverLanguage.g:1948:2: ()
6443 {
6444 before(grammarAccess.getBooleanValueAccess().getBooleanFalseAction_1_1());
6445 // InternalSolverLanguage.g:1949:2: ()
6446 // InternalSolverLanguage.g:1949:3:
6447 {
6448 }
6449
6450 after(grammarAccess.getBooleanValueAccess().getBooleanFalseAction_1_1());
6451
6452 }
6453
6454
6455 }
6456
6457 }
6458 finally {
6459
6460 restoreStackSize(stackSize);
6461
6462 }
6463 return ;
6464 }
6465 // $ANTLR end "rule__BooleanValue__Group_1__1__Impl"
6466
6467
6468 // $ANTLR start "rule__TruthValue__Group_0__0"
6469 // InternalSolverLanguage.g:1958:1: rule__TruthValue__Group_0__0 : rule__TruthValue__Group_0__0__Impl rule__TruthValue__Group_0__1 ;
6470 public final void rule__TruthValue__Group_0__0() throws RecognitionException {
6471
6472 int stackSize = keepStackSize();
6473
6474 try {
6475 // InternalSolverLanguage.g:1962:1: ( rule__TruthValue__Group_0__0__Impl rule__TruthValue__Group_0__1 )
6476 // InternalSolverLanguage.g:1963:2: rule__TruthValue__Group_0__0__Impl rule__TruthValue__Group_0__1
6477 {
6478 pushFollow(FOLLOW_7);
6479 rule__TruthValue__Group_0__0__Impl();
6480
6481 state._fsp--;
6482
6483 pushFollow(FOLLOW_2);
6484 rule__TruthValue__Group_0__1();
6485
6486 state._fsp--;
6487
6488
6489 }
6490
6491 }
6492 catch (RecognitionException re) {
6493 reportError(re);
6494 recover(input,re);
6495 }
6496 finally {
6497
6498 restoreStackSize(stackSize);
6499
6500 }
6501 return ;
6502 }
6503 // $ANTLR end "rule__TruthValue__Group_0__0"
6504
6505
6506 // $ANTLR start "rule__TruthValue__Group_0__0__Impl"
6507 // InternalSolverLanguage.g:1970:1: rule__TruthValue__Group_0__0__Impl : ( () ) ;
6508 public final void rule__TruthValue__Group_0__0__Impl() throws RecognitionException {
6509
6510 int stackSize = keepStackSize();
6511
6512 try {
6513 // InternalSolverLanguage.g:1974:1: ( ( () ) )
6514 // InternalSolverLanguage.g:1975:1: ( () )
6515 {
6516 // InternalSolverLanguage.g:1975:1: ( () )
6517 // InternalSolverLanguage.g:1976:2: ()
6518 {
6519 before(grammarAccess.getTruthValueAccess().getTrueAction_0_0());
6520 // InternalSolverLanguage.g:1977:2: ()
6521 // InternalSolverLanguage.g:1977:3:
6522 {
6523 }
6524
6525 after(grammarAccess.getTruthValueAccess().getTrueAction_0_0());
6526
6527 }
6528
6529
6530 }
6531
6532 }
6533 finally {
6534
6535 restoreStackSize(stackSize);
6536
6537 }
6538 return ;
6539 }
6540 // $ANTLR end "rule__TruthValue__Group_0__0__Impl"
6541
6542
6543 // $ANTLR start "rule__TruthValue__Group_0__1"
6544 // InternalSolverLanguage.g:1985:1: rule__TruthValue__Group_0__1 : rule__TruthValue__Group_0__1__Impl ;
6545 public final void rule__TruthValue__Group_0__1() throws RecognitionException {
6546
6547 int stackSize = keepStackSize();
6548
6549 try {
6550 // InternalSolverLanguage.g:1989:1: ( rule__TruthValue__Group_0__1__Impl )
6551 // InternalSolverLanguage.g:1990:2: rule__TruthValue__Group_0__1__Impl
6552 {
6553 pushFollow(FOLLOW_2);
6554 rule__TruthValue__Group_0__1__Impl();
6555
6556 state._fsp--;
6557
6558
6559 }
6560
6561 }
6562 catch (RecognitionException re) {
6563 reportError(re);
6564 recover(input,re);
6565 }
6566 finally {
6567
6568 restoreStackSize(stackSize);
6569
6570 }
6571 return ;
6572 }
6573 // $ANTLR end "rule__TruthValue__Group_0__1"
6574
6575
6576 // $ANTLR start "rule__TruthValue__Group_0__1__Impl"
6577 // InternalSolverLanguage.g:1996:1: rule__TruthValue__Group_0__1__Impl : ( 'true' ) ;
6578 public final void rule__TruthValue__Group_0__1__Impl() throws RecognitionException {
6579
6580 int stackSize = keepStackSize();
6581
6582 try {
6583 // InternalSolverLanguage.g:2000:1: ( ( 'true' ) )
6584 // InternalSolverLanguage.g:2001:1: ( 'true' )
6585 {
6586 // InternalSolverLanguage.g:2001:1: ( 'true' )
6587 // InternalSolverLanguage.g:2002:2: 'true'
6588 {
6589 before(grammarAccess.getTruthValueAccess().getTrueKeyword_0_1());
6590 match(input,12,FOLLOW_2);
6591 after(grammarAccess.getTruthValueAccess().getTrueKeyword_0_1());
6592
6593 }
6594
6595
6596 }
6597
6598 }
6599 catch (RecognitionException re) {
6600 reportError(re);
6601 recover(input,re);
6602 }
6603 finally {
6604
6605 restoreStackSize(stackSize);
6606
6607 }
6608 return ;
6609 }
6610 // $ANTLR end "rule__TruthValue__Group_0__1__Impl"
6611
6612
6613 // $ANTLR start "rule__TruthValue__Group_1__0"
6614 // InternalSolverLanguage.g:2012:1: rule__TruthValue__Group_1__0 : rule__TruthValue__Group_1__0__Impl rule__TruthValue__Group_1__1 ;
6615 public final void rule__TruthValue__Group_1__0() throws RecognitionException {
6616
6617 int stackSize = keepStackSize();
6618
6619 try {
6620 // InternalSolverLanguage.g:2016:1: ( rule__TruthValue__Group_1__0__Impl rule__TruthValue__Group_1__1 )
6621 // InternalSolverLanguage.g:2017:2: rule__TruthValue__Group_1__0__Impl rule__TruthValue__Group_1__1
6622 {
6623 pushFollow(FOLLOW_8);
6624 rule__TruthValue__Group_1__0__Impl();
6625
6626 state._fsp--;
6627
6628 pushFollow(FOLLOW_2);
6629 rule__TruthValue__Group_1__1();
6630
6631 state._fsp--;
6632
6633
6634 }
6635
6636 }
6637 catch (RecognitionException re) {
6638 reportError(re);
6639 recover(input,re);
6640 }
6641 finally {
6642
6643 restoreStackSize(stackSize);
6644
6645 }
6646 return ;
6647 }
6648 // $ANTLR end "rule__TruthValue__Group_1__0"
6649
6650
6651 // $ANTLR start "rule__TruthValue__Group_1__0__Impl"
6652 // InternalSolverLanguage.g:2024:1: rule__TruthValue__Group_1__0__Impl : ( () ) ;
6653 public final void rule__TruthValue__Group_1__0__Impl() throws RecognitionException {
6654
6655 int stackSize = keepStackSize();
6656
6657 try {
6658 // InternalSolverLanguage.g:2028:1: ( ( () ) )
6659 // InternalSolverLanguage.g:2029:1: ( () )
6660 {
6661 // InternalSolverLanguage.g:2029:1: ( () )
6662 // InternalSolverLanguage.g:2030:2: ()
6663 {
6664 before(grammarAccess.getTruthValueAccess().getFalseAction_1_0());
6665 // InternalSolverLanguage.g:2031:2: ()
6666 // InternalSolverLanguage.g:2031:3:
6667 {
6668 }
6669
6670 after(grammarAccess.getTruthValueAccess().getFalseAction_1_0());
6671
6672 }
6673
6674
6675 }
6676
6677 }
6678 finally {
6679
6680 restoreStackSize(stackSize);
6681
6682 }
6683 return ;
6684 }
6685 // $ANTLR end "rule__TruthValue__Group_1__0__Impl"
6686
6687
6688 // $ANTLR start "rule__TruthValue__Group_1__1"
6689 // InternalSolverLanguage.g:2039:1: rule__TruthValue__Group_1__1 : rule__TruthValue__Group_1__1__Impl ;
6690 public final void rule__TruthValue__Group_1__1() throws RecognitionException {
6691
6692 int stackSize = keepStackSize();
6693
6694 try {
6695 // InternalSolverLanguage.g:2043:1: ( rule__TruthValue__Group_1__1__Impl )
6696 // InternalSolverLanguage.g:2044:2: rule__TruthValue__Group_1__1__Impl
6697 {
6698 pushFollow(FOLLOW_2);
6699 rule__TruthValue__Group_1__1__Impl();
6700
6701 state._fsp--;
6702
6703
6704 }
6705
6706 }
6707 catch (RecognitionException re) {
6708 reportError(re);
6709 recover(input,re);
6710 }
6711 finally {
6712
6713 restoreStackSize(stackSize);
6714
6715 }
6716 return ;
6717 }
6718 // $ANTLR end "rule__TruthValue__Group_1__1"
6719
6720
6721 // $ANTLR start "rule__TruthValue__Group_1__1__Impl"
6722 // InternalSolverLanguage.g:2050:1: rule__TruthValue__Group_1__1__Impl : ( 'false' ) ;
6723 public final void rule__TruthValue__Group_1__1__Impl() throws RecognitionException {
6724
6725 int stackSize = keepStackSize();
6726
6727 try {
6728 // InternalSolverLanguage.g:2054:1: ( ( 'false' ) )
6729 // InternalSolverLanguage.g:2055:1: ( 'false' )
6730 {
6731 // InternalSolverLanguage.g:2055:1: ( 'false' )
6732 // InternalSolverLanguage.g:2056:2: 'false'
6733 {
6734 before(grammarAccess.getTruthValueAccess().getFalseKeyword_1_1());
6735 match(input,11,FOLLOW_2);
6736 after(grammarAccess.getTruthValueAccess().getFalseKeyword_1_1());
6737
6738 }
6739
6740
6741 }
6742
6743 }
6744 catch (RecognitionException re) {
6745 reportError(re);
6746 recover(input,re);
6747 }
6748 finally {
6749
6750 restoreStackSize(stackSize);
6751
6752 }
6753 return ;
6754 }
6755 // $ANTLR end "rule__TruthValue__Group_1__1__Impl"
6756
6757
6758 // $ANTLR start "rule__TruthValue__Group_2__0"
6759 // InternalSolverLanguage.g:2066:1: rule__TruthValue__Group_2__0 : rule__TruthValue__Group_2__0__Impl rule__TruthValue__Group_2__1 ;
6760 public final void rule__TruthValue__Group_2__0() throws RecognitionException {
6761
6762 int stackSize = keepStackSize();
6763
6764 try {
6765 // InternalSolverLanguage.g:2070:1: ( rule__TruthValue__Group_2__0__Impl rule__TruthValue__Group_2__1 )
6766 // InternalSolverLanguage.g:2071:2: rule__TruthValue__Group_2__0__Impl rule__TruthValue__Group_2__1
6767 {
6768 pushFollow(FOLLOW_9);
6769 rule__TruthValue__Group_2__0__Impl();
6770
6771 state._fsp--;
6772
6773 pushFollow(FOLLOW_2);
6774 rule__TruthValue__Group_2__1();
6775
6776 state._fsp--;
6777
6778
6779 }
6780
6781 }
6782 catch (RecognitionException re) {
6783 reportError(re);
6784 recover(input,re);
6785 }
6786 finally {
6787
6788 restoreStackSize(stackSize);
6789
6790 }
6791 return ;
6792 }
6793 // $ANTLR end "rule__TruthValue__Group_2__0"
6794
6795
6796 // $ANTLR start "rule__TruthValue__Group_2__0__Impl"
6797 // InternalSolverLanguage.g:2078:1: rule__TruthValue__Group_2__0__Impl : ( () ) ;
6798 public final void rule__TruthValue__Group_2__0__Impl() throws RecognitionException {
6799
6800 int stackSize = keepStackSize();
6801
6802 try {
6803 // InternalSolverLanguage.g:2082:1: ( ( () ) )
6804 // InternalSolverLanguage.g:2083:1: ( () )
6805 {
6806 // InternalSolverLanguage.g:2083:1: ( () )
6807 // InternalSolverLanguage.g:2084:2: ()
6808 {
6809 before(grammarAccess.getTruthValueAccess().getUnknownAction_2_0());
6810 // InternalSolverLanguage.g:2085:2: ()
6811 // InternalSolverLanguage.g:2085:3:
6812 {
6813 }
6814
6815 after(grammarAccess.getTruthValueAccess().getUnknownAction_2_0());
6816
6817 }
6818
6819
6820 }
6821
6822 }
6823 finally {
6824
6825 restoreStackSize(stackSize);
6826
6827 }
6828 return ;
6829 }
6830 // $ANTLR end "rule__TruthValue__Group_2__0__Impl"
6831
6832
6833 // $ANTLR start "rule__TruthValue__Group_2__1"
6834 // InternalSolverLanguage.g:2093:1: rule__TruthValue__Group_2__1 : rule__TruthValue__Group_2__1__Impl ;
6835 public final void rule__TruthValue__Group_2__1() throws RecognitionException {
6836
6837 int stackSize = keepStackSize();
6838
6839 try {
6840 // InternalSolverLanguage.g:2097:1: ( rule__TruthValue__Group_2__1__Impl )
6841 // InternalSolverLanguage.g:2098:2: rule__TruthValue__Group_2__1__Impl
6842 {
6843 pushFollow(FOLLOW_2);
6844 rule__TruthValue__Group_2__1__Impl();
6845
6846 state._fsp--;
6847
6848
6849 }
6850
6851 }
6852 catch (RecognitionException re) {
6853 reportError(re);
6854 recover(input,re);
6855 }
6856 finally {
6857
6858 restoreStackSize(stackSize);
6859
6860 }
6861 return ;
6862 }
6863 // $ANTLR end "rule__TruthValue__Group_2__1"
6864
6865
6866 // $ANTLR start "rule__TruthValue__Group_2__1__Impl"
6867 // InternalSolverLanguage.g:2104:1: rule__TruthValue__Group_2__1__Impl : ( 'unknown' ) ;
6868 public final void rule__TruthValue__Group_2__1__Impl() throws RecognitionException {
6869
6870 int stackSize = keepStackSize();
6871
6872 try {
6873 // InternalSolverLanguage.g:2108:1: ( ( 'unknown' ) )
6874 // InternalSolverLanguage.g:2109:1: ( 'unknown' )
6875 {
6876 // InternalSolverLanguage.g:2109:1: ( 'unknown' )
6877 // InternalSolverLanguage.g:2110:2: 'unknown'
6878 {
6879 before(grammarAccess.getTruthValueAccess().getUnknownKeyword_2_1());
6880 match(input,15,FOLLOW_2);
6881 after(grammarAccess.getTruthValueAccess().getUnknownKeyword_2_1());
6882
6883 }
6884
6885
6886 }
6887
6888 }
6889 catch (RecognitionException re) {
6890 reportError(re);
6891 recover(input,re);
6892 }
6893 finally {
6894
6895 restoreStackSize(stackSize);
6896
6897 }
6898 return ;
6899 }
6900 // $ANTLR end "rule__TruthValue__Group_2__1__Impl"
6901
6902
6903 // $ANTLR start "rule__TruthValue__Group_3__0"
6904 // InternalSolverLanguage.g:2120:1: rule__TruthValue__Group_3__0 : rule__TruthValue__Group_3__0__Impl rule__TruthValue__Group_3__1 ;
6905 public final void rule__TruthValue__Group_3__0() throws RecognitionException {
6906
6907 int stackSize = keepStackSize();
6908
6909 try {
6910 // InternalSolverLanguage.g:2124:1: ( rule__TruthValue__Group_3__0__Impl rule__TruthValue__Group_3__1 )
6911 // InternalSolverLanguage.g:2125:2: rule__TruthValue__Group_3__0__Impl rule__TruthValue__Group_3__1
6912 {
6913 pushFollow(FOLLOW_10);
6914 rule__TruthValue__Group_3__0__Impl();
6915
6916 state._fsp--;
6917
6918 pushFollow(FOLLOW_2);
6919 rule__TruthValue__Group_3__1();
6920
6921 state._fsp--;
6922
6923
6924 }
6925
6926 }
6927 catch (RecognitionException re) {
6928 reportError(re);
6929 recover(input,re);
6930 }
6931 finally {
6932
6933 restoreStackSize(stackSize);
6934
6935 }
6936 return ;
6937 }
6938 // $ANTLR end "rule__TruthValue__Group_3__0"
6939
6940
6941 // $ANTLR start "rule__TruthValue__Group_3__0__Impl"
6942 // InternalSolverLanguage.g:2132:1: rule__TruthValue__Group_3__0__Impl : ( () ) ;
6943 public final void rule__TruthValue__Group_3__0__Impl() throws RecognitionException {
6944
6945 int stackSize = keepStackSize();
6946
6947 try {
6948 // InternalSolverLanguage.g:2136:1: ( ( () ) )
6949 // InternalSolverLanguage.g:2137:1: ( () )
6950 {
6951 // InternalSolverLanguage.g:2137:1: ( () )
6952 // InternalSolverLanguage.g:2138:2: ()
6953 {
6954 before(grammarAccess.getTruthValueAccess().getErrorAction_3_0());
6955 // InternalSolverLanguage.g:2139:2: ()
6956 // InternalSolverLanguage.g:2139:3:
6957 {
6958 }
6959
6960 after(grammarAccess.getTruthValueAccess().getErrorAction_3_0());
6961
6962 }
6963
6964
6965 }
6966
6967 }
6968 finally {
6969
6970 restoreStackSize(stackSize);
6971
6972 }
6973 return ;
6974 }
6975 // $ANTLR end "rule__TruthValue__Group_3__0__Impl"
6976
6977
6978 // $ANTLR start "rule__TruthValue__Group_3__1"
6979 // InternalSolverLanguage.g:2147:1: rule__TruthValue__Group_3__1 : rule__TruthValue__Group_3__1__Impl ;
6980 public final void rule__TruthValue__Group_3__1() throws RecognitionException {
6981
6982 int stackSize = keepStackSize();
6983
6984 try {
6985 // InternalSolverLanguage.g:2151:1: ( rule__TruthValue__Group_3__1__Impl )
6986 // InternalSolverLanguage.g:2152:2: rule__TruthValue__Group_3__1__Impl
6987 {
6988 pushFollow(FOLLOW_2);
6989 rule__TruthValue__Group_3__1__Impl();
6990
6991 state._fsp--;
6992
6993
6994 }
6995
6996 }
6997 catch (RecognitionException re) {
6998 reportError(re);
6999 recover(input,re);
7000 }
7001 finally {
7002
7003 restoreStackSize(stackSize);
7004
7005 }
7006 return ;
7007 }
7008 // $ANTLR end "rule__TruthValue__Group_3__1"
7009
7010
7011 // $ANTLR start "rule__TruthValue__Group_3__1__Impl"
7012 // InternalSolverLanguage.g:2158:1: rule__TruthValue__Group_3__1__Impl : ( 'error' ) ;
7013 public final void rule__TruthValue__Group_3__1__Impl() throws RecognitionException {
7014
7015 int stackSize = keepStackSize();
7016
7017 try {
7018 // InternalSolverLanguage.g:2162:1: ( ( 'error' ) )
7019 // InternalSolverLanguage.g:2163:1: ( 'error' )
7020 {
7021 // InternalSolverLanguage.g:2163:1: ( 'error' )
7022 // InternalSolverLanguage.g:2164:2: 'error'
7023 {
7024 before(grammarAccess.getTruthValueAccess().getErrorKeyword_3_1());
7025 match(input,16,FOLLOW_2);
7026 after(grammarAccess.getTruthValueAccess().getErrorKeyword_3_1());
7027
7028 }
7029
7030
7031 }
7032
7033 }
7034 catch (RecognitionException re) {
7035 reportError(re);
7036 recover(input,re);
7037 }
7038 finally {
7039
7040 restoreStackSize(stackSize);
7041
7042 }
7043 return ;
7044 }
7045 // $ANTLR end "rule__TruthValue__Group_3__1__Impl"
7046
7047
7048 // $ANTLR start "rule__BasicInterpretation__Group__0"
7049 // InternalSolverLanguage.g:2174:1: rule__BasicInterpretation__Group__0 : rule__BasicInterpretation__Group__0__Impl rule__BasicInterpretation__Group__1 ;
7050 public final void rule__BasicInterpretation__Group__0() throws RecognitionException {
7051
7052 int stackSize = keepStackSize();
7053
7054 try {
7055 // InternalSolverLanguage.g:2178:1: ( rule__BasicInterpretation__Group__0__Impl rule__BasicInterpretation__Group__1 )
7056 // InternalSolverLanguage.g:2179:2: rule__BasicInterpretation__Group__0__Impl rule__BasicInterpretation__Group__1
7057 {
7058 pushFollow(FOLLOW_11);
7059 rule__BasicInterpretation__Group__0__Impl();
7060
7061 state._fsp--;
7062
7063 pushFollow(FOLLOW_2);
7064 rule__BasicInterpretation__Group__1();
7065
7066 state._fsp--;
7067
7068
7069 }
7070
7071 }
7072 catch (RecognitionException re) {
7073 reportError(re);
7074 recover(input,re);
7075 }
7076 finally {
7077
7078 restoreStackSize(stackSize);
7079
7080 }
7081 return ;
7082 }
7083 // $ANTLR end "rule__BasicInterpretation__Group__0"
7084
7085
7086 // $ANTLR start "rule__BasicInterpretation__Group__0__Impl"
7087 // InternalSolverLanguage.g:2186:1: rule__BasicInterpretation__Group__0__Impl : ( ( rule__BasicInterpretation__SymbolAssignment_0 ) ) ;
7088 public final void rule__BasicInterpretation__Group__0__Impl() throws RecognitionException {
7089
7090 int stackSize = keepStackSize();
7091
7092 try {
7093 // InternalSolverLanguage.g:2190:1: ( ( ( rule__BasicInterpretation__SymbolAssignment_0 ) ) )
7094 // InternalSolverLanguage.g:2191:1: ( ( rule__BasicInterpretation__SymbolAssignment_0 ) )
7095 {
7096 // InternalSolverLanguage.g:2191:1: ( ( rule__BasicInterpretation__SymbolAssignment_0 ) )
7097 // InternalSolverLanguage.g:2192:2: ( rule__BasicInterpretation__SymbolAssignment_0 )
7098 {
7099 before(grammarAccess.getBasicInterpretationAccess().getSymbolAssignment_0());
7100 // InternalSolverLanguage.g:2193:2: ( rule__BasicInterpretation__SymbolAssignment_0 )
7101 // InternalSolverLanguage.g:2193:3: rule__BasicInterpretation__SymbolAssignment_0
7102 {
7103 pushFollow(FOLLOW_2);
7104 rule__BasicInterpretation__SymbolAssignment_0();
7105
7106 state._fsp--;
7107
7108
7109 }
7110
7111 after(grammarAccess.getBasicInterpretationAccess().getSymbolAssignment_0());
7112
7113 }
7114
7115
7116 }
7117
7118 }
7119 catch (RecognitionException re) {
7120 reportError(re);
7121 recover(input,re);
7122 }
7123 finally {
7124
7125 restoreStackSize(stackSize);
7126
7127 }
7128 return ;
7129 }
7130 // $ANTLR end "rule__BasicInterpretation__Group__0__Impl"
7131
7132
7133 // $ANTLR start "rule__BasicInterpretation__Group__1"
7134 // InternalSolverLanguage.g:2201:1: rule__BasicInterpretation__Group__1 : rule__BasicInterpretation__Group__1__Impl rule__BasicInterpretation__Group__2 ;
7135 public final void rule__BasicInterpretation__Group__1() throws RecognitionException {
7136
7137 int stackSize = keepStackSize();
7138
7139 try {
7140 // InternalSolverLanguage.g:2205:1: ( rule__BasicInterpretation__Group__1__Impl rule__BasicInterpretation__Group__2 )
7141 // InternalSolverLanguage.g:2206:2: rule__BasicInterpretation__Group__1__Impl rule__BasicInterpretation__Group__2
7142 {
7143 pushFollow(FOLLOW_12);
7144 rule__BasicInterpretation__Group__1__Impl();
7145
7146 state._fsp--;
7147
7148 pushFollow(FOLLOW_2);
7149 rule__BasicInterpretation__Group__2();
7150
7151 state._fsp--;
7152
7153
7154 }
7155
7156 }
7157 catch (RecognitionException re) {
7158 reportError(re);
7159 recover(input,re);
7160 }
7161 finally {
7162
7163 restoreStackSize(stackSize);
7164
7165 }
7166 return ;
7167 }
7168 // $ANTLR end "rule__BasicInterpretation__Group__1"
7169
7170
7171 // $ANTLR start "rule__BasicInterpretation__Group__1__Impl"
7172 // InternalSolverLanguage.g:2213:1: rule__BasicInterpretation__Group__1__Impl : ( '(' ) ;
7173 public final void rule__BasicInterpretation__Group__1__Impl() throws RecognitionException {
7174
7175 int stackSize = keepStackSize();
7176
7177 try {
7178 // InternalSolverLanguage.g:2217:1: ( ( '(' ) )
7179 // InternalSolverLanguage.g:2218:1: ( '(' )
7180 {
7181 // InternalSolverLanguage.g:2218:1: ( '(' )
7182 // InternalSolverLanguage.g:2219:2: '('
7183 {
7184 before(grammarAccess.getBasicInterpretationAccess().getLeftParenthesisKeyword_1());
7185 match(input,17,FOLLOW_2);
7186 after(grammarAccess.getBasicInterpretationAccess().getLeftParenthesisKeyword_1());
7187
7188 }
7189
7190
7191 }
7192
7193 }
7194 catch (RecognitionException re) {
7195 reportError(re);
7196 recover(input,re);
7197 }
7198 finally {
7199
7200 restoreStackSize(stackSize);
7201
7202 }
7203 return ;
7204 }
7205 // $ANTLR end "rule__BasicInterpretation__Group__1__Impl"
7206
7207
7208 // $ANTLR start "rule__BasicInterpretation__Group__2"
7209 // InternalSolverLanguage.g:2228:1: rule__BasicInterpretation__Group__2 : rule__BasicInterpretation__Group__2__Impl rule__BasicInterpretation__Group__3 ;
7210 public final void rule__BasicInterpretation__Group__2() throws RecognitionException {
7211
7212 int stackSize = keepStackSize();
7213
7214 try {
7215 // InternalSolverLanguage.g:2232:1: ( rule__BasicInterpretation__Group__2__Impl rule__BasicInterpretation__Group__3 )
7216 // InternalSolverLanguage.g:2233:2: rule__BasicInterpretation__Group__2__Impl rule__BasicInterpretation__Group__3
7217 {
7218 pushFollow(FOLLOW_12);
7219 rule__BasicInterpretation__Group__2__Impl();
7220
7221 state._fsp--;
7222
7223 pushFollow(FOLLOW_2);
7224 rule__BasicInterpretation__Group__3();
7225
7226 state._fsp--;
7227
7228
7229 }
7230
7231 }
7232 catch (RecognitionException re) {
7233 reportError(re);
7234 recover(input,re);
7235 }
7236 finally {
7237
7238 restoreStackSize(stackSize);
7239
7240 }
7241 return ;
7242 }
7243 // $ANTLR end "rule__BasicInterpretation__Group__2"
7244
7245
7246 // $ANTLR start "rule__BasicInterpretation__Group__2__Impl"
7247 // InternalSolverLanguage.g:2240:1: rule__BasicInterpretation__Group__2__Impl : ( ( rule__BasicInterpretation__ObjectsAssignment_2 )* ) ;
7248 public final void rule__BasicInterpretation__Group__2__Impl() throws RecognitionException {
7249
7250 int stackSize = keepStackSize();
7251
7252 try {
7253 // InternalSolverLanguage.g:2244:1: ( ( ( rule__BasicInterpretation__ObjectsAssignment_2 )* ) )
7254 // InternalSolverLanguage.g:2245:1: ( ( rule__BasicInterpretation__ObjectsAssignment_2 )* )
7255 {
7256 // InternalSolverLanguage.g:2245:1: ( ( rule__BasicInterpretation__ObjectsAssignment_2 )* )
7257 // InternalSolverLanguage.g:2246:2: ( rule__BasicInterpretation__ObjectsAssignment_2 )*
7258 {
7259 before(grammarAccess.getBasicInterpretationAccess().getObjectsAssignment_2());
7260 // InternalSolverLanguage.g:2247:2: ( rule__BasicInterpretation__ObjectsAssignment_2 )*
7261 loop25:
7262 do {
7263 int alt25=2;
7264 int LA25_0 = input.LA(1);
7265
7266 if ( ((LA25_0>=RULE_INT && LA25_0<=RULE_STRING)||(LA25_0>=11 && LA25_0<=13)||LA25_0==19||LA25_0==26||LA25_0==30) ) {
7267 alt25=1;
7268 }
7269
7270
7271 switch (alt25) {
7272 case 1 :
7273 // InternalSolverLanguage.g:2247:3: rule__BasicInterpretation__ObjectsAssignment_2
7274 {
7275 pushFollow(FOLLOW_13);
7276 rule__BasicInterpretation__ObjectsAssignment_2();
7277
7278 state._fsp--;
7279
7280
7281 }
7282 break;
7283
7284 default :
7285 break loop25;
7286 }
7287 } while (true);
7288
7289 after(grammarAccess.getBasicInterpretationAccess().getObjectsAssignment_2());
7290
7291 }
7292
7293
7294 }
7295
7296 }
7297 catch (RecognitionException re) {
7298 reportError(re);
7299 recover(input,re);
7300 }
7301 finally {
7302
7303 restoreStackSize(stackSize);
7304
7305 }
7306 return ;
7307 }
7308 // $ANTLR end "rule__BasicInterpretation__Group__2__Impl"
7309
7310
7311 // $ANTLR start "rule__BasicInterpretation__Group__3"
7312 // InternalSolverLanguage.g:2255:1: rule__BasicInterpretation__Group__3 : rule__BasicInterpretation__Group__3__Impl rule__BasicInterpretation__Group__4 ;
7313 public final void rule__BasicInterpretation__Group__3() throws RecognitionException {
7314
7315 int stackSize = keepStackSize();
7316
7317 try {
7318 // InternalSolverLanguage.g:2259:1: ( rule__BasicInterpretation__Group__3__Impl rule__BasicInterpretation__Group__4 )
7319 // InternalSolverLanguage.g:2260:2: rule__BasicInterpretation__Group__3__Impl rule__BasicInterpretation__Group__4
7320 {
7321 pushFollow(FOLLOW_14);
7322 rule__BasicInterpretation__Group__3__Impl();
7323
7324 state._fsp--;
7325
7326 pushFollow(FOLLOW_2);
7327 rule__BasicInterpretation__Group__4();
7328
7329 state._fsp--;
7330
7331
7332 }
7333
7334 }
7335 catch (RecognitionException re) {
7336 reportError(re);
7337 recover(input,re);
7338 }
7339 finally {
7340
7341 restoreStackSize(stackSize);
7342
7343 }
7344 return ;
7345 }
7346 // $ANTLR end "rule__BasicInterpretation__Group__3"
7347
7348
7349 // $ANTLR start "rule__BasicInterpretation__Group__3__Impl"
7350 // InternalSolverLanguage.g:2267:1: rule__BasicInterpretation__Group__3__Impl : ( ')' ) ;
7351 public final void rule__BasicInterpretation__Group__3__Impl() throws RecognitionException {
7352
7353 int stackSize = keepStackSize();
7354
7355 try {
7356 // InternalSolverLanguage.g:2271:1: ( ( ')' ) )
7357 // InternalSolverLanguage.g:2272:1: ( ')' )
7358 {
7359 // InternalSolverLanguage.g:2272:1: ( ')' )
7360 // InternalSolverLanguage.g:2273:2: ')'
7361 {
7362 before(grammarAccess.getBasicInterpretationAccess().getRightParenthesisKeyword_3());
7363 match(input,18,FOLLOW_2);
7364 after(grammarAccess.getBasicInterpretationAccess().getRightParenthesisKeyword_3());
7365
7366 }
7367
7368
7369 }
7370
7371 }
7372 catch (RecognitionException re) {
7373 reportError(re);
7374 recover(input,re);
7375 }
7376 finally {
7377
7378 restoreStackSize(stackSize);
7379
7380 }
7381 return ;
7382 }
7383 // $ANTLR end "rule__BasicInterpretation__Group__3__Impl"
7384
7385
7386 // $ANTLR start "rule__BasicInterpretation__Group__4"
7387 // InternalSolverLanguage.g:2282:1: rule__BasicInterpretation__Group__4 : rule__BasicInterpretation__Group__4__Impl rule__BasicInterpretation__Group__5 ;
7388 public final void rule__BasicInterpretation__Group__4() throws RecognitionException {
7389
7390 int stackSize = keepStackSize();
7391
7392 try {
7393 // InternalSolverLanguage.g:2286:1: ( rule__BasicInterpretation__Group__4__Impl rule__BasicInterpretation__Group__5 )
7394 // InternalSolverLanguage.g:2287:2: rule__BasicInterpretation__Group__4__Impl rule__BasicInterpretation__Group__5
7395 {
7396 pushFollow(FOLLOW_15);
7397 rule__BasicInterpretation__Group__4__Impl();
7398
7399 state._fsp--;
7400
7401 pushFollow(FOLLOW_2);
7402 rule__BasicInterpretation__Group__5();
7403
7404 state._fsp--;
7405
7406
7407 }
7408
7409 }
7410 catch (RecognitionException re) {
7411 reportError(re);
7412 recover(input,re);
7413 }
7414 finally {
7415
7416 restoreStackSize(stackSize);
7417
7418 }
7419 return ;
7420 }
7421 // $ANTLR end "rule__BasicInterpretation__Group__4"
7422
7423
7424 // $ANTLR start "rule__BasicInterpretation__Group__4__Impl"
7425 // InternalSolverLanguage.g:2294:1: rule__BasicInterpretation__Group__4__Impl : ( ':' ) ;
7426 public final void rule__BasicInterpretation__Group__4__Impl() throws RecognitionException {
7427
7428 int stackSize = keepStackSize();
7429
7430 try {
7431 // InternalSolverLanguage.g:2298:1: ( ( ':' ) )
7432 // InternalSolverLanguage.g:2299:1: ( ':' )
7433 {
7434 // InternalSolverLanguage.g:2299:1: ( ':' )
7435 // InternalSolverLanguage.g:2300:2: ':'
7436 {
7437 before(grammarAccess.getBasicInterpretationAccess().getColonKeyword_4());
7438 match(input,19,FOLLOW_2);
7439 after(grammarAccess.getBasicInterpretationAccess().getColonKeyword_4());
7440
7441 }
7442
7443
7444 }
7445
7446 }
7447 catch (RecognitionException re) {
7448 reportError(re);
7449 recover(input,re);
7450 }
7451 finally {
7452
7453 restoreStackSize(stackSize);
7454
7455 }
7456 return ;
7457 }
7458 // $ANTLR end "rule__BasicInterpretation__Group__4__Impl"
7459
7460
7461 // $ANTLR start "rule__BasicInterpretation__Group__5"
7462 // InternalSolverLanguage.g:2309:1: rule__BasicInterpretation__Group__5 : rule__BasicInterpretation__Group__5__Impl ;
7463 public final void rule__BasicInterpretation__Group__5() throws RecognitionException {
7464
7465 int stackSize = keepStackSize();
7466
7467 try {
7468 // InternalSolverLanguage.g:2313:1: ( rule__BasicInterpretation__Group__5__Impl )
7469 // InternalSolverLanguage.g:2314:2: rule__BasicInterpretation__Group__5__Impl
7470 {
7471 pushFollow(FOLLOW_2);
7472 rule__BasicInterpretation__Group__5__Impl();
7473
7474 state._fsp--;
7475
7476
7477 }
7478
7479 }
7480 catch (RecognitionException re) {
7481 reportError(re);
7482 recover(input,re);
7483 }
7484 finally {
7485
7486 restoreStackSize(stackSize);
7487
7488 }
7489 return ;
7490 }
7491 // $ANTLR end "rule__BasicInterpretation__Group__5"
7492
7493
7494 // $ANTLR start "rule__BasicInterpretation__Group__5__Impl"
7495 // InternalSolverLanguage.g:2320:1: rule__BasicInterpretation__Group__5__Impl : ( ( rule__BasicInterpretation__ValueAssignment_5 ) ) ;
7496 public final void rule__BasicInterpretation__Group__5__Impl() throws RecognitionException {
7497
7498 int stackSize = keepStackSize();
7499
7500 try {
7501 // InternalSolverLanguage.g:2324:1: ( ( ( rule__BasicInterpretation__ValueAssignment_5 ) ) )
7502 // InternalSolverLanguage.g:2325:1: ( ( rule__BasicInterpretation__ValueAssignment_5 ) )
7503 {
7504 // InternalSolverLanguage.g:2325:1: ( ( rule__BasicInterpretation__ValueAssignment_5 ) )
7505 // InternalSolverLanguage.g:2326:2: ( rule__BasicInterpretation__ValueAssignment_5 )
7506 {
7507 before(grammarAccess.getBasicInterpretationAccess().getValueAssignment_5());
7508 // InternalSolverLanguage.g:2327:2: ( rule__BasicInterpretation__ValueAssignment_5 )
7509 // InternalSolverLanguage.g:2327:3: rule__BasicInterpretation__ValueAssignment_5
7510 {
7511 pushFollow(FOLLOW_2);
7512 rule__BasicInterpretation__ValueAssignment_5();
7513
7514 state._fsp--;
7515
7516
7517 }
7518
7519 after(grammarAccess.getBasicInterpretationAccess().getValueAssignment_5());
7520
7521 }
7522
7523
7524 }
7525
7526 }
7527 catch (RecognitionException re) {
7528 reportError(re);
7529 recover(input,re);
7530 }
7531 finally {
7532
7533 restoreStackSize(stackSize);
7534
7535 }
7536 return ;
7537 }
7538 // $ANTLR end "rule__BasicInterpretation__Group__5__Impl"
7539
7540
7541 // $ANTLR start "rule__ExistSymbol__Group__0"
7542 // InternalSolverLanguage.g:2336:1: rule__ExistSymbol__Group__0 : rule__ExistSymbol__Group__0__Impl rule__ExistSymbol__Group__1 ;
7543 public final void rule__ExistSymbol__Group__0() throws RecognitionException {
7544
7545 int stackSize = keepStackSize();
7546
7547 try {
7548 // InternalSolverLanguage.g:2340:1: ( rule__ExistSymbol__Group__0__Impl rule__ExistSymbol__Group__1 )
7549 // InternalSolverLanguage.g:2341:2: rule__ExistSymbol__Group__0__Impl rule__ExistSymbol__Group__1
7550 {
7551 pushFollow(FOLLOW_1);
7552 rule__ExistSymbol__Group__0__Impl();
7553
7554 state._fsp--;
7555
7556 pushFollow(FOLLOW_2);
7557 rule__ExistSymbol__Group__1();
7558
7559 state._fsp--;
7560
7561
7562 }
7563
7564 }
7565 catch (RecognitionException re) {
7566 reportError(re);
7567 recover(input,re);
7568 }
7569 finally {
7570
7571 restoreStackSize(stackSize);
7572
7573 }
7574 return ;
7575 }
7576 // $ANTLR end "rule__ExistSymbol__Group__0"
7577
7578
7579 // $ANTLR start "rule__ExistSymbol__Group__0__Impl"
7580 // InternalSolverLanguage.g:2348:1: rule__ExistSymbol__Group__0__Impl : ( 'exists' ) ;
7581 public final void rule__ExistSymbol__Group__0__Impl() throws RecognitionException {
7582
7583 int stackSize = keepStackSize();
7584
7585 try {
7586 // InternalSolverLanguage.g:2352:1: ( ( 'exists' ) )
7587 // InternalSolverLanguage.g:2353:1: ( 'exists' )
7588 {
7589 // InternalSolverLanguage.g:2353:1: ( 'exists' )
7590 // InternalSolverLanguage.g:2354:2: 'exists'
7591 {
7592 before(grammarAccess.getExistSymbolAccess().getExistsKeyword_0());
7593 match(input,20,FOLLOW_2);
7594 after(grammarAccess.getExistSymbolAccess().getExistsKeyword_0());
7595
7596 }
7597
7598
7599 }
7600
7601 }
7602 catch (RecognitionException re) {
7603 reportError(re);
7604 recover(input,re);
7605 }
7606 finally {
7607
7608 restoreStackSize(stackSize);
7609
7610 }
7611 return ;
7612 }
7613 // $ANTLR end "rule__ExistSymbol__Group__0__Impl"
7614
7615
7616 // $ANTLR start "rule__ExistSymbol__Group__1"
7617 // InternalSolverLanguage.g:2363:1: rule__ExistSymbol__Group__1 : rule__ExistSymbol__Group__1__Impl ;
7618 public final void rule__ExistSymbol__Group__1() throws RecognitionException {
7619
7620 int stackSize = keepStackSize();
7621
7622 try {
7623 // InternalSolverLanguage.g:2367:1: ( rule__ExistSymbol__Group__1__Impl )
7624 // InternalSolverLanguage.g:2368:2: rule__ExistSymbol__Group__1__Impl
7625 {
7626 pushFollow(FOLLOW_2);
7627 rule__ExistSymbol__Group__1__Impl();
7628
7629 state._fsp--;
7630
7631
7632 }
7633
7634 }
7635 catch (RecognitionException re) {
7636 reportError(re);
7637 recover(input,re);
7638 }
7639 finally {
7640
7641 restoreStackSize(stackSize);
7642
7643 }
7644 return ;
7645 }
7646 // $ANTLR end "rule__ExistSymbol__Group__1"
7647
7648
7649 // $ANTLR start "rule__ExistSymbol__Group__1__Impl"
7650 // InternalSolverLanguage.g:2374:1: rule__ExistSymbol__Group__1__Impl : ( () ) ;
7651 public final void rule__ExistSymbol__Group__1__Impl() throws RecognitionException {
7652
7653 int stackSize = keepStackSize();
7654
7655 try {
7656 // InternalSolverLanguage.g:2378:1: ( ( () ) )
7657 // InternalSolverLanguage.g:2379:1: ( () )
7658 {
7659 // InternalSolverLanguage.g:2379:1: ( () )
7660 // InternalSolverLanguage.g:2380:2: ()
7661 {
7662 before(grammarAccess.getExistSymbolAccess().getExistSymbolAction_1());
7663 // InternalSolverLanguage.g:2381:2: ()
7664 // InternalSolverLanguage.g:2381:3:
7665 {
7666 }
7667
7668 after(grammarAccess.getExistSymbolAccess().getExistSymbolAction_1());
7669
7670 }
7671
7672
7673 }
7674
7675 }
7676 finally {
7677
7678 restoreStackSize(stackSize);
7679
7680 }
7681 return ;
7682 }
7683 // $ANTLR end "rule__ExistSymbol__Group__1__Impl"
7684
7685
7686 // $ANTLR start "rule__EqualsSymbol__Group__0"
7687 // InternalSolverLanguage.g:2390:1: rule__EqualsSymbol__Group__0 : rule__EqualsSymbol__Group__0__Impl rule__EqualsSymbol__Group__1 ;
7688 public final void rule__EqualsSymbol__Group__0() throws RecognitionException {
7689
7690 int stackSize = keepStackSize();
7691
7692 try {
7693 // InternalSolverLanguage.g:2394:1: ( rule__EqualsSymbol__Group__0__Impl rule__EqualsSymbol__Group__1 )
7694 // InternalSolverLanguage.g:2395:2: rule__EqualsSymbol__Group__0__Impl rule__EqualsSymbol__Group__1
7695 {
7696 pushFollow(FOLLOW_1);
7697 rule__EqualsSymbol__Group__0__Impl();
7698
7699 state._fsp--;
7700
7701 pushFollow(FOLLOW_2);
7702 rule__EqualsSymbol__Group__1();
7703
7704 state._fsp--;
7705
7706
7707 }
7708
7709 }
7710 catch (RecognitionException re) {
7711 reportError(re);
7712 recover(input,re);
7713 }
7714 finally {
7715
7716 restoreStackSize(stackSize);
7717
7718 }
7719 return ;
7720 }
7721 // $ANTLR end "rule__EqualsSymbol__Group__0"
7722
7723
7724 // $ANTLR start "rule__EqualsSymbol__Group__0__Impl"
7725 // InternalSolverLanguage.g:2402:1: rule__EqualsSymbol__Group__0__Impl : ( 'equals' ) ;
7726 public final void rule__EqualsSymbol__Group__0__Impl() throws RecognitionException {
7727
7728 int stackSize = keepStackSize();
7729
7730 try {
7731 // InternalSolverLanguage.g:2406:1: ( ( 'equals' ) )
7732 // InternalSolverLanguage.g:2407:1: ( 'equals' )
7733 {
7734 // InternalSolverLanguage.g:2407:1: ( 'equals' )
7735 // InternalSolverLanguage.g:2408:2: 'equals'
7736 {
7737 before(grammarAccess.getEqualsSymbolAccess().getEqualsKeyword_0());
7738 match(input,21,FOLLOW_2);
7739 after(grammarAccess.getEqualsSymbolAccess().getEqualsKeyword_0());
7740
7741 }
7742
7743
7744 }
7745
7746 }
7747 catch (RecognitionException re) {
7748 reportError(re);
7749 recover(input,re);
7750 }
7751 finally {
7752
7753 restoreStackSize(stackSize);
7754
7755 }
7756 return ;
7757 }
7758 // $ANTLR end "rule__EqualsSymbol__Group__0__Impl"
7759
7760
7761 // $ANTLR start "rule__EqualsSymbol__Group__1"
7762 // InternalSolverLanguage.g:2417:1: rule__EqualsSymbol__Group__1 : rule__EqualsSymbol__Group__1__Impl ;
7763 public final void rule__EqualsSymbol__Group__1() throws RecognitionException {
7764
7765 int stackSize = keepStackSize();
7766
7767 try {
7768 // InternalSolverLanguage.g:2421:1: ( rule__EqualsSymbol__Group__1__Impl )
7769 // InternalSolverLanguage.g:2422:2: rule__EqualsSymbol__Group__1__Impl
7770 {
7771 pushFollow(FOLLOW_2);
7772 rule__EqualsSymbol__Group__1__Impl();
7773
7774 state._fsp--;
7775
7776
7777 }
7778
7779 }
7780 catch (RecognitionException re) {
7781 reportError(re);
7782 recover(input,re);
7783 }
7784 finally {
7785
7786 restoreStackSize(stackSize);
7787
7788 }
7789 return ;
7790 }
7791 // $ANTLR end "rule__EqualsSymbol__Group__1"
7792
7793
7794 // $ANTLR start "rule__EqualsSymbol__Group__1__Impl"
7795 // InternalSolverLanguage.g:2428:1: rule__EqualsSymbol__Group__1__Impl : ( () ) ;
7796 public final void rule__EqualsSymbol__Group__1__Impl() throws RecognitionException {
7797
7798 int stackSize = keepStackSize();
7799
7800 try {
7801 // InternalSolverLanguage.g:2432:1: ( ( () ) )
7802 // InternalSolverLanguage.g:2433:1: ( () )
7803 {
7804 // InternalSolverLanguage.g:2433:1: ( () )
7805 // InternalSolverLanguage.g:2434:2: ()
7806 {
7807 before(grammarAccess.getEqualsSymbolAccess().getEqualsSymbolAction_1());
7808 // InternalSolverLanguage.g:2435:2: ()
7809 // InternalSolverLanguage.g:2435:3:
7810 {
7811 }
7812
7813 after(grammarAccess.getEqualsSymbolAccess().getEqualsSymbolAction_1());
7814
7815 }
7816
7817
7818 }
7819
7820 }
7821 finally {
7822
7823 restoreStackSize(stackSize);
7824
7825 }
7826 return ;
7827 }
7828 // $ANTLR end "rule__EqualsSymbol__Group__1__Impl"
7829
7830
7831 // $ANTLR start "rule__BooleanSymbol__Group__0"
7832 // InternalSolverLanguage.g:2444:1: rule__BooleanSymbol__Group__0 : rule__BooleanSymbol__Group__0__Impl rule__BooleanSymbol__Group__1 ;
7833 public final void rule__BooleanSymbol__Group__0() throws RecognitionException {
7834
7835 int stackSize = keepStackSize();
7836
7837 try {
7838 // InternalSolverLanguage.g:2448:1: ( rule__BooleanSymbol__Group__0__Impl rule__BooleanSymbol__Group__1 )
7839 // InternalSolverLanguage.g:2449:2: rule__BooleanSymbol__Group__0__Impl rule__BooleanSymbol__Group__1
7840 {
7841 pushFollow(FOLLOW_1);
7842 rule__BooleanSymbol__Group__0__Impl();
7843
7844 state._fsp--;
7845
7846 pushFollow(FOLLOW_2);
7847 rule__BooleanSymbol__Group__1();
7848
7849 state._fsp--;
7850
7851
7852 }
7853
7854 }
7855 catch (RecognitionException re) {
7856 reportError(re);
7857 recover(input,re);
7858 }
7859 finally {
7860
7861 restoreStackSize(stackSize);
7862
7863 }
7864 return ;
7865 }
7866 // $ANTLR end "rule__BooleanSymbol__Group__0"
7867
7868
7869 // $ANTLR start "rule__BooleanSymbol__Group__0__Impl"
7870 // InternalSolverLanguage.g:2456:1: rule__BooleanSymbol__Group__0__Impl : ( 'bool' ) ;
7871 public final void rule__BooleanSymbol__Group__0__Impl() throws RecognitionException {
7872
7873 int stackSize = keepStackSize();
7874
7875 try {
7876 // InternalSolverLanguage.g:2460:1: ( ( 'bool' ) )
7877 // InternalSolverLanguage.g:2461:1: ( 'bool' )
7878 {
7879 // InternalSolverLanguage.g:2461:1: ( 'bool' )
7880 // InternalSolverLanguage.g:2462:2: 'bool'
7881 {
7882 before(grammarAccess.getBooleanSymbolAccess().getBoolKeyword_0());
7883 match(input,22,FOLLOW_2);
7884 after(grammarAccess.getBooleanSymbolAccess().getBoolKeyword_0());
7885
7886 }
7887
7888
7889 }
7890
7891 }
7892 catch (RecognitionException re) {
7893 reportError(re);
7894 recover(input,re);
7895 }
7896 finally {
7897
7898 restoreStackSize(stackSize);
7899
7900 }
7901 return ;
7902 }
7903 // $ANTLR end "rule__BooleanSymbol__Group__0__Impl"
7904
7905
7906 // $ANTLR start "rule__BooleanSymbol__Group__1"
7907 // InternalSolverLanguage.g:2471:1: rule__BooleanSymbol__Group__1 : rule__BooleanSymbol__Group__1__Impl ;
7908 public final void rule__BooleanSymbol__Group__1() throws RecognitionException {
7909
7910 int stackSize = keepStackSize();
7911
7912 try {
7913 // InternalSolverLanguage.g:2475:1: ( rule__BooleanSymbol__Group__1__Impl )
7914 // InternalSolverLanguage.g:2476:2: rule__BooleanSymbol__Group__1__Impl
7915 {
7916 pushFollow(FOLLOW_2);
7917 rule__BooleanSymbol__Group__1__Impl();
7918
7919 state._fsp--;
7920
7921
7922 }
7923
7924 }
7925 catch (RecognitionException re) {
7926 reportError(re);
7927 recover(input,re);
7928 }
7929 finally {
7930
7931 restoreStackSize(stackSize);
7932
7933 }
7934 return ;
7935 }
7936 // $ANTLR end "rule__BooleanSymbol__Group__1"
7937
7938
7939 // $ANTLR start "rule__BooleanSymbol__Group__1__Impl"
7940 // InternalSolverLanguage.g:2482:1: rule__BooleanSymbol__Group__1__Impl : ( () ) ;
7941 public final void rule__BooleanSymbol__Group__1__Impl() throws RecognitionException {
7942
7943 int stackSize = keepStackSize();
7944
7945 try {
7946 // InternalSolverLanguage.g:2486:1: ( ( () ) )
7947 // InternalSolverLanguage.g:2487:1: ( () )
7948 {
7949 // InternalSolverLanguage.g:2487:1: ( () )
7950 // InternalSolverLanguage.g:2488:2: ()
7951 {
7952 before(grammarAccess.getBooleanSymbolAccess().getBooleanSymbolAction_1());
7953 // InternalSolverLanguage.g:2489:2: ()
7954 // InternalSolverLanguage.g:2489:3:
7955 {
7956 }
7957
7958 after(grammarAccess.getBooleanSymbolAccess().getBooleanSymbolAction_1());
7959
7960 }
7961
7962
7963 }
7964
7965 }
7966 finally {
7967
7968 restoreStackSize(stackSize);
7969
7970 }
7971 return ;
7972 }
7973 // $ANTLR end "rule__BooleanSymbol__Group__1__Impl"
7974
7975
7976 // $ANTLR start "rule__IntegerSymbol__Group__0"
7977 // InternalSolverLanguage.g:2498:1: rule__IntegerSymbol__Group__0 : rule__IntegerSymbol__Group__0__Impl rule__IntegerSymbol__Group__1 ;
7978 public final void rule__IntegerSymbol__Group__0() throws RecognitionException {
7979
7980 int stackSize = keepStackSize();
7981
7982 try {
7983 // InternalSolverLanguage.g:2502:1: ( rule__IntegerSymbol__Group__0__Impl rule__IntegerSymbol__Group__1 )
7984 // InternalSolverLanguage.g:2503:2: rule__IntegerSymbol__Group__0__Impl rule__IntegerSymbol__Group__1
7985 {
7986 pushFollow(FOLLOW_1);
7987 rule__IntegerSymbol__Group__0__Impl();
7988
7989 state._fsp--;
7990
7991 pushFollow(FOLLOW_2);
7992 rule__IntegerSymbol__Group__1();
7993
7994 state._fsp--;
7995
7996
7997 }
7998
7999 }
8000 catch (RecognitionException re) {
8001 reportError(re);
8002 recover(input,re);
8003 }
8004 finally {
8005
8006 restoreStackSize(stackSize);
8007
8008 }
8009 return ;
8010 }
8011 // $ANTLR end "rule__IntegerSymbol__Group__0"
8012
8013
8014 // $ANTLR start "rule__IntegerSymbol__Group__0__Impl"
8015 // InternalSolverLanguage.g:2510:1: rule__IntegerSymbol__Group__0__Impl : ( 'int' ) ;
8016 public final void rule__IntegerSymbol__Group__0__Impl() throws RecognitionException {
8017
8018 int stackSize = keepStackSize();
8019
8020 try {
8021 // InternalSolverLanguage.g:2514:1: ( ( 'int' ) )
8022 // InternalSolverLanguage.g:2515:1: ( 'int' )
8023 {
8024 // InternalSolverLanguage.g:2515:1: ( 'int' )
8025 // InternalSolverLanguage.g:2516:2: 'int'
8026 {
8027 before(grammarAccess.getIntegerSymbolAccess().getIntKeyword_0());
8028 match(input,23,FOLLOW_2);
8029 after(grammarAccess.getIntegerSymbolAccess().getIntKeyword_0());
8030
8031 }
8032
8033
8034 }
8035
8036 }
8037 catch (RecognitionException re) {
8038 reportError(re);
8039 recover(input,re);
8040 }
8041 finally {
8042
8043 restoreStackSize(stackSize);
8044
8045 }
8046 return ;
8047 }
8048 // $ANTLR end "rule__IntegerSymbol__Group__0__Impl"
8049
8050
8051 // $ANTLR start "rule__IntegerSymbol__Group__1"
8052 // InternalSolverLanguage.g:2525:1: rule__IntegerSymbol__Group__1 : rule__IntegerSymbol__Group__1__Impl ;
8053 public final void rule__IntegerSymbol__Group__1() throws RecognitionException {
8054
8055 int stackSize = keepStackSize();
8056
8057 try {
8058 // InternalSolverLanguage.g:2529:1: ( rule__IntegerSymbol__Group__1__Impl )
8059 // InternalSolverLanguage.g:2530:2: rule__IntegerSymbol__Group__1__Impl
8060 {
8061 pushFollow(FOLLOW_2);
8062 rule__IntegerSymbol__Group__1__Impl();
8063
8064 state._fsp--;
8065
8066
8067 }
8068
8069 }
8070 catch (RecognitionException re) {
8071 reportError(re);
8072 recover(input,re);
8073 }
8074 finally {
8075
8076 restoreStackSize(stackSize);
8077
8078 }
8079 return ;
8080 }
8081 // $ANTLR end "rule__IntegerSymbol__Group__1"
8082
8083
8084 // $ANTLR start "rule__IntegerSymbol__Group__1__Impl"
8085 // InternalSolverLanguage.g:2536:1: rule__IntegerSymbol__Group__1__Impl : ( () ) ;
8086 public final void rule__IntegerSymbol__Group__1__Impl() throws RecognitionException {
8087
8088 int stackSize = keepStackSize();
8089
8090 try {
8091 // InternalSolverLanguage.g:2540:1: ( ( () ) )
8092 // InternalSolverLanguage.g:2541:1: ( () )
8093 {
8094 // InternalSolverLanguage.g:2541:1: ( () )
8095 // InternalSolverLanguage.g:2542:2: ()
8096 {
8097 before(grammarAccess.getIntegerSymbolAccess().getIntegerSymbolAction_1());
8098 // InternalSolverLanguage.g:2543:2: ()
8099 // InternalSolverLanguage.g:2543:3:
8100 {
8101 }
8102
8103 after(grammarAccess.getIntegerSymbolAccess().getIntegerSymbolAction_1());
8104
8105 }
8106
8107
8108 }
8109
8110 }
8111 finally {
8112
8113 restoreStackSize(stackSize);
8114
8115 }
8116 return ;
8117 }
8118 // $ANTLR end "rule__IntegerSymbol__Group__1__Impl"
8119
8120
8121 // $ANTLR start "rule__RealSymbol__Group__0"
8122 // InternalSolverLanguage.g:2552:1: rule__RealSymbol__Group__0 : rule__RealSymbol__Group__0__Impl rule__RealSymbol__Group__1 ;
8123 public final void rule__RealSymbol__Group__0() throws RecognitionException {
8124
8125 int stackSize = keepStackSize();
8126
8127 try {
8128 // InternalSolverLanguage.g:2556:1: ( rule__RealSymbol__Group__0__Impl rule__RealSymbol__Group__1 )
8129 // InternalSolverLanguage.g:2557:2: rule__RealSymbol__Group__0__Impl rule__RealSymbol__Group__1
8130 {
8131 pushFollow(FOLLOW_1);
8132 rule__RealSymbol__Group__0__Impl();
8133
8134 state._fsp--;
8135
8136 pushFollow(FOLLOW_2);
8137 rule__RealSymbol__Group__1();
8138
8139 state._fsp--;
8140
8141
8142 }
8143
8144 }
8145 catch (RecognitionException re) {
8146 reportError(re);
8147 recover(input,re);
8148 }
8149 finally {
8150
8151 restoreStackSize(stackSize);
8152
8153 }
8154 return ;
8155 }
8156 // $ANTLR end "rule__RealSymbol__Group__0"
8157
8158
8159 // $ANTLR start "rule__RealSymbol__Group__0__Impl"
8160 // InternalSolverLanguage.g:2564:1: rule__RealSymbol__Group__0__Impl : ( 'real' ) ;
8161 public final void rule__RealSymbol__Group__0__Impl() throws RecognitionException {
8162
8163 int stackSize = keepStackSize();
8164
8165 try {
8166 // InternalSolverLanguage.g:2568:1: ( ( 'real' ) )
8167 // InternalSolverLanguage.g:2569:1: ( 'real' )
8168 {
8169 // InternalSolverLanguage.g:2569:1: ( 'real' )
8170 // InternalSolverLanguage.g:2570:2: 'real'
8171 {
8172 before(grammarAccess.getRealSymbolAccess().getRealKeyword_0());
8173 match(input,24,FOLLOW_2);
8174 after(grammarAccess.getRealSymbolAccess().getRealKeyword_0());
8175
8176 }
8177
8178
8179 }
8180
8181 }
8182 catch (RecognitionException re) {
8183 reportError(re);
8184 recover(input,re);
8185 }
8186 finally {
8187
8188 restoreStackSize(stackSize);
8189
8190 }
8191 return ;
8192 }
8193 // $ANTLR end "rule__RealSymbol__Group__0__Impl"
8194
8195
8196 // $ANTLR start "rule__RealSymbol__Group__1"
8197 // InternalSolverLanguage.g:2579:1: rule__RealSymbol__Group__1 : rule__RealSymbol__Group__1__Impl ;
8198 public final void rule__RealSymbol__Group__1() throws RecognitionException {
8199
8200 int stackSize = keepStackSize();
8201
8202 try {
8203 // InternalSolverLanguage.g:2583:1: ( rule__RealSymbol__Group__1__Impl )
8204 // InternalSolverLanguage.g:2584:2: rule__RealSymbol__Group__1__Impl
8205 {
8206 pushFollow(FOLLOW_2);
8207 rule__RealSymbol__Group__1__Impl();
8208
8209 state._fsp--;
8210
8211
8212 }
8213
8214 }
8215 catch (RecognitionException re) {
8216 reportError(re);
8217 recover(input,re);
8218 }
8219 finally {
8220
8221 restoreStackSize(stackSize);
8222
8223 }
8224 return ;
8225 }
8226 // $ANTLR end "rule__RealSymbol__Group__1"
8227
8228
8229 // $ANTLR start "rule__RealSymbol__Group__1__Impl"
8230 // InternalSolverLanguage.g:2590:1: rule__RealSymbol__Group__1__Impl : ( () ) ;
8231 public final void rule__RealSymbol__Group__1__Impl() throws RecognitionException {
8232
8233 int stackSize = keepStackSize();
8234
8235 try {
8236 // InternalSolverLanguage.g:2594:1: ( ( () ) )
8237 // InternalSolverLanguage.g:2595:1: ( () )
8238 {
8239 // InternalSolverLanguage.g:2595:1: ( () )
8240 // InternalSolverLanguage.g:2596:2: ()
8241 {
8242 before(grammarAccess.getRealSymbolAccess().getRealSymbolAction_1());
8243 // InternalSolverLanguage.g:2597:2: ()
8244 // InternalSolverLanguage.g:2597:3:
8245 {
8246 }
8247
8248 after(grammarAccess.getRealSymbolAccess().getRealSymbolAction_1());
8249
8250 }
8251
8252
8253 }
8254
8255 }
8256 finally {
8257
8258 restoreStackSize(stackSize);
8259
8260 }
8261 return ;
8262 }
8263 // $ANTLR end "rule__RealSymbol__Group__1__Impl"
8264
8265
8266 // $ANTLR start "rule__StringSymbol__Group__0"
8267 // InternalSolverLanguage.g:2606:1: rule__StringSymbol__Group__0 : rule__StringSymbol__Group__0__Impl rule__StringSymbol__Group__1 ;
8268 public final void rule__StringSymbol__Group__0() throws RecognitionException {
8269
8270 int stackSize = keepStackSize();
8271
8272 try {
8273 // InternalSolverLanguage.g:2610:1: ( rule__StringSymbol__Group__0__Impl rule__StringSymbol__Group__1 )
8274 // InternalSolverLanguage.g:2611:2: rule__StringSymbol__Group__0__Impl rule__StringSymbol__Group__1
8275 {
8276 pushFollow(FOLLOW_1);
8277 rule__StringSymbol__Group__0__Impl();
8278
8279 state._fsp--;
8280
8281 pushFollow(FOLLOW_2);
8282 rule__StringSymbol__Group__1();
8283
8284 state._fsp--;
8285
8286
8287 }
8288
8289 }
8290 catch (RecognitionException re) {
8291 reportError(re);
8292 recover(input,re);
8293 }
8294 finally {
8295
8296 restoreStackSize(stackSize);
8297
8298 }
8299 return ;
8300 }
8301 // $ANTLR end "rule__StringSymbol__Group__0"
8302
8303
8304 // $ANTLR start "rule__StringSymbol__Group__0__Impl"
8305 // InternalSolverLanguage.g:2618:1: rule__StringSymbol__Group__0__Impl : ( 'string' ) ;
8306 public final void rule__StringSymbol__Group__0__Impl() throws RecognitionException {
8307
8308 int stackSize = keepStackSize();
8309
8310 try {
8311 // InternalSolverLanguage.g:2622:1: ( ( 'string' ) )
8312 // InternalSolverLanguage.g:2623:1: ( 'string' )
8313 {
8314 // InternalSolverLanguage.g:2623:1: ( 'string' )
8315 // InternalSolverLanguage.g:2624:2: 'string'
8316 {
8317 before(grammarAccess.getStringSymbolAccess().getStringKeyword_0());
8318 match(input,25,FOLLOW_2);
8319 after(grammarAccess.getStringSymbolAccess().getStringKeyword_0());
8320
8321 }
8322
8323
8324 }
8325
8326 }
8327 catch (RecognitionException re) {
8328 reportError(re);
8329 recover(input,re);
8330 }
8331 finally {
8332
8333 restoreStackSize(stackSize);
8334
8335 }
8336 return ;
8337 }
8338 // $ANTLR end "rule__StringSymbol__Group__0__Impl"
8339
8340
8341 // $ANTLR start "rule__StringSymbol__Group__1"
8342 // InternalSolverLanguage.g:2633:1: rule__StringSymbol__Group__1 : rule__StringSymbol__Group__1__Impl ;
8343 public final void rule__StringSymbol__Group__1() throws RecognitionException {
8344
8345 int stackSize = keepStackSize();
8346
8347 try {
8348 // InternalSolverLanguage.g:2637:1: ( rule__StringSymbol__Group__1__Impl )
8349 // InternalSolverLanguage.g:2638:2: rule__StringSymbol__Group__1__Impl
8350 {
8351 pushFollow(FOLLOW_2);
8352 rule__StringSymbol__Group__1__Impl();
8353
8354 state._fsp--;
8355
8356
8357 }
8358
8359 }
8360 catch (RecognitionException re) {
8361 reportError(re);
8362 recover(input,re);
8363 }
8364 finally {
8365
8366 restoreStackSize(stackSize);
8367
8368 }
8369 return ;
8370 }
8371 // $ANTLR end "rule__StringSymbol__Group__1"
8372
8373
8374 // $ANTLR start "rule__StringSymbol__Group__1__Impl"
8375 // InternalSolverLanguage.g:2644:1: rule__StringSymbol__Group__1__Impl : ( () ) ;
8376 public final void rule__StringSymbol__Group__1__Impl() throws RecognitionException {
8377
8378 int stackSize = keepStackSize();
8379
8380 try {
8381 // InternalSolverLanguage.g:2648:1: ( ( () ) )
8382 // InternalSolverLanguage.g:2649:1: ( () )
8383 {
8384 // InternalSolverLanguage.g:2649:1: ( () )
8385 // InternalSolverLanguage.g:2650:2: ()
8386 {
8387 before(grammarAccess.getStringSymbolAccess().getStringSymbolAction_1());
8388 // InternalSolverLanguage.g:2651:2: ()
8389 // InternalSolverLanguage.g:2651:3:
8390 {
8391 }
8392
8393 after(grammarAccess.getStringSymbolAccess().getStringSymbolAction_1());
8394
8395 }
8396
8397
8398 }
8399
8400 }
8401 finally {
8402
8403 restoreStackSize(stackSize);
8404
8405 }
8406 return ;
8407 }
8408 // $ANTLR end "rule__StringSymbol__Group__1__Impl"
8409
8410
8411 // $ANTLR start "rule__NamedObject__Group__0"
8412 // InternalSolverLanguage.g:2660:1: rule__NamedObject__Group__0 : rule__NamedObject__Group__0__Impl rule__NamedObject__Group__1 ;
8413 public final void rule__NamedObject__Group__0() throws RecognitionException {
8414
8415 int stackSize = keepStackSize();
8416
8417 try {
8418 // InternalSolverLanguage.g:2664:1: ( rule__NamedObject__Group__0__Impl rule__NamedObject__Group__1 )
8419 // InternalSolverLanguage.g:2665:2: rule__NamedObject__Group__0__Impl rule__NamedObject__Group__1
8420 {
8421 pushFollow(FOLLOW_16);
8422 rule__NamedObject__Group__0__Impl();
8423
8424 state._fsp--;
8425
8426 pushFollow(FOLLOW_2);
8427 rule__NamedObject__Group__1();
8428
8429 state._fsp--;
8430
8431
8432 }
8433
8434 }
8435 catch (RecognitionException re) {
8436 reportError(re);
8437 recover(input,re);
8438 }
8439 finally {
8440
8441 restoreStackSize(stackSize);
8442
8443 }
8444 return ;
8445 }
8446 // $ANTLR end "rule__NamedObject__Group__0"
8447
8448
8449 // $ANTLR start "rule__NamedObject__Group__0__Impl"
8450 // InternalSolverLanguage.g:2672:1: rule__NamedObject__Group__0__Impl : ( '\\'' ) ;
8451 public final void rule__NamedObject__Group__0__Impl() throws RecognitionException {
8452
8453 int stackSize = keepStackSize();
8454
8455 try {
8456 // InternalSolverLanguage.g:2676:1: ( ( '\\'' ) )
8457 // InternalSolverLanguage.g:2677:1: ( '\\'' )
8458 {
8459 // InternalSolverLanguage.g:2677:1: ( '\\'' )
8460 // InternalSolverLanguage.g:2678:2: '\\''
8461 {
8462 before(grammarAccess.getNamedObjectAccess().getApostropheKeyword_0());
8463 match(input,26,FOLLOW_2);
8464 after(grammarAccess.getNamedObjectAccess().getApostropheKeyword_0());
8465
8466 }
8467
8468
8469 }
8470
8471 }
8472 catch (RecognitionException re) {
8473 reportError(re);
8474 recover(input,re);
8475 }
8476 finally {
8477
8478 restoreStackSize(stackSize);
8479
8480 }
8481 return ;
8482 }
8483 // $ANTLR end "rule__NamedObject__Group__0__Impl"
8484
8485
8486 // $ANTLR start "rule__NamedObject__Group__1"
8487 // InternalSolverLanguage.g:2687:1: rule__NamedObject__Group__1 : rule__NamedObject__Group__1__Impl rule__NamedObject__Group__2 ;
8488 public final void rule__NamedObject__Group__1() throws RecognitionException {
8489
8490 int stackSize = keepStackSize();
8491
8492 try {
8493 // InternalSolverLanguage.g:2691:1: ( rule__NamedObject__Group__1__Impl rule__NamedObject__Group__2 )
8494 // InternalSolverLanguage.g:2692:2: rule__NamedObject__Group__1__Impl rule__NamedObject__Group__2
8495 {
8496 pushFollow(FOLLOW_17);
8497 rule__NamedObject__Group__1__Impl();
8498
8499 state._fsp--;
8500
8501 pushFollow(FOLLOW_2);
8502 rule__NamedObject__Group__2();
8503
8504 state._fsp--;
8505
8506
8507 }
8508
8509 }
8510 catch (RecognitionException re) {
8511 reportError(re);
8512 recover(input,re);
8513 }
8514 finally {
8515
8516 restoreStackSize(stackSize);
8517
8518 }
8519 return ;
8520 }
8521 // $ANTLR end "rule__NamedObject__Group__1"
8522
8523
8524 // $ANTLR start "rule__NamedObject__Group__1__Impl"
8525 // InternalSolverLanguage.g:2699:1: rule__NamedObject__Group__1__Impl : ( ( rule__NamedObject__NameAssignment_1 ) ) ;
8526 public final void rule__NamedObject__Group__1__Impl() throws RecognitionException {
8527
8528 int stackSize = keepStackSize();
8529
8530 try {
8531 // InternalSolverLanguage.g:2703:1: ( ( ( rule__NamedObject__NameAssignment_1 ) ) )
8532 // InternalSolverLanguage.g:2704:1: ( ( rule__NamedObject__NameAssignment_1 ) )
8533 {
8534 // InternalSolverLanguage.g:2704:1: ( ( rule__NamedObject__NameAssignment_1 ) )
8535 // InternalSolverLanguage.g:2705:2: ( rule__NamedObject__NameAssignment_1 )
8536 {
8537 before(grammarAccess.getNamedObjectAccess().getNameAssignment_1());
8538 // InternalSolverLanguage.g:2706:2: ( rule__NamedObject__NameAssignment_1 )
8539 // InternalSolverLanguage.g:2706:3: rule__NamedObject__NameAssignment_1
8540 {
8541 pushFollow(FOLLOW_2);
8542 rule__NamedObject__NameAssignment_1();
8543
8544 state._fsp--;
8545
8546
8547 }
8548
8549 after(grammarAccess.getNamedObjectAccess().getNameAssignment_1());
8550
8551 }
8552
8553
8554 }
8555
8556 }
8557 catch (RecognitionException re) {
8558 reportError(re);
8559 recover(input,re);
8560 }
8561 finally {
8562
8563 restoreStackSize(stackSize);
8564
8565 }
8566 return ;
8567 }
8568 // $ANTLR end "rule__NamedObject__Group__1__Impl"
8569
8570
8571 // $ANTLR start "rule__NamedObject__Group__2"
8572 // InternalSolverLanguage.g:2714:1: rule__NamedObject__Group__2 : rule__NamedObject__Group__2__Impl ;
8573 public final void rule__NamedObject__Group__2() throws RecognitionException {
8574
8575 int stackSize = keepStackSize();
8576
8577 try {
8578 // InternalSolverLanguage.g:2718:1: ( rule__NamedObject__Group__2__Impl )
8579 // InternalSolverLanguage.g:2719:2: rule__NamedObject__Group__2__Impl
8580 {
8581 pushFollow(FOLLOW_2);
8582 rule__NamedObject__Group__2__Impl();
8583
8584 state._fsp--;
8585
8586
8587 }
8588
8589 }
8590 catch (RecognitionException re) {
8591 reportError(re);
8592 recover(input,re);
8593 }
8594 finally {
8595
8596 restoreStackSize(stackSize);
8597
8598 }
8599 return ;
8600 }
8601 // $ANTLR end "rule__NamedObject__Group__2"
8602
8603
8604 // $ANTLR start "rule__NamedObject__Group__2__Impl"
8605 // InternalSolverLanguage.g:2725:1: rule__NamedObject__Group__2__Impl : ( '\\'' ) ;
8606 public final void rule__NamedObject__Group__2__Impl() throws RecognitionException {
8607
8608 int stackSize = keepStackSize();
8609
8610 try {
8611 // InternalSolverLanguage.g:2729:1: ( ( '\\'' ) )
8612 // InternalSolverLanguage.g:2730:1: ( '\\'' )
8613 {
8614 // InternalSolverLanguage.g:2730:1: ( '\\'' )
8615 // InternalSolverLanguage.g:2731:2: '\\''
8616 {
8617 before(grammarAccess.getNamedObjectAccess().getApostropheKeyword_2());
8618 match(input,26,FOLLOW_2);
8619 after(grammarAccess.getNamedObjectAccess().getApostropheKeyword_2());
8620
8621 }
8622
8623
8624 }
8625
8626 }
8627 catch (RecognitionException re) {
8628 reportError(re);
8629 recover(input,re);
8630 }
8631 finally {
8632
8633 restoreStackSize(stackSize);
8634
8635 }
8636 return ;
8637 }
8638 // $ANTLR end "rule__NamedObject__Group__2__Impl"
8639
8640
8641 // $ANTLR start "rule__PredicateSymbol__Group__0"
8642 // InternalSolverLanguage.g:2741:1: rule__PredicateSymbol__Group__0 : rule__PredicateSymbol__Group__0__Impl rule__PredicateSymbol__Group__1 ;
8643 public final void rule__PredicateSymbol__Group__0() throws RecognitionException {
8644
8645 int stackSize = keepStackSize();
8646
8647 try {
8648 // InternalSolverLanguage.g:2745:1: ( rule__PredicateSymbol__Group__0__Impl rule__PredicateSymbol__Group__1 )
8649 // InternalSolverLanguage.g:2746:2: rule__PredicateSymbol__Group__0__Impl rule__PredicateSymbol__Group__1
8650 {
8651 pushFollow(FOLLOW_16);
8652 rule__PredicateSymbol__Group__0__Impl();
8653
8654 state._fsp--;
8655
8656 pushFollow(FOLLOW_2);
8657 rule__PredicateSymbol__Group__1();
8658
8659 state._fsp--;
8660
8661
8662 }
8663
8664 }
8665 catch (RecognitionException re) {
8666 reportError(re);
8667 recover(input,re);
8668 }
8669 finally {
8670
8671 restoreStackSize(stackSize);
8672
8673 }
8674 return ;
8675 }
8676 // $ANTLR end "rule__PredicateSymbol__Group__0"
8677
8678
8679 // $ANTLR start "rule__PredicateSymbol__Group__0__Impl"
8680 // InternalSolverLanguage.g:2753:1: rule__PredicateSymbol__Group__0__Impl : ( 'predicate' ) ;
8681 public final void rule__PredicateSymbol__Group__0__Impl() throws RecognitionException {
8682
8683 int stackSize = keepStackSize();
8684
8685 try {
8686 // InternalSolverLanguage.g:2757:1: ( ( 'predicate' ) )
8687 // InternalSolverLanguage.g:2758:1: ( 'predicate' )
8688 {
8689 // InternalSolverLanguage.g:2758:1: ( 'predicate' )
8690 // InternalSolverLanguage.g:2759:2: 'predicate'
8691 {
8692 before(grammarAccess.getPredicateSymbolAccess().getPredicateKeyword_0());
8693 match(input,27,FOLLOW_2);
8694 after(grammarAccess.getPredicateSymbolAccess().getPredicateKeyword_0());
8695
8696 }
8697
8698
8699 }
8700
8701 }
8702 catch (RecognitionException re) {
8703 reportError(re);
8704 recover(input,re);
8705 }
8706 finally {
8707
8708 restoreStackSize(stackSize);
8709
8710 }
8711 return ;
8712 }
8713 // $ANTLR end "rule__PredicateSymbol__Group__0__Impl"
8714
8715
8716 // $ANTLR start "rule__PredicateSymbol__Group__1"
8717 // InternalSolverLanguage.g:2768:1: rule__PredicateSymbol__Group__1 : rule__PredicateSymbol__Group__1__Impl rule__PredicateSymbol__Group__2 ;
8718 public final void rule__PredicateSymbol__Group__1() throws RecognitionException {
8719
8720 int stackSize = keepStackSize();
8721
8722 try {
8723 // InternalSolverLanguage.g:2772:1: ( rule__PredicateSymbol__Group__1__Impl rule__PredicateSymbol__Group__2 )
8724 // InternalSolverLanguage.g:2773:2: rule__PredicateSymbol__Group__1__Impl rule__PredicateSymbol__Group__2
8725 {
8726 pushFollow(FOLLOW_11);
8727 rule__PredicateSymbol__Group__1__Impl();
8728
8729 state._fsp--;
8730
8731 pushFollow(FOLLOW_2);
8732 rule__PredicateSymbol__Group__2();
8733
8734 state._fsp--;
8735
8736
8737 }
8738
8739 }
8740 catch (RecognitionException re) {
8741 reportError(re);
8742 recover(input,re);
8743 }
8744 finally {
8745
8746 restoreStackSize(stackSize);
8747
8748 }
8749 return ;
8750 }
8751 // $ANTLR end "rule__PredicateSymbol__Group__1"
8752
8753
8754 // $ANTLR start "rule__PredicateSymbol__Group__1__Impl"
8755 // InternalSolverLanguage.g:2780:1: rule__PredicateSymbol__Group__1__Impl : ( ( rule__PredicateSymbol__SymbolAssignment_1 ) ) ;
8756 public final void rule__PredicateSymbol__Group__1__Impl() throws RecognitionException {
8757
8758 int stackSize = keepStackSize();
8759
8760 try {
8761 // InternalSolverLanguage.g:2784:1: ( ( ( rule__PredicateSymbol__SymbolAssignment_1 ) ) )
8762 // InternalSolverLanguage.g:2785:1: ( ( rule__PredicateSymbol__SymbolAssignment_1 ) )
8763 {
8764 // InternalSolverLanguage.g:2785:1: ( ( rule__PredicateSymbol__SymbolAssignment_1 ) )
8765 // InternalSolverLanguage.g:2786:2: ( rule__PredicateSymbol__SymbolAssignment_1 )
8766 {
8767 before(grammarAccess.getPredicateSymbolAccess().getSymbolAssignment_1());
8768 // InternalSolverLanguage.g:2787:2: ( rule__PredicateSymbol__SymbolAssignment_1 )
8769 // InternalSolverLanguage.g:2787:3: rule__PredicateSymbol__SymbolAssignment_1
8770 {
8771 pushFollow(FOLLOW_2);
8772 rule__PredicateSymbol__SymbolAssignment_1();
8773
8774 state._fsp--;
8775
8776
8777 }
8778
8779 after(grammarAccess.getPredicateSymbolAccess().getSymbolAssignment_1());
8780
8781 }
8782
8783
8784 }
8785
8786 }
8787 catch (RecognitionException re) {
8788 reportError(re);
8789 recover(input,re);
8790 }
8791 finally {
8792
8793 restoreStackSize(stackSize);
8794
8795 }
8796 return ;
8797 }
8798 // $ANTLR end "rule__PredicateSymbol__Group__1__Impl"
8799
8800
8801 // $ANTLR start "rule__PredicateSymbol__Group__2"
8802 // InternalSolverLanguage.g:2795:1: rule__PredicateSymbol__Group__2 : rule__PredicateSymbol__Group__2__Impl rule__PredicateSymbol__Group__3 ;
8803 public final void rule__PredicateSymbol__Group__2() throws RecognitionException {
8804
8805 int stackSize = keepStackSize();
8806
8807 try {
8808 // InternalSolverLanguage.g:2799:1: ( rule__PredicateSymbol__Group__2__Impl rule__PredicateSymbol__Group__3 )
8809 // InternalSolverLanguage.g:2800:2: rule__PredicateSymbol__Group__2__Impl rule__PredicateSymbol__Group__3
8810 {
8811 pushFollow(FOLLOW_18);
8812 rule__PredicateSymbol__Group__2__Impl();
8813
8814 state._fsp--;
8815
8816 pushFollow(FOLLOW_2);
8817 rule__PredicateSymbol__Group__3();
8818
8819 state._fsp--;
8820
8821
8822 }
8823
8824 }
8825 catch (RecognitionException re) {
8826 reportError(re);
8827 recover(input,re);
8828 }
8829 finally {
8830
8831 restoreStackSize(stackSize);
8832
8833 }
8834 return ;
8835 }
8836 // $ANTLR end "rule__PredicateSymbol__Group__2"
8837
8838
8839 // $ANTLR start "rule__PredicateSymbol__Group__2__Impl"
8840 // InternalSolverLanguage.g:2807:1: rule__PredicateSymbol__Group__2__Impl : ( '(' ) ;
8841 public final void rule__PredicateSymbol__Group__2__Impl() throws RecognitionException {
8842
8843 int stackSize = keepStackSize();
8844
8845 try {
8846 // InternalSolverLanguage.g:2811:1: ( ( '(' ) )
8847 // InternalSolverLanguage.g:2812:1: ( '(' )
8848 {
8849 // InternalSolverLanguage.g:2812:1: ( '(' )
8850 // InternalSolverLanguage.g:2813:2: '('
8851 {
8852 before(grammarAccess.getPredicateSymbolAccess().getLeftParenthesisKeyword_2());
8853 match(input,17,FOLLOW_2);
8854 after(grammarAccess.getPredicateSymbolAccess().getLeftParenthesisKeyword_2());
8855
8856 }
8857
8858
8859 }
8860
8861 }
8862 catch (RecognitionException re) {
8863 reportError(re);
8864 recover(input,re);
8865 }
8866 finally {
8867
8868 restoreStackSize(stackSize);
8869
8870 }
8871 return ;
8872 }
8873 // $ANTLR end "rule__PredicateSymbol__Group__2__Impl"
8874
8875
8876 // $ANTLR start "rule__PredicateSymbol__Group__3"
8877 // InternalSolverLanguage.g:2822:1: rule__PredicateSymbol__Group__3 : rule__PredicateSymbol__Group__3__Impl rule__PredicateSymbol__Group__4 ;
8878 public final void rule__PredicateSymbol__Group__3() throws RecognitionException {
8879
8880 int stackSize = keepStackSize();
8881
8882 try {
8883 // InternalSolverLanguage.g:2826:1: ( rule__PredicateSymbol__Group__3__Impl rule__PredicateSymbol__Group__4 )
8884 // InternalSolverLanguage.g:2827:2: rule__PredicateSymbol__Group__3__Impl rule__PredicateSymbol__Group__4
8885 {
8886 pushFollow(FOLLOW_18);
8887 rule__PredicateSymbol__Group__3__Impl();
8888
8889 state._fsp--;
8890
8891 pushFollow(FOLLOW_2);
8892 rule__PredicateSymbol__Group__4();
8893
8894 state._fsp--;
8895
8896
8897 }
8898
8899 }
8900 catch (RecognitionException re) {
8901 reportError(re);
8902 recover(input,re);
8903 }
8904 finally {
8905
8906 restoreStackSize(stackSize);
8907
8908 }
8909 return ;
8910 }
8911 // $ANTLR end "rule__PredicateSymbol__Group__3"
8912
8913
8914 // $ANTLR start "rule__PredicateSymbol__Group__3__Impl"
8915 // InternalSolverLanguage.g:2834:1: rule__PredicateSymbol__Group__3__Impl : ( ( rule__PredicateSymbol__ParametersAssignment_3 )* ) ;
8916 public final void rule__PredicateSymbol__Group__3__Impl() throws RecognitionException {
8917
8918 int stackSize = keepStackSize();
8919
8920 try {
8921 // InternalSolverLanguage.g:2838:1: ( ( ( rule__PredicateSymbol__ParametersAssignment_3 )* ) )
8922 // InternalSolverLanguage.g:2839:1: ( ( rule__PredicateSymbol__ParametersAssignment_3 )* )
8923 {
8924 // InternalSolverLanguage.g:2839:1: ( ( rule__PredicateSymbol__ParametersAssignment_3 )* )
8925 // InternalSolverLanguage.g:2840:2: ( rule__PredicateSymbol__ParametersAssignment_3 )*
8926 {
8927 before(grammarAccess.getPredicateSymbolAccess().getParametersAssignment_3());
8928 // InternalSolverLanguage.g:2841:2: ( rule__PredicateSymbol__ParametersAssignment_3 )*
8929 loop26:
8930 do {
8931 int alt26=2;
8932 int LA26_0 = input.LA(1);
8933
8934 if ( (LA26_0==RULE_ID) ) {
8935 alt26=1;
8936 }
8937
8938
8939 switch (alt26) {
8940 case 1 :
8941 // InternalSolverLanguage.g:2841:3: rule__PredicateSymbol__ParametersAssignment_3
8942 {
8943 pushFollow(FOLLOW_19);
8944 rule__PredicateSymbol__ParametersAssignment_3();
8945
8946 state._fsp--;
8947
8948
8949 }
8950 break;
8951
8952 default :
8953 break loop26;
8954 }
8955 } while (true);
8956
8957 after(grammarAccess.getPredicateSymbolAccess().getParametersAssignment_3());
8958
8959 }
8960
8961
8962 }
8963
8964 }
8965 catch (RecognitionException re) {
8966 reportError(re);
8967 recover(input,re);
8968 }
8969 finally {
8970
8971 restoreStackSize(stackSize);
8972
8973 }
8974 return ;
8975 }
8976 // $ANTLR end "rule__PredicateSymbol__Group__3__Impl"
8977
8978
8979 // $ANTLR start "rule__PredicateSymbol__Group__4"
8980 // InternalSolverLanguage.g:2849:1: rule__PredicateSymbol__Group__4 : rule__PredicateSymbol__Group__4__Impl rule__PredicateSymbol__Group__5 ;
8981 public final void rule__PredicateSymbol__Group__4() throws RecognitionException {
8982
8983 int stackSize = keepStackSize();
8984
8985 try {
8986 // InternalSolverLanguage.g:2853:1: ( rule__PredicateSymbol__Group__4__Impl rule__PredicateSymbol__Group__5 )
8987 // InternalSolverLanguage.g:2854:2: rule__PredicateSymbol__Group__4__Impl rule__PredicateSymbol__Group__5
8988 {
8989 pushFollow(FOLLOW_14);
8990 rule__PredicateSymbol__Group__4__Impl();
8991
8992 state._fsp--;
8993
8994 pushFollow(FOLLOW_2);
8995 rule__PredicateSymbol__Group__5();
8996
8997 state._fsp--;
8998
8999
9000 }
9001
9002 }
9003 catch (RecognitionException re) {
9004 reportError(re);
9005 recover(input,re);
9006 }
9007 finally {
9008
9009 restoreStackSize(stackSize);
9010
9011 }
9012 return ;
9013 }
9014 // $ANTLR end "rule__PredicateSymbol__Group__4"
9015
9016
9017 // $ANTLR start "rule__PredicateSymbol__Group__4__Impl"
9018 // InternalSolverLanguage.g:2861:1: rule__PredicateSymbol__Group__4__Impl : ( ')' ) ;
9019 public final void rule__PredicateSymbol__Group__4__Impl() throws RecognitionException {
9020
9021 int stackSize = keepStackSize();
9022
9023 try {
9024 // InternalSolverLanguage.g:2865:1: ( ( ')' ) )
9025 // InternalSolverLanguage.g:2866:1: ( ')' )
9026 {
9027 // InternalSolverLanguage.g:2866:1: ( ')' )
9028 // InternalSolverLanguage.g:2867:2: ')'
9029 {
9030 before(grammarAccess.getPredicateSymbolAccess().getRightParenthesisKeyword_4());
9031 match(input,18,FOLLOW_2);
9032 after(grammarAccess.getPredicateSymbolAccess().getRightParenthesisKeyword_4());
9033
9034 }
9035
9036
9037 }
9038
9039 }
9040 catch (RecognitionException re) {
9041 reportError(re);
9042 recover(input,re);
9043 }
9044 finally {
9045
9046 restoreStackSize(stackSize);
9047
9048 }
9049 return ;
9050 }
9051 // $ANTLR end "rule__PredicateSymbol__Group__4__Impl"
9052
9053
9054 // $ANTLR start "rule__PredicateSymbol__Group__5"
9055 // InternalSolverLanguage.g:2876:1: rule__PredicateSymbol__Group__5 : rule__PredicateSymbol__Group__5__Impl rule__PredicateSymbol__Group__6 ;
9056 public final void rule__PredicateSymbol__Group__5() throws RecognitionException {
9057
9058 int stackSize = keepStackSize();
9059
9060 try {
9061 // InternalSolverLanguage.g:2880:1: ( rule__PredicateSymbol__Group__5__Impl rule__PredicateSymbol__Group__6 )
9062 // InternalSolverLanguage.g:2881:2: rule__PredicateSymbol__Group__5__Impl rule__PredicateSymbol__Group__6
9063 {
9064 pushFollow(FOLLOW_20);
9065 rule__PredicateSymbol__Group__5__Impl();
9066
9067 state._fsp--;
9068
9069 pushFollow(FOLLOW_2);
9070 rule__PredicateSymbol__Group__6();
9071
9072 state._fsp--;
9073
9074
9075 }
9076
9077 }
9078 catch (RecognitionException re) {
9079 reportError(re);
9080 recover(input,re);
9081 }
9082 finally {
9083
9084 restoreStackSize(stackSize);
9085
9086 }
9087 return ;
9088 }
9089 // $ANTLR end "rule__PredicateSymbol__Group__5"
9090
9091
9092 // $ANTLR start "rule__PredicateSymbol__Group__5__Impl"
9093 // InternalSolverLanguage.g:2888:1: rule__PredicateSymbol__Group__5__Impl : ( ':' ) ;
9094 public final void rule__PredicateSymbol__Group__5__Impl() throws RecognitionException {
9095
9096 int stackSize = keepStackSize();
9097
9098 try {
9099 // InternalSolverLanguage.g:2892:1: ( ( ':' ) )
9100 // InternalSolverLanguage.g:2893:1: ( ':' )
9101 {
9102 // InternalSolverLanguage.g:2893:1: ( ':' )
9103 // InternalSolverLanguage.g:2894:2: ':'
9104 {
9105 before(grammarAccess.getPredicateSymbolAccess().getColonKeyword_5());
9106 match(input,19,FOLLOW_2);
9107 after(grammarAccess.getPredicateSymbolAccess().getColonKeyword_5());
9108
9109 }
9110
9111
9112 }
9113
9114 }
9115 catch (RecognitionException re) {
9116 reportError(re);
9117 recover(input,re);
9118 }
9119 finally {
9120
9121 restoreStackSize(stackSize);
9122
9123 }
9124 return ;
9125 }
9126 // $ANTLR end "rule__PredicateSymbol__Group__5__Impl"
9127
9128
9129 // $ANTLR start "rule__PredicateSymbol__Group__6"
9130 // InternalSolverLanguage.g:2903:1: rule__PredicateSymbol__Group__6 : rule__PredicateSymbol__Group__6__Impl rule__PredicateSymbol__Group__7 ;
9131 public final void rule__PredicateSymbol__Group__6() throws RecognitionException {
9132
9133 int stackSize = keepStackSize();
9134
9135 try {
9136 // InternalSolverLanguage.g:2907:1: ( rule__PredicateSymbol__Group__6__Impl rule__PredicateSymbol__Group__7 )
9137 // InternalSolverLanguage.g:2908:2: rule__PredicateSymbol__Group__6__Impl rule__PredicateSymbol__Group__7
9138 {
9139 pushFollow(FOLLOW_6);
9140 rule__PredicateSymbol__Group__6__Impl();
9141
9142 state._fsp--;
9143
9144 pushFollow(FOLLOW_2);
9145 rule__PredicateSymbol__Group__7();
9146
9147 state._fsp--;
9148
9149
9150 }
9151
9152 }
9153 catch (RecognitionException re) {
9154 reportError(re);
9155 recover(input,re);
9156 }
9157 finally {
9158
9159 restoreStackSize(stackSize);
9160
9161 }
9162 return ;
9163 }
9164 // $ANTLR end "rule__PredicateSymbol__Group__6"
9165
9166
9167 // $ANTLR start "rule__PredicateSymbol__Group__6__Impl"
9168 // InternalSolverLanguage.g:2915:1: rule__PredicateSymbol__Group__6__Impl : ( ( rule__PredicateSymbol__Alternatives_6 ) ) ;
9169 public final void rule__PredicateSymbol__Group__6__Impl() throws RecognitionException {
9170
9171 int stackSize = keepStackSize();
9172
9173 try {
9174 // InternalSolverLanguage.g:2919:1: ( ( ( rule__PredicateSymbol__Alternatives_6 ) ) )
9175 // InternalSolverLanguage.g:2920:1: ( ( rule__PredicateSymbol__Alternatives_6 ) )
9176 {
9177 // InternalSolverLanguage.g:2920:1: ( ( rule__PredicateSymbol__Alternatives_6 ) )
9178 // InternalSolverLanguage.g:2921:2: ( rule__PredicateSymbol__Alternatives_6 )
9179 {
9180 before(grammarAccess.getPredicateSymbolAccess().getAlternatives_6());
9181 // InternalSolverLanguage.g:2922:2: ( rule__PredicateSymbol__Alternatives_6 )
9182 // InternalSolverLanguage.g:2922:3: rule__PredicateSymbol__Alternatives_6
9183 {
9184 pushFollow(FOLLOW_2);
9185 rule__PredicateSymbol__Alternatives_6();
9186
9187 state._fsp--;
9188
9189
9190 }
9191
9192 after(grammarAccess.getPredicateSymbolAccess().getAlternatives_6());
9193
9194 }
9195
9196
9197 }
9198
9199 }
9200 catch (RecognitionException re) {
9201 reportError(re);
9202 recover(input,re);
9203 }
9204 finally {
9205
9206 restoreStackSize(stackSize);
9207
9208 }
9209 return ;
9210 }
9211 // $ANTLR end "rule__PredicateSymbol__Group__6__Impl"
9212
9213
9214 // $ANTLR start "rule__PredicateSymbol__Group__7"
9215 // InternalSolverLanguage.g:2930:1: rule__PredicateSymbol__Group__7 : rule__PredicateSymbol__Group__7__Impl ;
9216 public final void rule__PredicateSymbol__Group__7() throws RecognitionException {
9217
9218 int stackSize = keepStackSize();
9219
9220 try {
9221 // InternalSolverLanguage.g:2934:1: ( rule__PredicateSymbol__Group__7__Impl )
9222 // InternalSolverLanguage.g:2935:2: rule__PredicateSymbol__Group__7__Impl
9223 {
9224 pushFollow(FOLLOW_2);
9225 rule__PredicateSymbol__Group__7__Impl();
9226
9227 state._fsp--;
9228
9229
9230 }
9231
9232 }
9233 catch (RecognitionException re) {
9234 reportError(re);
9235 recover(input,re);
9236 }
9237 finally {
9238
9239 restoreStackSize(stackSize);
9240
9241 }
9242 return ;
9243 }
9244 // $ANTLR end "rule__PredicateSymbol__Group__7"
9245
9246
9247 // $ANTLR start "rule__PredicateSymbol__Group__7__Impl"
9248 // InternalSolverLanguage.g:2941:1: rule__PredicateSymbol__Group__7__Impl : ( '.' ) ;
9249 public final void rule__PredicateSymbol__Group__7__Impl() throws RecognitionException {
9250
9251 int stackSize = keepStackSize();
9252
9253 try {
9254 // InternalSolverLanguage.g:2945:1: ( ( '.' ) )
9255 // InternalSolverLanguage.g:2946:1: ( '.' )
9256 {
9257 // InternalSolverLanguage.g:2946:1: ( '.' )
9258 // InternalSolverLanguage.g:2947:2: '.'
9259 {
9260 before(grammarAccess.getPredicateSymbolAccess().getFullStopKeyword_7());
9261 match(input,14,FOLLOW_2);
9262 after(grammarAccess.getPredicateSymbolAccess().getFullStopKeyword_7());
9263
9264 }
9265
9266
9267 }
9268
9269 }
9270 catch (RecognitionException re) {
9271 reportError(re);
9272 recover(input,re);
9273 }
9274 finally {
9275
9276 restoreStackSize(stackSize);
9277
9278 }
9279 return ;
9280 }
9281 // $ANTLR end "rule__PredicateSymbol__Group__7__Impl"
9282
9283
9284 // $ANTLR start "rule__PredicateSymbol__Group_6_1__0"
9285 // InternalSolverLanguage.g:2957:1: rule__PredicateSymbol__Group_6_1__0 : rule__PredicateSymbol__Group_6_1__0__Impl rule__PredicateSymbol__Group_6_1__1 ;
9286 public final void rule__PredicateSymbol__Group_6_1__0() throws RecognitionException {
9287
9288 int stackSize = keepStackSize();
9289
9290 try {
9291 // InternalSolverLanguage.g:2961:1: ( rule__PredicateSymbol__Group_6_1__0__Impl rule__PredicateSymbol__Group_6_1__1 )
9292 // InternalSolverLanguage.g:2962:2: rule__PredicateSymbol__Group_6_1__0__Impl rule__PredicateSymbol__Group_6_1__1
9293 {
9294 pushFollow(FOLLOW_21);
9295 rule__PredicateSymbol__Group_6_1__0__Impl();
9296
9297 state._fsp--;
9298
9299 pushFollow(FOLLOW_2);
9300 rule__PredicateSymbol__Group_6_1__1();
9301
9302 state._fsp--;
9303
9304
9305 }
9306
9307 }
9308 catch (RecognitionException re) {
9309 reportError(re);
9310 recover(input,re);
9311 }
9312 finally {
9313
9314 restoreStackSize(stackSize);
9315
9316 }
9317 return ;
9318 }
9319 // $ANTLR end "rule__PredicateSymbol__Group_6_1__0"
9320
9321
9322 // $ANTLR start "rule__PredicateSymbol__Group_6_1__0__Impl"
9323 // InternalSolverLanguage.g:2969:1: rule__PredicateSymbol__Group_6_1__0__Impl : ( ( rule__PredicateSymbol__BodiesAssignment_6_1_0 ) ) ;
9324 public final void rule__PredicateSymbol__Group_6_1__0__Impl() throws RecognitionException {
9325
9326 int stackSize = keepStackSize();
9327
9328 try {
9329 // InternalSolverLanguage.g:2973:1: ( ( ( rule__PredicateSymbol__BodiesAssignment_6_1_0 ) ) )
9330 // InternalSolverLanguage.g:2974:1: ( ( rule__PredicateSymbol__BodiesAssignment_6_1_0 ) )
9331 {
9332 // InternalSolverLanguage.g:2974:1: ( ( rule__PredicateSymbol__BodiesAssignment_6_1_0 ) )
9333 // InternalSolverLanguage.g:2975:2: ( rule__PredicateSymbol__BodiesAssignment_6_1_0 )
9334 {
9335 before(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_0());
9336 // InternalSolverLanguage.g:2976:2: ( rule__PredicateSymbol__BodiesAssignment_6_1_0 )
9337 // InternalSolverLanguage.g:2976:3: rule__PredicateSymbol__BodiesAssignment_6_1_0
9338 {
9339 pushFollow(FOLLOW_2);
9340 rule__PredicateSymbol__BodiesAssignment_6_1_0();
9341
9342 state._fsp--;
9343
9344
9345 }
9346
9347 after(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_0());
9348
9349 }
9350
9351
9352 }
9353
9354 }
9355 catch (RecognitionException re) {
9356 reportError(re);
9357 recover(input,re);
9358 }
9359 finally {
9360
9361 restoreStackSize(stackSize);
9362
9363 }
9364 return ;
9365 }
9366 // $ANTLR end "rule__PredicateSymbol__Group_6_1__0__Impl"
9367
9368
9369 // $ANTLR start "rule__PredicateSymbol__Group_6_1__1"
9370 // InternalSolverLanguage.g:2984:1: rule__PredicateSymbol__Group_6_1__1 : rule__PredicateSymbol__Group_6_1__1__Impl ;
9371 public final void rule__PredicateSymbol__Group_6_1__1() throws RecognitionException {
9372
9373 int stackSize = keepStackSize();
9374
9375 try {
9376 // InternalSolverLanguage.g:2988:1: ( rule__PredicateSymbol__Group_6_1__1__Impl )
9377 // InternalSolverLanguage.g:2989:2: rule__PredicateSymbol__Group_6_1__1__Impl
9378 {
9379 pushFollow(FOLLOW_2);
9380 rule__PredicateSymbol__Group_6_1__1__Impl();
9381
9382 state._fsp--;
9383
9384
9385 }
9386
9387 }
9388 catch (RecognitionException re) {
9389 reportError(re);
9390 recover(input,re);
9391 }
9392 finally {
9393
9394 restoreStackSize(stackSize);
9395
9396 }
9397 return ;
9398 }
9399 // $ANTLR end "rule__PredicateSymbol__Group_6_1__1"
9400
9401
9402 // $ANTLR start "rule__PredicateSymbol__Group_6_1__1__Impl"
9403 // InternalSolverLanguage.g:2995:1: rule__PredicateSymbol__Group_6_1__1__Impl : ( ( rule__PredicateSymbol__Group_6_1_1__0 )* ) ;
9404 public final void rule__PredicateSymbol__Group_6_1__1__Impl() throws RecognitionException {
9405
9406 int stackSize = keepStackSize();
9407
9408 try {
9409 // InternalSolverLanguage.g:2999:1: ( ( ( rule__PredicateSymbol__Group_6_1_1__0 )* ) )
9410 // InternalSolverLanguage.g:3000:1: ( ( rule__PredicateSymbol__Group_6_1_1__0 )* )
9411 {
9412 // InternalSolverLanguage.g:3000:1: ( ( rule__PredicateSymbol__Group_6_1_1__0 )* )
9413 // InternalSolverLanguage.g:3001:2: ( rule__PredicateSymbol__Group_6_1_1__0 )*
9414 {
9415 before(grammarAccess.getPredicateSymbolAccess().getGroup_6_1_1());
9416 // InternalSolverLanguage.g:3002:2: ( rule__PredicateSymbol__Group_6_1_1__0 )*
9417 loop27:
9418 do {
9419 int alt27=2;
9420 int LA27_0 = input.LA(1);
9421
9422 if ( (LA27_0==28) ) {
9423 alt27=1;
9424 }
9425
9426
9427 switch (alt27) {
9428 case 1 :
9429 // InternalSolverLanguage.g:3002:3: rule__PredicateSymbol__Group_6_1_1__0
9430 {
9431 pushFollow(FOLLOW_22);
9432 rule__PredicateSymbol__Group_6_1_1__0();
9433
9434 state._fsp--;
9435
9436
9437 }
9438 break;
9439
9440 default :
9441 break loop27;
9442 }
9443 } while (true);
9444
9445 after(grammarAccess.getPredicateSymbolAccess().getGroup_6_1_1());
9446
9447 }
9448
9449
9450 }
9451
9452 }
9453 catch (RecognitionException re) {
9454 reportError(re);
9455 recover(input,re);
9456 }
9457 finally {
9458
9459 restoreStackSize(stackSize);
9460
9461 }
9462 return ;
9463 }
9464 // $ANTLR end "rule__PredicateSymbol__Group_6_1__1__Impl"
9465
9466
9467 // $ANTLR start "rule__PredicateSymbol__Group_6_1_1__0"
9468 // InternalSolverLanguage.g:3011:1: rule__PredicateSymbol__Group_6_1_1__0 : rule__PredicateSymbol__Group_6_1_1__0__Impl rule__PredicateSymbol__Group_6_1_1__1 ;
9469 public final void rule__PredicateSymbol__Group_6_1_1__0() throws RecognitionException {
9470
9471 int stackSize = keepStackSize();
9472
9473 try {
9474 // InternalSolverLanguage.g:3015:1: ( rule__PredicateSymbol__Group_6_1_1__0__Impl rule__PredicateSymbol__Group_6_1_1__1 )
9475 // InternalSolverLanguage.g:3016:2: rule__PredicateSymbol__Group_6_1_1__0__Impl rule__PredicateSymbol__Group_6_1_1__1
9476 {
9477 pushFollow(FOLLOW_20);
9478 rule__PredicateSymbol__Group_6_1_1__0__Impl();
9479
9480 state._fsp--;
9481
9482 pushFollow(FOLLOW_2);
9483 rule__PredicateSymbol__Group_6_1_1__1();
9484
9485 state._fsp--;
9486
9487
9488 }
9489
9490 }
9491 catch (RecognitionException re) {
9492 reportError(re);
9493 recover(input,re);
9494 }
9495 finally {
9496
9497 restoreStackSize(stackSize);
9498
9499 }
9500 return ;
9501 }
9502 // $ANTLR end "rule__PredicateSymbol__Group_6_1_1__0"
9503
9504
9505 // $ANTLR start "rule__PredicateSymbol__Group_6_1_1__0__Impl"
9506 // InternalSolverLanguage.g:3023:1: rule__PredicateSymbol__Group_6_1_1__0__Impl : ( '|' ) ;
9507 public final void rule__PredicateSymbol__Group_6_1_1__0__Impl() throws RecognitionException {
9508
9509 int stackSize = keepStackSize();
9510
9511 try {
9512 // InternalSolverLanguage.g:3027:1: ( ( '|' ) )
9513 // InternalSolverLanguage.g:3028:1: ( '|' )
9514 {
9515 // InternalSolverLanguage.g:3028:1: ( '|' )
9516 // InternalSolverLanguage.g:3029:2: '|'
9517 {
9518 before(grammarAccess.getPredicateSymbolAccess().getVerticalLineKeyword_6_1_1_0());
9519 match(input,28,FOLLOW_2);
9520 after(grammarAccess.getPredicateSymbolAccess().getVerticalLineKeyword_6_1_1_0());
9521
9522 }
9523
9524
9525 }
9526
9527 }
9528 catch (RecognitionException re) {
9529 reportError(re);
9530 recover(input,re);
9531 }
9532 finally {
9533
9534 restoreStackSize(stackSize);
9535
9536 }
9537 return ;
9538 }
9539 // $ANTLR end "rule__PredicateSymbol__Group_6_1_1__0__Impl"
9540
9541
9542 // $ANTLR start "rule__PredicateSymbol__Group_6_1_1__1"
9543 // InternalSolverLanguage.g:3038:1: rule__PredicateSymbol__Group_6_1_1__1 : rule__PredicateSymbol__Group_6_1_1__1__Impl ;
9544 public final void rule__PredicateSymbol__Group_6_1_1__1() throws RecognitionException {
9545
9546 int stackSize = keepStackSize();
9547
9548 try {
9549 // InternalSolverLanguage.g:3042:1: ( rule__PredicateSymbol__Group_6_1_1__1__Impl )
9550 // InternalSolverLanguage.g:3043:2: rule__PredicateSymbol__Group_6_1_1__1__Impl
9551 {
9552 pushFollow(FOLLOW_2);
9553 rule__PredicateSymbol__Group_6_1_1__1__Impl();
9554
9555 state._fsp--;
9556
9557
9558 }
9559
9560 }
9561 catch (RecognitionException re) {
9562 reportError(re);
9563 recover(input,re);
9564 }
9565 finally {
9566
9567 restoreStackSize(stackSize);
9568
9569 }
9570 return ;
9571 }
9572 // $ANTLR end "rule__PredicateSymbol__Group_6_1_1__1"
9573
9574
9575 // $ANTLR start "rule__PredicateSymbol__Group_6_1_1__1__Impl"
9576 // InternalSolverLanguage.g:3049:1: rule__PredicateSymbol__Group_6_1_1__1__Impl : ( ( rule__PredicateSymbol__BodiesAssignment_6_1_1_1 ) ) ;
9577 public final void rule__PredicateSymbol__Group_6_1_1__1__Impl() throws RecognitionException {
9578
9579 int stackSize = keepStackSize();
9580
9581 try {
9582 // InternalSolverLanguage.g:3053:1: ( ( ( rule__PredicateSymbol__BodiesAssignment_6_1_1_1 ) ) )
9583 // InternalSolverLanguage.g:3054:1: ( ( rule__PredicateSymbol__BodiesAssignment_6_1_1_1 ) )
9584 {
9585 // InternalSolverLanguage.g:3054:1: ( ( rule__PredicateSymbol__BodiesAssignment_6_1_1_1 ) )
9586 // InternalSolverLanguage.g:3055:2: ( rule__PredicateSymbol__BodiesAssignment_6_1_1_1 )
9587 {
9588 before(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_1_1());
9589 // InternalSolverLanguage.g:3056:2: ( rule__PredicateSymbol__BodiesAssignment_6_1_1_1 )
9590 // InternalSolverLanguage.g:3056:3: rule__PredicateSymbol__BodiesAssignment_6_1_1_1
9591 {
9592 pushFollow(FOLLOW_2);
9593 rule__PredicateSymbol__BodiesAssignment_6_1_1_1();
9594
9595 state._fsp--;
9596
9597
9598 }
9599
9600 after(grammarAccess.getPredicateSymbolAccess().getBodiesAssignment_6_1_1_1());
9601
9602 }
9603
9604
9605 }
9606
9607 }
9608 catch (RecognitionException re) {
9609 reportError(re);
9610 recover(input,re);
9611 }
9612 finally {
9613
9614 restoreStackSize(stackSize);
9615
9616 }
9617 return ;
9618 }
9619 // $ANTLR end "rule__PredicateSymbol__Group_6_1_1__1__Impl"
9620
9621
9622 // $ANTLR start "rule__ErrorPredicate__Group__0"
9623 // InternalSolverLanguage.g:3065:1: rule__ErrorPredicate__Group__0 : rule__ErrorPredicate__Group__0__Impl rule__ErrorPredicate__Group__1 ;
9624 public final void rule__ErrorPredicate__Group__0() throws RecognitionException {
9625
9626 int stackSize = keepStackSize();
9627
9628 try {
9629 // InternalSolverLanguage.g:3069:1: ( rule__ErrorPredicate__Group__0__Impl rule__ErrorPredicate__Group__1 )
9630 // InternalSolverLanguage.g:3070:2: rule__ErrorPredicate__Group__0__Impl rule__ErrorPredicate__Group__1
9631 {
9632 pushFollow(FOLLOW_23);
9633 rule__ErrorPredicate__Group__0__Impl();
9634
9635 state._fsp--;
9636
9637 pushFollow(FOLLOW_2);
9638 rule__ErrorPredicate__Group__1();
9639
9640 state._fsp--;
9641
9642
9643 }
9644
9645 }
9646 catch (RecognitionException re) {
9647 reportError(re);
9648 recover(input,re);
9649 }
9650 finally {
9651
9652 restoreStackSize(stackSize);
9653
9654 }
9655 return ;
9656 }
9657 // $ANTLR end "rule__ErrorPredicate__Group__0"
9658
9659
9660 // $ANTLR start "rule__ErrorPredicate__Group__0__Impl"
9661 // InternalSolverLanguage.g:3077:1: rule__ErrorPredicate__Group__0__Impl : ( () ) ;
9662 public final void rule__ErrorPredicate__Group__0__Impl() throws RecognitionException {
9663
9664 int stackSize = keepStackSize();
9665
9666 try {
9667 // InternalSolverLanguage.g:3081:1: ( ( () ) )
9668 // InternalSolverLanguage.g:3082:1: ( () )
9669 {
9670 // InternalSolverLanguage.g:3082:1: ( () )
9671 // InternalSolverLanguage.g:3083:2: ()
9672 {
9673 before(grammarAccess.getErrorPredicateAccess().getErrorPredicateAction_0());
9674 // InternalSolverLanguage.g:3084:2: ()
9675 // InternalSolverLanguage.g:3084:3:
9676 {
9677 }
9678
9679 after(grammarAccess.getErrorPredicateAccess().getErrorPredicateAction_0());
9680
9681 }
9682
9683
9684 }
9685
9686 }
9687 finally {
9688
9689 restoreStackSize(stackSize);
9690
9691 }
9692 return ;
9693 }
9694 // $ANTLR end "rule__ErrorPredicate__Group__0__Impl"
9695
9696
9697 // $ANTLR start "rule__ErrorPredicate__Group__1"
9698 // InternalSolverLanguage.g:3092:1: rule__ErrorPredicate__Group__1 : rule__ErrorPredicate__Group__1__Impl rule__ErrorPredicate__Group__2 ;
9699 public final void rule__ErrorPredicate__Group__1() throws RecognitionException {
9700
9701 int stackSize = keepStackSize();
9702
9703 try {
9704 // InternalSolverLanguage.g:3096:1: ( rule__ErrorPredicate__Group__1__Impl rule__ErrorPredicate__Group__2 )
9705 // InternalSolverLanguage.g:3097:2: rule__ErrorPredicate__Group__1__Impl rule__ErrorPredicate__Group__2
9706 {
9707 pushFollow(FOLLOW_24);
9708 rule__ErrorPredicate__Group__1__Impl();
9709
9710 state._fsp--;
9711
9712 pushFollow(FOLLOW_2);
9713 rule__ErrorPredicate__Group__2();
9714
9715 state._fsp--;
9716
9717
9718 }
9719
9720 }
9721 catch (RecognitionException re) {
9722 reportError(re);
9723 recover(input,re);
9724 }
9725 finally {
9726
9727 restoreStackSize(stackSize);
9728
9729 }
9730 return ;
9731 }
9732 // $ANTLR end "rule__ErrorPredicate__Group__1"
9733
9734
9735 // $ANTLR start "rule__ErrorPredicate__Group__1__Impl"
9736 // InternalSolverLanguage.g:3104:1: rule__ErrorPredicate__Group__1__Impl : ( 'error' ) ;
9737 public final void rule__ErrorPredicate__Group__1__Impl() throws RecognitionException {
9738
9739 int stackSize = keepStackSize();
9740
9741 try {
9742 // InternalSolverLanguage.g:3108:1: ( ( 'error' ) )
9743 // InternalSolverLanguage.g:3109:1: ( 'error' )
9744 {
9745 // InternalSolverLanguage.g:3109:1: ( 'error' )
9746 // InternalSolverLanguage.g:3110:2: 'error'
9747 {
9748 before(grammarAccess.getErrorPredicateAccess().getErrorKeyword_1());
9749 match(input,16,FOLLOW_2);
9750 after(grammarAccess.getErrorPredicateAccess().getErrorKeyword_1());
9751
9752 }
9753
9754
9755 }
9756
9757 }
9758 catch (RecognitionException re) {
9759 reportError(re);
9760 recover(input,re);
9761 }
9762 finally {
9763
9764 restoreStackSize(stackSize);
9765
9766 }
9767 return ;
9768 }
9769 // $ANTLR end "rule__ErrorPredicate__Group__1__Impl"
9770
9771
9772 // $ANTLR start "rule__ErrorPredicate__Group__2"
9773 // InternalSolverLanguage.g:3119:1: rule__ErrorPredicate__Group__2 : rule__ErrorPredicate__Group__2__Impl rule__ErrorPredicate__Group__3 ;
9774 public final void rule__ErrorPredicate__Group__2() throws RecognitionException {
9775
9776 int stackSize = keepStackSize();
9777
9778 try {
9779 // InternalSolverLanguage.g:3123:1: ( rule__ErrorPredicate__Group__2__Impl rule__ErrorPredicate__Group__3 )
9780 // InternalSolverLanguage.g:3124:2: rule__ErrorPredicate__Group__2__Impl rule__ErrorPredicate__Group__3
9781 {
9782 pushFollow(FOLLOW_24);
9783 rule__ErrorPredicate__Group__2__Impl();
9784
9785 state._fsp--;
9786
9787 pushFollow(FOLLOW_2);
9788 rule__ErrorPredicate__Group__3();
9789
9790 state._fsp--;
9791
9792
9793 }
9794
9795 }
9796 catch (RecognitionException re) {
9797 reportError(re);
9798 recover(input,re);
9799 }
9800 finally {
9801
9802 restoreStackSize(stackSize);
9803
9804 }
9805 return ;
9806 }
9807 // $ANTLR end "rule__ErrorPredicate__Group__2"
9808
9809
9810 // $ANTLR start "rule__ErrorPredicate__Group__2__Impl"
9811 // InternalSolverLanguage.g:3131:1: rule__ErrorPredicate__Group__2__Impl : ( ( rule__ErrorPredicate__NameAssignment_2 )? ) ;
9812 public final void rule__ErrorPredicate__Group__2__Impl() throws RecognitionException {
9813
9814 int stackSize = keepStackSize();
9815
9816 try {
9817 // InternalSolverLanguage.g:3135:1: ( ( ( rule__ErrorPredicate__NameAssignment_2 )? ) )
9818 // InternalSolverLanguage.g:3136:1: ( ( rule__ErrorPredicate__NameAssignment_2 )? )
9819 {
9820 // InternalSolverLanguage.g:3136:1: ( ( rule__ErrorPredicate__NameAssignment_2 )? )
9821 // InternalSolverLanguage.g:3137:2: ( rule__ErrorPredicate__NameAssignment_2 )?
9822 {
9823 before(grammarAccess.getErrorPredicateAccess().getNameAssignment_2());
9824 // InternalSolverLanguage.g:3138:2: ( rule__ErrorPredicate__NameAssignment_2 )?
9825 int alt28=2;
9826 int LA28_0 = input.LA(1);
9827
9828 if ( (LA28_0==RULE_ID) ) {
9829 alt28=1;
9830 }
9831 switch (alt28) {
9832 case 1 :
9833 // InternalSolverLanguage.g:3138:3: rule__ErrorPredicate__NameAssignment_2
9834 {
9835 pushFollow(FOLLOW_2);
9836 rule__ErrorPredicate__NameAssignment_2();
9837
9838 state._fsp--;
9839
9840
9841 }
9842 break;
9843
9844 }
9845
9846 after(grammarAccess.getErrorPredicateAccess().getNameAssignment_2());
9847
9848 }
9849
9850
9851 }
9852
9853 }
9854 catch (RecognitionException re) {
9855 reportError(re);
9856 recover(input,re);
9857 }
9858 finally {
9859
9860 restoreStackSize(stackSize);
9861
9862 }
9863 return ;
9864 }
9865 // $ANTLR end "rule__ErrorPredicate__Group__2__Impl"
9866
9867
9868 // $ANTLR start "rule__ErrorPredicate__Group__3"
9869 // InternalSolverLanguage.g:3146:1: rule__ErrorPredicate__Group__3 : rule__ErrorPredicate__Group__3__Impl rule__ErrorPredicate__Group__4 ;
9870 public final void rule__ErrorPredicate__Group__3() throws RecognitionException {
9871
9872 int stackSize = keepStackSize();
9873
9874 try {
9875 // InternalSolverLanguage.g:3150:1: ( rule__ErrorPredicate__Group__3__Impl rule__ErrorPredicate__Group__4 )
9876 // InternalSolverLanguage.g:3151:2: rule__ErrorPredicate__Group__3__Impl rule__ErrorPredicate__Group__4
9877 {
9878 pushFollow(FOLLOW_14);
9879 rule__ErrorPredicate__Group__3__Impl();
9880
9881 state._fsp--;
9882
9883 pushFollow(FOLLOW_2);
9884 rule__ErrorPredicate__Group__4();
9885
9886 state._fsp--;
9887
9888
9889 }
9890
9891 }
9892 catch (RecognitionException re) {
9893 reportError(re);
9894 recover(input,re);
9895 }
9896 finally {
9897
9898 restoreStackSize(stackSize);
9899
9900 }
9901 return ;
9902 }
9903 // $ANTLR end "rule__ErrorPredicate__Group__3"
9904
9905
9906 // $ANTLR start "rule__ErrorPredicate__Group__3__Impl"
9907 // InternalSolverLanguage.g:3158:1: rule__ErrorPredicate__Group__3__Impl : ( ( rule__ErrorPredicate__Group_3__0 ) ) ;
9908 public final void rule__ErrorPredicate__Group__3__Impl() throws RecognitionException {
9909
9910 int stackSize = keepStackSize();
9911
9912 try {
9913 // InternalSolverLanguage.g:3162:1: ( ( ( rule__ErrorPredicate__Group_3__0 ) ) )
9914 // InternalSolverLanguage.g:3163:1: ( ( rule__ErrorPredicate__Group_3__0 ) )
9915 {
9916 // InternalSolverLanguage.g:3163:1: ( ( rule__ErrorPredicate__Group_3__0 ) )
9917 // InternalSolverLanguage.g:3164:2: ( rule__ErrorPredicate__Group_3__0 )
9918 {
9919 before(grammarAccess.getErrorPredicateAccess().getGroup_3());
9920 // InternalSolverLanguage.g:3165:2: ( rule__ErrorPredicate__Group_3__0 )
9921 // InternalSolverLanguage.g:3165:3: rule__ErrorPredicate__Group_3__0
9922 {
9923 pushFollow(FOLLOW_2);
9924 rule__ErrorPredicate__Group_3__0();
9925
9926 state._fsp--;
9927
9928
9929 }
9930
9931 after(grammarAccess.getErrorPredicateAccess().getGroup_3());
9932
9933 }
9934
9935
9936 }
9937
9938 }
9939 catch (RecognitionException re) {
9940 reportError(re);
9941 recover(input,re);
9942 }
9943 finally {
9944
9945 restoreStackSize(stackSize);
9946
9947 }
9948 return ;
9949 }
9950 // $ANTLR end "rule__ErrorPredicate__Group__3__Impl"
9951
9952
9953 // $ANTLR start "rule__ErrorPredicate__Group__4"
9954 // InternalSolverLanguage.g:3173:1: rule__ErrorPredicate__Group__4 : rule__ErrorPredicate__Group__4__Impl rule__ErrorPredicate__Group__5 ;
9955 public final void rule__ErrorPredicate__Group__4() throws RecognitionException {
9956
9957 int stackSize = keepStackSize();
9958
9959 try {
9960 // InternalSolverLanguage.g:3177:1: ( rule__ErrorPredicate__Group__4__Impl rule__ErrorPredicate__Group__5 )
9961 // InternalSolverLanguage.g:3178:2: rule__ErrorPredicate__Group__4__Impl rule__ErrorPredicate__Group__5
9962 {
9963 pushFollow(FOLLOW_20);
9964 rule__ErrorPredicate__Group__4__Impl();
9965
9966 state._fsp--;
9967
9968 pushFollow(FOLLOW_2);
9969 rule__ErrorPredicate__Group__5();
9970
9971 state._fsp--;
9972
9973
9974 }
9975
9976 }
9977 catch (RecognitionException re) {
9978 reportError(re);
9979 recover(input,re);
9980 }
9981 finally {
9982
9983 restoreStackSize(stackSize);
9984
9985 }
9986 return ;
9987 }
9988 // $ANTLR end "rule__ErrorPredicate__Group__4"
9989
9990
9991 // $ANTLR start "rule__ErrorPredicate__Group__4__Impl"
9992 // InternalSolverLanguage.g:3185:1: rule__ErrorPredicate__Group__4__Impl : ( ':' ) ;
9993 public final void rule__ErrorPredicate__Group__4__Impl() throws RecognitionException {
9994
9995 int stackSize = keepStackSize();
9996
9997 try {
9998 // InternalSolverLanguage.g:3189:1: ( ( ':' ) )
9999 // InternalSolverLanguage.g:3190:1: ( ':' )
10000 {
10001 // InternalSolverLanguage.g:3190:1: ( ':' )
10002 // InternalSolverLanguage.g:3191:2: ':'
10003 {
10004 before(grammarAccess.getErrorPredicateAccess().getColonKeyword_4());
10005 match(input,19,FOLLOW_2);
10006 after(grammarAccess.getErrorPredicateAccess().getColonKeyword_4());
10007
10008 }
10009
10010
10011 }
10012
10013 }
10014 catch (RecognitionException re) {
10015 reportError(re);
10016 recover(input,re);
10017 }
10018 finally {
10019
10020 restoreStackSize(stackSize);
10021
10022 }
10023 return ;
10024 }
10025 // $ANTLR end "rule__ErrorPredicate__Group__4__Impl"
10026
10027
10028 // $ANTLR start "rule__ErrorPredicate__Group__5"
10029 // InternalSolverLanguage.g:3200:1: rule__ErrorPredicate__Group__5 : rule__ErrorPredicate__Group__5__Impl rule__ErrorPredicate__Group__6 ;
10030 public final void rule__ErrorPredicate__Group__5() throws RecognitionException {
10031
10032 int stackSize = keepStackSize();
10033
10034 try {
10035 // InternalSolverLanguage.g:3204:1: ( rule__ErrorPredicate__Group__5__Impl rule__ErrorPredicate__Group__6 )
10036 // InternalSolverLanguage.g:3205:2: rule__ErrorPredicate__Group__5__Impl rule__ErrorPredicate__Group__6
10037 {
10038 pushFollow(FOLLOW_6);
10039 rule__ErrorPredicate__Group__5__Impl();
10040
10041 state._fsp--;
10042
10043 pushFollow(FOLLOW_2);
10044 rule__ErrorPredicate__Group__6();
10045
10046 state._fsp--;
10047
10048
10049 }
10050
10051 }
10052 catch (RecognitionException re) {
10053 reportError(re);
10054 recover(input,re);
10055 }
10056 finally {
10057
10058 restoreStackSize(stackSize);
10059
10060 }
10061 return ;
10062 }
10063 // $ANTLR end "rule__ErrorPredicate__Group__5"
10064
10065
10066 // $ANTLR start "rule__ErrorPredicate__Group__5__Impl"
10067 // InternalSolverLanguage.g:3212:1: rule__ErrorPredicate__Group__5__Impl : ( ( rule__ErrorPredicate__Alternatives_5 ) ) ;
10068 public final void rule__ErrorPredicate__Group__5__Impl() throws RecognitionException {
10069
10070 int stackSize = keepStackSize();
10071
10072 try {
10073 // InternalSolverLanguage.g:3216:1: ( ( ( rule__ErrorPredicate__Alternatives_5 ) ) )
10074 // InternalSolverLanguage.g:3217:1: ( ( rule__ErrorPredicate__Alternatives_5 ) )
10075 {
10076 // InternalSolverLanguage.g:3217:1: ( ( rule__ErrorPredicate__Alternatives_5 ) )
10077 // InternalSolverLanguage.g:3218:2: ( rule__ErrorPredicate__Alternatives_5 )
10078 {
10079 before(grammarAccess.getErrorPredicateAccess().getAlternatives_5());
10080 // InternalSolverLanguage.g:3219:2: ( rule__ErrorPredicate__Alternatives_5 )
10081 // InternalSolverLanguage.g:3219:3: rule__ErrorPredicate__Alternatives_5
10082 {
10083 pushFollow(FOLLOW_2);
10084 rule__ErrorPredicate__Alternatives_5();
10085
10086 state._fsp--;
10087
10088
10089 }
10090
10091 after(grammarAccess.getErrorPredicateAccess().getAlternatives_5());
10092
10093 }
10094
10095
10096 }
10097
10098 }
10099 catch (RecognitionException re) {
10100 reportError(re);
10101 recover(input,re);
10102 }
10103 finally {
10104
10105 restoreStackSize(stackSize);
10106
10107 }
10108 return ;
10109 }
10110 // $ANTLR end "rule__ErrorPredicate__Group__5__Impl"
10111
10112
10113 // $ANTLR start "rule__ErrorPredicate__Group__6"
10114 // InternalSolverLanguage.g:3227:1: rule__ErrorPredicate__Group__6 : rule__ErrorPredicate__Group__6__Impl ;
10115 public final void rule__ErrorPredicate__Group__6() throws RecognitionException {
10116
10117 int stackSize = keepStackSize();
10118
10119 try {
10120 // InternalSolverLanguage.g:3231:1: ( rule__ErrorPredicate__Group__6__Impl )
10121 // InternalSolverLanguage.g:3232:2: rule__ErrorPredicate__Group__6__Impl
10122 {
10123 pushFollow(FOLLOW_2);
10124 rule__ErrorPredicate__Group__6__Impl();
10125
10126 state._fsp--;
10127
10128
10129 }
10130
10131 }
10132 catch (RecognitionException re) {
10133 reportError(re);
10134 recover(input,re);
10135 }
10136 finally {
10137
10138 restoreStackSize(stackSize);
10139
10140 }
10141 return ;
10142 }
10143 // $ANTLR end "rule__ErrorPredicate__Group__6"
10144
10145
10146 // $ANTLR start "rule__ErrorPredicate__Group__6__Impl"
10147 // InternalSolverLanguage.g:3238:1: rule__ErrorPredicate__Group__6__Impl : ( '.' ) ;
10148 public final void rule__ErrorPredicate__Group__6__Impl() throws RecognitionException {
10149
10150 int stackSize = keepStackSize();
10151
10152 try {
10153 // InternalSolverLanguage.g:3242:1: ( ( '.' ) )
10154 // InternalSolverLanguage.g:3243:1: ( '.' )
10155 {
10156 // InternalSolverLanguage.g:3243:1: ( '.' )
10157 // InternalSolverLanguage.g:3244:2: '.'
10158 {
10159 before(grammarAccess.getErrorPredicateAccess().getFullStopKeyword_6());
10160 match(input,14,FOLLOW_2);
10161 after(grammarAccess.getErrorPredicateAccess().getFullStopKeyword_6());
10162
10163 }
10164
10165
10166 }
10167
10168 }
10169 catch (RecognitionException re) {
10170 reportError(re);
10171 recover(input,re);
10172 }
10173 finally {
10174
10175 restoreStackSize(stackSize);
10176
10177 }
10178 return ;
10179 }
10180 // $ANTLR end "rule__ErrorPredicate__Group__6__Impl"
10181
10182
10183 // $ANTLR start "rule__ErrorPredicate__Group_3__0"
10184 // InternalSolverLanguage.g:3254:1: rule__ErrorPredicate__Group_3__0 : rule__ErrorPredicate__Group_3__0__Impl rule__ErrorPredicate__Group_3__1 ;
10185 public final void rule__ErrorPredicate__Group_3__0() throws RecognitionException {
10186
10187 int stackSize = keepStackSize();
10188
10189 try {
10190 // InternalSolverLanguage.g:3258:1: ( rule__ErrorPredicate__Group_3__0__Impl rule__ErrorPredicate__Group_3__1 )
10191 // InternalSolverLanguage.g:3259:2: rule__ErrorPredicate__Group_3__0__Impl rule__ErrorPredicate__Group_3__1
10192 {
10193 pushFollow(FOLLOW_18);
10194 rule__ErrorPredicate__Group_3__0__Impl();
10195
10196 state._fsp--;
10197
10198 pushFollow(FOLLOW_2);
10199 rule__ErrorPredicate__Group_3__1();
10200
10201 state._fsp--;
10202
10203
10204 }
10205
10206 }
10207 catch (RecognitionException re) {
10208 reportError(re);
10209 recover(input,re);
10210 }
10211 finally {
10212
10213 restoreStackSize(stackSize);
10214
10215 }
10216 return ;
10217 }
10218 // $ANTLR end "rule__ErrorPredicate__Group_3__0"
10219
10220
10221 // $ANTLR start "rule__ErrorPredicate__Group_3__0__Impl"
10222 // InternalSolverLanguage.g:3266:1: rule__ErrorPredicate__Group_3__0__Impl : ( '(' ) ;
10223 public final void rule__ErrorPredicate__Group_3__0__Impl() throws RecognitionException {
10224
10225 int stackSize = keepStackSize();
10226
10227 try {
10228 // InternalSolverLanguage.g:3270:1: ( ( '(' ) )
10229 // InternalSolverLanguage.g:3271:1: ( '(' )
10230 {
10231 // InternalSolverLanguage.g:3271:1: ( '(' )
10232 // InternalSolverLanguage.g:3272:2: '('
10233 {
10234 before(grammarAccess.getErrorPredicateAccess().getLeftParenthesisKeyword_3_0());
10235 match(input,17,FOLLOW_2);
10236 after(grammarAccess.getErrorPredicateAccess().getLeftParenthesisKeyword_3_0());
10237
10238 }
10239
10240
10241 }
10242
10243 }
10244 catch (RecognitionException re) {
10245 reportError(re);
10246 recover(input,re);
10247 }
10248 finally {
10249
10250 restoreStackSize(stackSize);
10251
10252 }
10253 return ;
10254 }
10255 // $ANTLR end "rule__ErrorPredicate__Group_3__0__Impl"
10256
10257
10258 // $ANTLR start "rule__ErrorPredicate__Group_3__1"
10259 // InternalSolverLanguage.g:3281:1: rule__ErrorPredicate__Group_3__1 : rule__ErrorPredicate__Group_3__1__Impl rule__ErrorPredicate__Group_3__2 ;
10260 public final void rule__ErrorPredicate__Group_3__1() throws RecognitionException {
10261
10262 int stackSize = keepStackSize();
10263
10264 try {
10265 // InternalSolverLanguage.g:3285:1: ( rule__ErrorPredicate__Group_3__1__Impl rule__ErrorPredicate__Group_3__2 )
10266 // InternalSolverLanguage.g:3286:2: rule__ErrorPredicate__Group_3__1__Impl rule__ErrorPredicate__Group_3__2
10267 {
10268 pushFollow(FOLLOW_18);
10269 rule__ErrorPredicate__Group_3__1__Impl();
10270
10271 state._fsp--;
10272
10273 pushFollow(FOLLOW_2);
10274 rule__ErrorPredicate__Group_3__2();
10275
10276 state._fsp--;
10277
10278
10279 }
10280
10281 }
10282 catch (RecognitionException re) {
10283 reportError(re);
10284 recover(input,re);
10285 }
10286 finally {
10287
10288 restoreStackSize(stackSize);
10289
10290 }
10291 return ;
10292 }
10293 // $ANTLR end "rule__ErrorPredicate__Group_3__1"
10294
10295
10296 // $ANTLR start "rule__ErrorPredicate__Group_3__1__Impl"
10297 // InternalSolverLanguage.g:3293:1: rule__ErrorPredicate__Group_3__1__Impl : ( ( rule__ErrorPredicate__ParametersAssignment_3_1 )* ) ;
10298 public final void rule__ErrorPredicate__Group_3__1__Impl() throws RecognitionException {
10299
10300 int stackSize = keepStackSize();
10301
10302 try {
10303 // InternalSolverLanguage.g:3297:1: ( ( ( rule__ErrorPredicate__ParametersAssignment_3_1 )* ) )
10304 // InternalSolverLanguage.g:3298:1: ( ( rule__ErrorPredicate__ParametersAssignment_3_1 )* )
10305 {
10306 // InternalSolverLanguage.g:3298:1: ( ( rule__ErrorPredicate__ParametersAssignment_3_1 )* )
10307 // InternalSolverLanguage.g:3299:2: ( rule__ErrorPredicate__ParametersAssignment_3_1 )*
10308 {
10309 before(grammarAccess.getErrorPredicateAccess().getParametersAssignment_3_1());
10310 // InternalSolverLanguage.g:3300:2: ( rule__ErrorPredicate__ParametersAssignment_3_1 )*
10311 loop29:
10312 do {
10313 int alt29=2;
10314 int LA29_0 = input.LA(1);
10315
10316 if ( (LA29_0==RULE_ID) ) {
10317 alt29=1;
10318 }
10319
10320
10321 switch (alt29) {
10322 case 1 :
10323 // InternalSolverLanguage.g:3300:3: rule__ErrorPredicate__ParametersAssignment_3_1
10324 {
10325 pushFollow(FOLLOW_19);
10326 rule__ErrorPredicate__ParametersAssignment_3_1();
10327
10328 state._fsp--;
10329
10330
10331 }
10332 break;
10333
10334 default :
10335 break loop29;
10336 }
10337 } while (true);
10338
10339 after(grammarAccess.getErrorPredicateAccess().getParametersAssignment_3_1());
10340
10341 }
10342
10343
10344 }
10345
10346 }
10347 catch (RecognitionException re) {
10348 reportError(re);
10349 recover(input,re);
10350 }
10351 finally {
10352
10353 restoreStackSize(stackSize);
10354
10355 }
10356 return ;
10357 }
10358 // $ANTLR end "rule__ErrorPredicate__Group_3__1__Impl"
10359
10360
10361 // $ANTLR start "rule__ErrorPredicate__Group_3__2"
10362 // InternalSolverLanguage.g:3308:1: rule__ErrorPredicate__Group_3__2 : rule__ErrorPredicate__Group_3__2__Impl ;
10363 public final void rule__ErrorPredicate__Group_3__2() throws RecognitionException {
10364
10365 int stackSize = keepStackSize();
10366
10367 try {
10368 // InternalSolverLanguage.g:3312:1: ( rule__ErrorPredicate__Group_3__2__Impl )
10369 // InternalSolverLanguage.g:3313:2: rule__ErrorPredicate__Group_3__2__Impl
10370 {
10371 pushFollow(FOLLOW_2);
10372 rule__ErrorPredicate__Group_3__2__Impl();
10373
10374 state._fsp--;
10375
10376
10377 }
10378
10379 }
10380 catch (RecognitionException re) {
10381 reportError(re);
10382 recover(input,re);
10383 }
10384 finally {
10385
10386 restoreStackSize(stackSize);
10387
10388 }
10389 return ;
10390 }
10391 // $ANTLR end "rule__ErrorPredicate__Group_3__2"
10392
10393
10394 // $ANTLR start "rule__ErrorPredicate__Group_3__2__Impl"
10395 // InternalSolverLanguage.g:3319:1: rule__ErrorPredicate__Group_3__2__Impl : ( ')' ) ;
10396 public final void rule__ErrorPredicate__Group_3__2__Impl() throws RecognitionException {
10397
10398 int stackSize = keepStackSize();
10399
10400 try {
10401 // InternalSolverLanguage.g:3323:1: ( ( ')' ) )
10402 // InternalSolverLanguage.g:3324:1: ( ')' )
10403 {
10404 // InternalSolverLanguage.g:3324:1: ( ')' )
10405 // InternalSolverLanguage.g:3325:2: ')'
10406 {
10407 before(grammarAccess.getErrorPredicateAccess().getRightParenthesisKeyword_3_2());
10408 match(input,18,FOLLOW_2);
10409 after(grammarAccess.getErrorPredicateAccess().getRightParenthesisKeyword_3_2());
10410
10411 }
10412
10413
10414 }
10415
10416 }
10417 catch (RecognitionException re) {
10418 reportError(re);
10419 recover(input,re);
10420 }
10421 finally {
10422
10423 restoreStackSize(stackSize);
10424
10425 }
10426 return ;
10427 }
10428 // $ANTLR end "rule__ErrorPredicate__Group_3__2__Impl"
10429
10430
10431 // $ANTLR start "rule__ErrorPredicate__Group_5_1__0"
10432 // InternalSolverLanguage.g:3335:1: rule__ErrorPredicate__Group_5_1__0 : rule__ErrorPredicate__Group_5_1__0__Impl rule__ErrorPredicate__Group_5_1__1 ;
10433 public final void rule__ErrorPredicate__Group_5_1__0() throws RecognitionException {
10434
10435 int stackSize = keepStackSize();
10436
10437 try {
10438 // InternalSolverLanguage.g:3339:1: ( rule__ErrorPredicate__Group_5_1__0__Impl rule__ErrorPredicate__Group_5_1__1 )
10439 // InternalSolverLanguage.g:3340:2: rule__ErrorPredicate__Group_5_1__0__Impl rule__ErrorPredicate__Group_5_1__1
10440 {
10441 pushFollow(FOLLOW_21);
10442 rule__ErrorPredicate__Group_5_1__0__Impl();
10443
10444 state._fsp--;
10445
10446 pushFollow(FOLLOW_2);
10447 rule__ErrorPredicate__Group_5_1__1();
10448
10449 state._fsp--;
10450
10451
10452 }
10453
10454 }
10455 catch (RecognitionException re) {
10456 reportError(re);
10457 recover(input,re);
10458 }
10459 finally {
10460
10461 restoreStackSize(stackSize);
10462
10463 }
10464 return ;
10465 }
10466 // $ANTLR end "rule__ErrorPredicate__Group_5_1__0"
10467
10468
10469 // $ANTLR start "rule__ErrorPredicate__Group_5_1__0__Impl"
10470 // InternalSolverLanguage.g:3347:1: rule__ErrorPredicate__Group_5_1__0__Impl : ( ( rule__ErrorPredicate__BodiesAssignment_5_1_0 ) ) ;
10471 public final void rule__ErrorPredicate__Group_5_1__0__Impl() throws RecognitionException {
10472
10473 int stackSize = keepStackSize();
10474
10475 try {
10476 // InternalSolverLanguage.g:3351:1: ( ( ( rule__ErrorPredicate__BodiesAssignment_5_1_0 ) ) )
10477 // InternalSolverLanguage.g:3352:1: ( ( rule__ErrorPredicate__BodiesAssignment_5_1_0 ) )
10478 {
10479 // InternalSolverLanguage.g:3352:1: ( ( rule__ErrorPredicate__BodiesAssignment_5_1_0 ) )
10480 // InternalSolverLanguage.g:3353:2: ( rule__ErrorPredicate__BodiesAssignment_5_1_0 )
10481 {
10482 before(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_0());
10483 // InternalSolverLanguage.g:3354:2: ( rule__ErrorPredicate__BodiesAssignment_5_1_0 )
10484 // InternalSolverLanguage.g:3354:3: rule__ErrorPredicate__BodiesAssignment_5_1_0
10485 {
10486 pushFollow(FOLLOW_2);
10487 rule__ErrorPredicate__BodiesAssignment_5_1_0();
10488
10489 state._fsp--;
10490
10491
10492 }
10493
10494 after(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_0());
10495
10496 }
10497
10498
10499 }
10500
10501 }
10502 catch (RecognitionException re) {
10503 reportError(re);
10504 recover(input,re);
10505 }
10506 finally {
10507
10508 restoreStackSize(stackSize);
10509
10510 }
10511 return ;
10512 }
10513 // $ANTLR end "rule__ErrorPredicate__Group_5_1__0__Impl"
10514
10515
10516 // $ANTLR start "rule__ErrorPredicate__Group_5_1__1"
10517 // InternalSolverLanguage.g:3362:1: rule__ErrorPredicate__Group_5_1__1 : rule__ErrorPredicate__Group_5_1__1__Impl ;
10518 public final void rule__ErrorPredicate__Group_5_1__1() throws RecognitionException {
10519
10520 int stackSize = keepStackSize();
10521
10522 try {
10523 // InternalSolverLanguage.g:3366:1: ( rule__ErrorPredicate__Group_5_1__1__Impl )
10524 // InternalSolverLanguage.g:3367:2: rule__ErrorPredicate__Group_5_1__1__Impl
10525 {
10526 pushFollow(FOLLOW_2);
10527 rule__ErrorPredicate__Group_5_1__1__Impl();
10528
10529 state._fsp--;
10530
10531
10532 }
10533
10534 }
10535 catch (RecognitionException re) {
10536 reportError(re);
10537 recover(input,re);
10538 }
10539 finally {
10540
10541 restoreStackSize(stackSize);
10542
10543 }
10544 return ;
10545 }
10546 // $ANTLR end "rule__ErrorPredicate__Group_5_1__1"
10547
10548
10549 // $ANTLR start "rule__ErrorPredicate__Group_5_1__1__Impl"
10550 // InternalSolverLanguage.g:3373:1: rule__ErrorPredicate__Group_5_1__1__Impl : ( ( rule__ErrorPredicate__Group_5_1_1__0 )* ) ;
10551 public final void rule__ErrorPredicate__Group_5_1__1__Impl() throws RecognitionException {
10552
10553 int stackSize = keepStackSize();
10554
10555 try {
10556 // InternalSolverLanguage.g:3377:1: ( ( ( rule__ErrorPredicate__Group_5_1_1__0 )* ) )
10557 // InternalSolverLanguage.g:3378:1: ( ( rule__ErrorPredicate__Group_5_1_1__0 )* )
10558 {
10559 // InternalSolverLanguage.g:3378:1: ( ( rule__ErrorPredicate__Group_5_1_1__0 )* )
10560 // InternalSolverLanguage.g:3379:2: ( rule__ErrorPredicate__Group_5_1_1__0 )*
10561 {
10562 before(grammarAccess.getErrorPredicateAccess().getGroup_5_1_1());
10563 // InternalSolverLanguage.g:3380:2: ( rule__ErrorPredicate__Group_5_1_1__0 )*
10564 loop30:
10565 do {
10566 int alt30=2;
10567 int LA30_0 = input.LA(1);
10568
10569 if ( (LA30_0==28) ) {
10570 alt30=1;
10571 }
10572
10573
10574 switch (alt30) {
10575 case 1 :
10576 // InternalSolverLanguage.g:3380:3: rule__ErrorPredicate__Group_5_1_1__0
10577 {
10578 pushFollow(FOLLOW_22);
10579 rule__ErrorPredicate__Group_5_1_1__0();
10580
10581 state._fsp--;
10582
10583
10584 }
10585 break;
10586
10587 default :
10588 break loop30;
10589 }
10590 } while (true);
10591
10592 after(grammarAccess.getErrorPredicateAccess().getGroup_5_1_1());
10593
10594 }
10595
10596
10597 }
10598
10599 }
10600 catch (RecognitionException re) {
10601 reportError(re);
10602 recover(input,re);
10603 }
10604 finally {
10605
10606 restoreStackSize(stackSize);
10607
10608 }
10609 return ;
10610 }
10611 // $ANTLR end "rule__ErrorPredicate__Group_5_1__1__Impl"
10612
10613
10614 // $ANTLR start "rule__ErrorPredicate__Group_5_1_1__0"
10615 // InternalSolverLanguage.g:3389:1: rule__ErrorPredicate__Group_5_1_1__0 : rule__ErrorPredicate__Group_5_1_1__0__Impl rule__ErrorPredicate__Group_5_1_1__1 ;
10616 public final void rule__ErrorPredicate__Group_5_1_1__0() throws RecognitionException {
10617
10618 int stackSize = keepStackSize();
10619
10620 try {
10621 // InternalSolverLanguage.g:3393:1: ( rule__ErrorPredicate__Group_5_1_1__0__Impl rule__ErrorPredicate__Group_5_1_1__1 )
10622 // InternalSolverLanguage.g:3394:2: rule__ErrorPredicate__Group_5_1_1__0__Impl rule__ErrorPredicate__Group_5_1_1__1
10623 {
10624 pushFollow(FOLLOW_20);
10625 rule__ErrorPredicate__Group_5_1_1__0__Impl();
10626
10627 state._fsp--;
10628
10629 pushFollow(FOLLOW_2);
10630 rule__ErrorPredicate__Group_5_1_1__1();
10631
10632 state._fsp--;
10633
10634
10635 }
10636
10637 }
10638 catch (RecognitionException re) {
10639 reportError(re);
10640 recover(input,re);
10641 }
10642 finally {
10643
10644 restoreStackSize(stackSize);
10645
10646 }
10647 return ;
10648 }
10649 // $ANTLR end "rule__ErrorPredicate__Group_5_1_1__0"
10650
10651
10652 // $ANTLR start "rule__ErrorPredicate__Group_5_1_1__0__Impl"
10653 // InternalSolverLanguage.g:3401:1: rule__ErrorPredicate__Group_5_1_1__0__Impl : ( '|' ) ;
10654 public final void rule__ErrorPredicate__Group_5_1_1__0__Impl() throws RecognitionException {
10655
10656 int stackSize = keepStackSize();
10657
10658 try {
10659 // InternalSolverLanguage.g:3405:1: ( ( '|' ) )
10660 // InternalSolverLanguage.g:3406:1: ( '|' )
10661 {
10662 // InternalSolverLanguage.g:3406:1: ( '|' )
10663 // InternalSolverLanguage.g:3407:2: '|'
10664 {
10665 before(grammarAccess.getErrorPredicateAccess().getVerticalLineKeyword_5_1_1_0());
10666 match(input,28,FOLLOW_2);
10667 after(grammarAccess.getErrorPredicateAccess().getVerticalLineKeyword_5_1_1_0());
10668
10669 }
10670
10671
10672 }
10673
10674 }
10675 catch (RecognitionException re) {
10676 reportError(re);
10677 recover(input,re);
10678 }
10679 finally {
10680
10681 restoreStackSize(stackSize);
10682
10683 }
10684 return ;
10685 }
10686 // $ANTLR end "rule__ErrorPredicate__Group_5_1_1__0__Impl"
10687
10688
10689 // $ANTLR start "rule__ErrorPredicate__Group_5_1_1__1"
10690 // InternalSolverLanguage.g:3416:1: rule__ErrorPredicate__Group_5_1_1__1 : rule__ErrorPredicate__Group_5_1_1__1__Impl ;
10691 public final void rule__ErrorPredicate__Group_5_1_1__1() throws RecognitionException {
10692
10693 int stackSize = keepStackSize();
10694
10695 try {
10696 // InternalSolverLanguage.g:3420:1: ( rule__ErrorPredicate__Group_5_1_1__1__Impl )
10697 // InternalSolverLanguage.g:3421:2: rule__ErrorPredicate__Group_5_1_1__1__Impl
10698 {
10699 pushFollow(FOLLOW_2);
10700 rule__ErrorPredicate__Group_5_1_1__1__Impl();
10701
10702 state._fsp--;
10703
10704
10705 }
10706
10707 }
10708 catch (RecognitionException re) {
10709 reportError(re);
10710 recover(input,re);
10711 }
10712 finally {
10713
10714 restoreStackSize(stackSize);
10715
10716 }
10717 return ;
10718 }
10719 // $ANTLR end "rule__ErrorPredicate__Group_5_1_1__1"
10720
10721
10722 // $ANTLR start "rule__ErrorPredicate__Group_5_1_1__1__Impl"
10723 // InternalSolverLanguage.g:3427:1: rule__ErrorPredicate__Group_5_1_1__1__Impl : ( ( rule__ErrorPredicate__BodiesAssignment_5_1_1_1 ) ) ;
10724 public final void rule__ErrorPredicate__Group_5_1_1__1__Impl() throws RecognitionException {
10725
10726 int stackSize = keepStackSize();
10727
10728 try {
10729 // InternalSolverLanguage.g:3431:1: ( ( ( rule__ErrorPredicate__BodiesAssignment_5_1_1_1 ) ) )
10730 // InternalSolverLanguage.g:3432:1: ( ( rule__ErrorPredicate__BodiesAssignment_5_1_1_1 ) )
10731 {
10732 // InternalSolverLanguage.g:3432:1: ( ( rule__ErrorPredicate__BodiesAssignment_5_1_1_1 ) )
10733 // InternalSolverLanguage.g:3433:2: ( rule__ErrorPredicate__BodiesAssignment_5_1_1_1 )
10734 {
10735 before(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_1_1());
10736 // InternalSolverLanguage.g:3434:2: ( rule__ErrorPredicate__BodiesAssignment_5_1_1_1 )
10737 // InternalSolverLanguage.g:3434:3: rule__ErrorPredicate__BodiesAssignment_5_1_1_1
10738 {
10739 pushFollow(FOLLOW_2);
10740 rule__ErrorPredicate__BodiesAssignment_5_1_1_1();
10741
10742 state._fsp--;
10743
10744
10745 }
10746
10747 after(grammarAccess.getErrorPredicateAccess().getBodiesAssignment_5_1_1_1());
10748
10749 }
10750
10751
10752 }
10753
10754 }
10755 catch (RecognitionException re) {
10756 reportError(re);
10757 recover(input,re);
10758 }
10759 finally {
10760
10761 restoreStackSize(stackSize);
10762
10763 }
10764 return ;
10765 }
10766 // $ANTLR end "rule__ErrorPredicate__Group_5_1_1__1__Impl"
10767
10768
10769 // $ANTLR start "rule__Parameter__Group__0"
10770 // InternalSolverLanguage.g:3443:1: rule__Parameter__Group__0 : rule__Parameter__Group__0__Impl rule__Parameter__Group__1 ;
10771 public final void rule__Parameter__Group__0() throws RecognitionException {
10772
10773 int stackSize = keepStackSize();
10774
10775 try {
10776 // InternalSolverLanguage.g:3447:1: ( rule__Parameter__Group__0__Impl rule__Parameter__Group__1 )
10777 // InternalSolverLanguage.g:3448:2: rule__Parameter__Group__0__Impl rule__Parameter__Group__1
10778 {
10779 pushFollow(FOLLOW_14);
10780 rule__Parameter__Group__0__Impl();
10781
10782 state._fsp--;
10783
10784 pushFollow(FOLLOW_2);
10785 rule__Parameter__Group__1();
10786
10787 state._fsp--;
10788
10789
10790 }
10791
10792 }
10793 catch (RecognitionException re) {
10794 reportError(re);
10795 recover(input,re);
10796 }
10797 finally {
10798
10799 restoreStackSize(stackSize);
10800
10801 }
10802 return ;
10803 }
10804 // $ANTLR end "rule__Parameter__Group__0"
10805
10806
10807 // $ANTLR start "rule__Parameter__Group__0__Impl"
10808 // InternalSolverLanguage.g:3455:1: rule__Parameter__Group__0__Impl : ( ( rule__Parameter__VariableAssignment_0 ) ) ;
10809 public final void rule__Parameter__Group__0__Impl() throws RecognitionException {
10810
10811 int stackSize = keepStackSize();
10812
10813 try {
10814 // InternalSolverLanguage.g:3459:1: ( ( ( rule__Parameter__VariableAssignment_0 ) ) )
10815 // InternalSolverLanguage.g:3460:1: ( ( rule__Parameter__VariableAssignment_0 ) )
10816 {
10817 // InternalSolverLanguage.g:3460:1: ( ( rule__Parameter__VariableAssignment_0 ) )
10818 // InternalSolverLanguage.g:3461:2: ( rule__Parameter__VariableAssignment_0 )
10819 {
10820 before(grammarAccess.getParameterAccess().getVariableAssignment_0());
10821 // InternalSolverLanguage.g:3462:2: ( rule__Parameter__VariableAssignment_0 )
10822 // InternalSolverLanguage.g:3462:3: rule__Parameter__VariableAssignment_0
10823 {
10824 pushFollow(FOLLOW_2);
10825 rule__Parameter__VariableAssignment_0();
10826
10827 state._fsp--;
10828
10829
10830 }
10831
10832 after(grammarAccess.getParameterAccess().getVariableAssignment_0());
10833
10834 }
10835
10836
10837 }
10838
10839 }
10840 catch (RecognitionException re) {
10841 reportError(re);
10842 recover(input,re);
10843 }
10844 finally {
10845
10846 restoreStackSize(stackSize);
10847
10848 }
10849 return ;
10850 }
10851 // $ANTLR end "rule__Parameter__Group__0__Impl"
10852
10853
10854 // $ANTLR start "rule__Parameter__Group__1"
10855 // InternalSolverLanguage.g:3470:1: rule__Parameter__Group__1 : rule__Parameter__Group__1__Impl ;
10856 public final void rule__Parameter__Group__1() throws RecognitionException {
10857
10858 int stackSize = keepStackSize();
10859
10860 try {
10861 // InternalSolverLanguage.g:3474:1: ( rule__Parameter__Group__1__Impl )
10862 // InternalSolverLanguage.g:3475:2: rule__Parameter__Group__1__Impl
10863 {
10864 pushFollow(FOLLOW_2);
10865 rule__Parameter__Group__1__Impl();
10866
10867 state._fsp--;
10868
10869
10870 }
10871
10872 }
10873 catch (RecognitionException re) {
10874 reportError(re);
10875 recover(input,re);
10876 }
10877 finally {
10878
10879 restoreStackSize(stackSize);
10880
10881 }
10882 return ;
10883 }
10884 // $ANTLR end "rule__Parameter__Group__1"
10885
10886
10887 // $ANTLR start "rule__Parameter__Group__1__Impl"
10888 // InternalSolverLanguage.g:3481:1: rule__Parameter__Group__1__Impl : ( ( rule__Parameter__Group_1__0 )? ) ;
10889 public final void rule__Parameter__Group__1__Impl() throws RecognitionException {
10890
10891 int stackSize = keepStackSize();
10892
10893 try {
10894 // InternalSolverLanguage.g:3485:1: ( ( ( rule__Parameter__Group_1__0 )? ) )
10895 // InternalSolverLanguage.g:3486:1: ( ( rule__Parameter__Group_1__0 )? )
10896 {
10897 // InternalSolverLanguage.g:3486:1: ( ( rule__Parameter__Group_1__0 )? )
10898 // InternalSolverLanguage.g:3487:2: ( rule__Parameter__Group_1__0 )?
10899 {
10900 before(grammarAccess.getParameterAccess().getGroup_1());
10901 // InternalSolverLanguage.g:3488:2: ( rule__Parameter__Group_1__0 )?
10902 int alt31=2;
10903 int LA31_0 = input.LA(1);
10904
10905 if ( (LA31_0==19) ) {
10906 alt31=1;
10907 }
10908 switch (alt31) {
10909 case 1 :
10910 // InternalSolverLanguage.g:3488:3: rule__Parameter__Group_1__0
10911 {
10912 pushFollow(FOLLOW_2);
10913 rule__Parameter__Group_1__0();
10914
10915 state._fsp--;
10916
10917
10918 }
10919 break;
10920
10921 }
10922
10923 after(grammarAccess.getParameterAccess().getGroup_1());
10924
10925 }
10926
10927
10928 }
10929
10930 }
10931 catch (RecognitionException re) {
10932 reportError(re);
10933 recover(input,re);
10934 }
10935 finally {
10936
10937 restoreStackSize(stackSize);
10938
10939 }
10940 return ;
10941 }
10942 // $ANTLR end "rule__Parameter__Group__1__Impl"
10943
10944
10945 // $ANTLR start "rule__Parameter__Group_1__0"
10946 // InternalSolverLanguage.g:3497:1: rule__Parameter__Group_1__0 : rule__Parameter__Group_1__0__Impl rule__Parameter__Group_1__1 ;
10947 public final void rule__Parameter__Group_1__0() throws RecognitionException {
10948
10949 int stackSize = keepStackSize();
10950
10951 try {
10952 // InternalSolverLanguage.g:3501:1: ( rule__Parameter__Group_1__0__Impl rule__Parameter__Group_1__1 )
10953 // InternalSolverLanguage.g:3502:2: rule__Parameter__Group_1__0__Impl rule__Parameter__Group_1__1
10954 {
10955 pushFollow(FOLLOW_25);
10956 rule__Parameter__Group_1__0__Impl();
10957
10958 state._fsp--;
10959
10960 pushFollow(FOLLOW_2);
10961 rule__Parameter__Group_1__1();
10962
10963 state._fsp--;
10964
10965
10966 }
10967
10968 }
10969 catch (RecognitionException re) {
10970 reportError(re);
10971 recover(input,re);
10972 }
10973 finally {
10974
10975 restoreStackSize(stackSize);
10976
10977 }
10978 return ;
10979 }
10980 // $ANTLR end "rule__Parameter__Group_1__0"
10981
10982
10983 // $ANTLR start "rule__Parameter__Group_1__0__Impl"
10984 // InternalSolverLanguage.g:3509:1: rule__Parameter__Group_1__0__Impl : ( ':' ) ;
10985 public final void rule__Parameter__Group_1__0__Impl() throws RecognitionException {
10986
10987 int stackSize = keepStackSize();
10988
10989 try {
10990 // InternalSolverLanguage.g:3513:1: ( ( ':' ) )
10991 // InternalSolverLanguage.g:3514:1: ( ':' )
10992 {
10993 // InternalSolverLanguage.g:3514:1: ( ':' )
10994 // InternalSolverLanguage.g:3515:2: ':'
10995 {
10996 before(grammarAccess.getParameterAccess().getColonKeyword_1_0());
10997 match(input,19,FOLLOW_2);
10998 after(grammarAccess.getParameterAccess().getColonKeyword_1_0());
10999
11000 }
11001
11002
11003 }
11004
11005 }
11006 catch (RecognitionException re) {
11007 reportError(re);
11008 recover(input,re);
11009 }
11010 finally {
11011
11012 restoreStackSize(stackSize);
11013
11014 }
11015 return ;
11016 }
11017 // $ANTLR end "rule__Parameter__Group_1__0__Impl"
11018
11019
11020 // $ANTLR start "rule__Parameter__Group_1__1"
11021 // InternalSolverLanguage.g:3524:1: rule__Parameter__Group_1__1 : rule__Parameter__Group_1__1__Impl ;
11022 public final void rule__Parameter__Group_1__1() throws RecognitionException {
11023
11024 int stackSize = keepStackSize();
11025
11026 try {
11027 // InternalSolverLanguage.g:3528:1: ( rule__Parameter__Group_1__1__Impl )
11028 // InternalSolverLanguage.g:3529:2: rule__Parameter__Group_1__1__Impl
11029 {
11030 pushFollow(FOLLOW_2);
11031 rule__Parameter__Group_1__1__Impl();
11032
11033 state._fsp--;
11034
11035
11036 }
11037
11038 }
11039 catch (RecognitionException re) {
11040 reportError(re);
11041 recover(input,re);
11042 }
11043 finally {
11044
11045 restoreStackSize(stackSize);
11046
11047 }
11048 return ;
11049 }
11050 // $ANTLR end "rule__Parameter__Group_1__1"
11051
11052
11053 // $ANTLR start "rule__Parameter__Group_1__1__Impl"
11054 // InternalSolverLanguage.g:3535:1: rule__Parameter__Group_1__1__Impl : ( ( rule__Parameter__TypeAssignment_1_1 ) ) ;
11055 public final void rule__Parameter__Group_1__1__Impl() throws RecognitionException {
11056
11057 int stackSize = keepStackSize();
11058
11059 try {
11060 // InternalSolverLanguage.g:3539:1: ( ( ( rule__Parameter__TypeAssignment_1_1 ) ) )
11061 // InternalSolverLanguage.g:3540:1: ( ( rule__Parameter__TypeAssignment_1_1 ) )
11062 {
11063 // InternalSolverLanguage.g:3540:1: ( ( rule__Parameter__TypeAssignment_1_1 ) )
11064 // InternalSolverLanguage.g:3541:2: ( rule__Parameter__TypeAssignment_1_1 )
11065 {
11066 before(grammarAccess.getParameterAccess().getTypeAssignment_1_1());
11067 // InternalSolverLanguage.g:3542:2: ( rule__Parameter__TypeAssignment_1_1 )
11068 // InternalSolverLanguage.g:3542:3: rule__Parameter__TypeAssignment_1_1
11069 {
11070 pushFollow(FOLLOW_2);
11071 rule__Parameter__TypeAssignment_1_1();
11072
11073 state._fsp--;
11074
11075
11076 }
11077
11078 after(grammarAccess.getParameterAccess().getTypeAssignment_1_1());
11079
11080 }
11081
11082
11083 }
11084
11085 }
11086 catch (RecognitionException re) {
11087 reportError(re);
11088 recover(input,re);
11089 }
11090 finally {
11091
11092 restoreStackSize(stackSize);
11093
11094 }
11095 return ;
11096 }
11097 // $ANTLR end "rule__Parameter__Group_1__1__Impl"
11098
11099
11100 // $ANTLR start "rule__PatternBody__Group__0"
11101 // InternalSolverLanguage.g:3551:1: rule__PatternBody__Group__0 : rule__PatternBody__Group__0__Impl rule__PatternBody__Group__1 ;
11102 public final void rule__PatternBody__Group__0() throws RecognitionException {
11103
11104 int stackSize = keepStackSize();
11105
11106 try {
11107 // InternalSolverLanguage.g:3555:1: ( rule__PatternBody__Group__0__Impl rule__PatternBody__Group__1 )
11108 // InternalSolverLanguage.g:3556:2: rule__PatternBody__Group__0__Impl rule__PatternBody__Group__1
11109 {
11110 pushFollow(FOLLOW_20);
11111 rule__PatternBody__Group__0__Impl();
11112
11113 state._fsp--;
11114
11115 pushFollow(FOLLOW_2);
11116 rule__PatternBody__Group__1();
11117
11118 state._fsp--;
11119
11120
11121 }
11122
11123 }
11124 catch (RecognitionException re) {
11125 reportError(re);
11126 recover(input,re);
11127 }
11128 finally {
11129
11130 restoreStackSize(stackSize);
11131
11132 }
11133 return ;
11134 }
11135 // $ANTLR end "rule__PatternBody__Group__0"
11136
11137
11138 // $ANTLR start "rule__PatternBody__Group__0__Impl"
11139 // InternalSolverLanguage.g:3563:1: rule__PatternBody__Group__0__Impl : ( () ) ;
11140 public final void rule__PatternBody__Group__0__Impl() throws RecognitionException {
11141
11142 int stackSize = keepStackSize();
11143
11144 try {
11145 // InternalSolverLanguage.g:3567:1: ( ( () ) )
11146 // InternalSolverLanguage.g:3568:1: ( () )
11147 {
11148 // InternalSolverLanguage.g:3568:1: ( () )
11149 // InternalSolverLanguage.g:3569:2: ()
11150 {
11151 before(grammarAccess.getPatternBodyAccess().getPatternBodyAction_0());
11152 // InternalSolverLanguage.g:3570:2: ()
11153 // InternalSolverLanguage.g:3570:3:
11154 {
11155 }
11156
11157 after(grammarAccess.getPatternBodyAccess().getPatternBodyAction_0());
11158
11159 }
11160
11161
11162 }
11163
11164 }
11165 finally {
11166
11167 restoreStackSize(stackSize);
11168
11169 }
11170 return ;
11171 }
11172 // $ANTLR end "rule__PatternBody__Group__0__Impl"
11173
11174
11175 // $ANTLR start "rule__PatternBody__Group__1"
11176 // InternalSolverLanguage.g:3578:1: rule__PatternBody__Group__1 : rule__PatternBody__Group__1__Impl ;
11177 public final void rule__PatternBody__Group__1() throws RecognitionException {
11178
11179 int stackSize = keepStackSize();
11180
11181 try {
11182 // InternalSolverLanguage.g:3582:1: ( rule__PatternBody__Group__1__Impl )
11183 // InternalSolverLanguage.g:3583:2: rule__PatternBody__Group__1__Impl
11184 {
11185 pushFollow(FOLLOW_2);
11186 rule__PatternBody__Group__1__Impl();
11187
11188 state._fsp--;
11189
11190
11191 }
11192
11193 }
11194 catch (RecognitionException re) {
11195 reportError(re);
11196 recover(input,re);
11197 }
11198 finally {
11199
11200 restoreStackSize(stackSize);
11201
11202 }
11203 return ;
11204 }
11205 // $ANTLR end "rule__PatternBody__Group__1"
11206
11207
11208 // $ANTLR start "rule__PatternBody__Group__1__Impl"
11209 // InternalSolverLanguage.g:3589:1: rule__PatternBody__Group__1__Impl : ( ( rule__PatternBody__Alternatives_1 ) ) ;
11210 public final void rule__PatternBody__Group__1__Impl() throws RecognitionException {
11211
11212 int stackSize = keepStackSize();
11213
11214 try {
11215 // InternalSolverLanguage.g:3593:1: ( ( ( rule__PatternBody__Alternatives_1 ) ) )
11216 // InternalSolverLanguage.g:3594:1: ( ( rule__PatternBody__Alternatives_1 ) )
11217 {
11218 // InternalSolverLanguage.g:3594:1: ( ( rule__PatternBody__Alternatives_1 ) )
11219 // InternalSolverLanguage.g:3595:2: ( rule__PatternBody__Alternatives_1 )
11220 {
11221 before(grammarAccess.getPatternBodyAccess().getAlternatives_1());
11222 // InternalSolverLanguage.g:3596:2: ( rule__PatternBody__Alternatives_1 )
11223 // InternalSolverLanguage.g:3596:3: rule__PatternBody__Alternatives_1
11224 {
11225 pushFollow(FOLLOW_2);
11226 rule__PatternBody__Alternatives_1();
11227
11228 state._fsp--;
11229
11230
11231 }
11232
11233 after(grammarAccess.getPatternBodyAccess().getAlternatives_1());
11234
11235 }
11236
11237
11238 }
11239
11240 }
11241 catch (RecognitionException re) {
11242 reportError(re);
11243 recover(input,re);
11244 }
11245 finally {
11246
11247 restoreStackSize(stackSize);
11248
11249 }
11250 return ;
11251 }
11252 // $ANTLR end "rule__PatternBody__Group__1__Impl"
11253
11254
11255 // $ANTLR start "rule__Polarity__Group_0__0"
11256 // InternalSolverLanguage.g:3605:1: rule__Polarity__Group_0__0 : rule__Polarity__Group_0__0__Impl rule__Polarity__Group_0__1 ;
11257 public final void rule__Polarity__Group_0__0() throws RecognitionException {
11258
11259 int stackSize = keepStackSize();
11260
11261 try {
11262 // InternalSolverLanguage.g:3609:1: ( rule__Polarity__Group_0__0__Impl rule__Polarity__Group_0__1 )
11263 // InternalSolverLanguage.g:3610:2: rule__Polarity__Group_0__0__Impl rule__Polarity__Group_0__1
11264 {
11265 pushFollow(FOLLOW_26);
11266 rule__Polarity__Group_0__0__Impl();
11267
11268 state._fsp--;
11269
11270 pushFollow(FOLLOW_2);
11271 rule__Polarity__Group_0__1();
11272
11273 state._fsp--;
11274
11275
11276 }
11277
11278 }
11279 catch (RecognitionException re) {
11280 reportError(re);
11281 recover(input,re);
11282 }
11283 finally {
11284
11285 restoreStackSize(stackSize);
11286
11287 }
11288 return ;
11289 }
11290 // $ANTLR end "rule__Polarity__Group_0__0"
11291
11292
11293 // $ANTLR start "rule__Polarity__Group_0__0__Impl"
11294 // InternalSolverLanguage.g:3617:1: rule__Polarity__Group_0__0__Impl : ( () ) ;
11295 public final void rule__Polarity__Group_0__0__Impl() throws RecognitionException {
11296
11297 int stackSize = keepStackSize();
11298
11299 try {
11300 // InternalSolverLanguage.g:3621:1: ( ( () ) )
11301 // InternalSolverLanguage.g:3622:1: ( () )
11302 {
11303 // InternalSolverLanguage.g:3622:1: ( () )
11304 // InternalSolverLanguage.g:3623:2: ()
11305 {
11306 before(grammarAccess.getPolarityAccess().getPositiveAction_0_0());
11307 // InternalSolverLanguage.g:3624:2: ()
11308 // InternalSolverLanguage.g:3624:3:
11309 {
11310 }
11311
11312 after(grammarAccess.getPolarityAccess().getPositiveAction_0_0());
11313
11314 }
11315
11316
11317 }
11318
11319 }
11320 finally {
11321
11322 restoreStackSize(stackSize);
11323
11324 }
11325 return ;
11326 }
11327 // $ANTLR end "rule__Polarity__Group_0__0__Impl"
11328
11329
11330 // $ANTLR start "rule__Polarity__Group_0__1"
11331 // InternalSolverLanguage.g:3632:1: rule__Polarity__Group_0__1 : rule__Polarity__Group_0__1__Impl ;
11332 public final void rule__Polarity__Group_0__1() throws RecognitionException {
11333
11334 int stackSize = keepStackSize();
11335
11336 try {
11337 // InternalSolverLanguage.g:3636:1: ( rule__Polarity__Group_0__1__Impl )
11338 // InternalSolverLanguage.g:3637:2: rule__Polarity__Group_0__1__Impl
11339 {
11340 pushFollow(FOLLOW_2);
11341 rule__Polarity__Group_0__1__Impl();
11342
11343 state._fsp--;
11344
11345
11346 }
11347
11348 }
11349 catch (RecognitionException re) {
11350 reportError(re);
11351 recover(input,re);
11352 }
11353 finally {
11354
11355 restoreStackSize(stackSize);
11356
11357 }
11358 return ;
11359 }
11360 // $ANTLR end "rule__Polarity__Group_0__1"
11361
11362
11363 // $ANTLR start "rule__Polarity__Group_0__1__Impl"
11364 // InternalSolverLanguage.g:3643:1: rule__Polarity__Group_0__1__Impl : ( '+' ) ;
11365 public final void rule__Polarity__Group_0__1__Impl() throws RecognitionException {
11366
11367 int stackSize = keepStackSize();
11368
11369 try {
11370 // InternalSolverLanguage.g:3647:1: ( ( '+' ) )
11371 // InternalSolverLanguage.g:3648:1: ( '+' )
11372 {
11373 // InternalSolverLanguage.g:3648:1: ( '+' )
11374 // InternalSolverLanguage.g:3649:2: '+'
11375 {
11376 before(grammarAccess.getPolarityAccess().getPlusSignKeyword_0_1());
11377 match(input,29,FOLLOW_2);
11378 after(grammarAccess.getPolarityAccess().getPlusSignKeyword_0_1());
11379
11380 }
11381
11382
11383 }
11384
11385 }
11386 catch (RecognitionException re) {
11387 reportError(re);
11388 recover(input,re);
11389 }
11390 finally {
11391
11392 restoreStackSize(stackSize);
11393
11394 }
11395 return ;
11396 }
11397 // $ANTLR end "rule__Polarity__Group_0__1__Impl"
11398
11399
11400 // $ANTLR start "rule__Polarity__Group_1__0"
11401 // InternalSolverLanguage.g:3659:1: rule__Polarity__Group_1__0 : rule__Polarity__Group_1__0__Impl rule__Polarity__Group_1__1 ;
11402 public final void rule__Polarity__Group_1__0() throws RecognitionException {
11403
11404 int stackSize = keepStackSize();
11405
11406 try {
11407 // InternalSolverLanguage.g:3663:1: ( rule__Polarity__Group_1__0__Impl rule__Polarity__Group_1__1 )
11408 // InternalSolverLanguage.g:3664:2: rule__Polarity__Group_1__0__Impl rule__Polarity__Group_1__1
11409 {
11410 pushFollow(FOLLOW_27);
11411 rule__Polarity__Group_1__0__Impl();
11412
11413 state._fsp--;
11414
11415 pushFollow(FOLLOW_2);
11416 rule__Polarity__Group_1__1();
11417
11418 state._fsp--;
11419
11420
11421 }
11422
11423 }
11424 catch (RecognitionException re) {
11425 reportError(re);
11426 recover(input,re);
11427 }
11428 finally {
11429
11430 restoreStackSize(stackSize);
11431
11432 }
11433 return ;
11434 }
11435 // $ANTLR end "rule__Polarity__Group_1__0"
11436
11437
11438 // $ANTLR start "rule__Polarity__Group_1__0__Impl"
11439 // InternalSolverLanguage.g:3671:1: rule__Polarity__Group_1__0__Impl : ( () ) ;
11440 public final void rule__Polarity__Group_1__0__Impl() throws RecognitionException {
11441
11442 int stackSize = keepStackSize();
11443
11444 try {
11445 // InternalSolverLanguage.g:3675:1: ( ( () ) )
11446 // InternalSolverLanguage.g:3676:1: ( () )
11447 {
11448 // InternalSolverLanguage.g:3676:1: ( () )
11449 // InternalSolverLanguage.g:3677:2: ()
11450 {
11451 before(grammarAccess.getPolarityAccess().getNegativeAction_1_0());
11452 // InternalSolverLanguage.g:3678:2: ()
11453 // InternalSolverLanguage.g:3678:3:
11454 {
11455 }
11456
11457 after(grammarAccess.getPolarityAccess().getNegativeAction_1_0());
11458
11459 }
11460
11461
11462 }
11463
11464 }
11465 finally {
11466
11467 restoreStackSize(stackSize);
11468
11469 }
11470 return ;
11471 }
11472 // $ANTLR end "rule__Polarity__Group_1__0__Impl"
11473
11474
11475 // $ANTLR start "rule__Polarity__Group_1__1"
11476 // InternalSolverLanguage.g:3686:1: rule__Polarity__Group_1__1 : rule__Polarity__Group_1__1__Impl ;
11477 public final void rule__Polarity__Group_1__1() throws RecognitionException {
11478
11479 int stackSize = keepStackSize();
11480
11481 try {
11482 // InternalSolverLanguage.g:3690:1: ( rule__Polarity__Group_1__1__Impl )
11483 // InternalSolverLanguage.g:3691:2: rule__Polarity__Group_1__1__Impl
11484 {
11485 pushFollow(FOLLOW_2);
11486 rule__Polarity__Group_1__1__Impl();
11487
11488 state._fsp--;
11489
11490
11491 }
11492
11493 }
11494 catch (RecognitionException re) {
11495 reportError(re);
11496 recover(input,re);
11497 }
11498 finally {
11499
11500 restoreStackSize(stackSize);
11501
11502 }
11503 return ;
11504 }
11505 // $ANTLR end "rule__Polarity__Group_1__1"
11506
11507
11508 // $ANTLR start "rule__Polarity__Group_1__1__Impl"
11509 // InternalSolverLanguage.g:3697:1: rule__Polarity__Group_1__1__Impl : ( '-' ) ;
11510 public final void rule__Polarity__Group_1__1__Impl() throws RecognitionException {
11511
11512 int stackSize = keepStackSize();
11513
11514 try {
11515 // InternalSolverLanguage.g:3701:1: ( ( '-' ) )
11516 // InternalSolverLanguage.g:3702:1: ( '-' )
11517 {
11518 // InternalSolverLanguage.g:3702:1: ( '-' )
11519 // InternalSolverLanguage.g:3703:2: '-'
11520 {
11521 before(grammarAccess.getPolarityAccess().getHyphenMinusKeyword_1_1());
11522 match(input,13,FOLLOW_2);
11523 after(grammarAccess.getPolarityAccess().getHyphenMinusKeyword_1_1());
11524
11525 }
11526
11527
11528 }
11529
11530 }
11531 catch (RecognitionException re) {
11532 reportError(re);
11533 recover(input,re);
11534 }
11535 finally {
11536
11537 restoreStackSize(stackSize);
11538
11539 }
11540 return ;
11541 }
11542 // $ANTLR end "rule__Polarity__Group_1__1__Impl"
11543
11544
11545 // $ANTLR start "rule__Constraint__Group__0"
11546 // InternalSolverLanguage.g:3713:1: rule__Constraint__Group__0 : rule__Constraint__Group__0__Impl rule__Constraint__Group__1 ;
11547 public final void rule__Constraint__Group__0() throws RecognitionException {
11548
11549 int stackSize = keepStackSize();
11550
11551 try {
11552 // InternalSolverLanguage.g:3717:1: ( rule__Constraint__Group__0__Impl rule__Constraint__Group__1 )
11553 // InternalSolverLanguage.g:3718:2: rule__Constraint__Group__0__Impl rule__Constraint__Group__1
11554 {
11555 pushFollow(FOLLOW_28);
11556 rule__Constraint__Group__0__Impl();
11557
11558 state._fsp--;
11559
11560 pushFollow(FOLLOW_2);
11561 rule__Constraint__Group__1();
11562
11563 state._fsp--;
11564
11565
11566 }
11567
11568 }
11569 catch (RecognitionException re) {
11570 reportError(re);
11571 recover(input,re);
11572 }
11573 finally {
11574
11575 restoreStackSize(stackSize);
11576
11577 }
11578 return ;
11579 }
11580 // $ANTLR end "rule__Constraint__Group__0"
11581
11582
11583 // $ANTLR start "rule__Constraint__Group__0__Impl"
11584 // InternalSolverLanguage.g:3725:1: rule__Constraint__Group__0__Impl : ( ( rule__Constraint__PolarityAssignment_0 )? ) ;
11585 public final void rule__Constraint__Group__0__Impl() throws RecognitionException {
11586
11587 int stackSize = keepStackSize();
11588
11589 try {
11590 // InternalSolverLanguage.g:3729:1: ( ( ( rule__Constraint__PolarityAssignment_0 )? ) )
11591 // InternalSolverLanguage.g:3730:1: ( ( rule__Constraint__PolarityAssignment_0 )? )
11592 {
11593 // InternalSolverLanguage.g:3730:1: ( ( rule__Constraint__PolarityAssignment_0 )? )
11594 // InternalSolverLanguage.g:3731:2: ( rule__Constraint__PolarityAssignment_0 )?
11595 {
11596 before(grammarAccess.getConstraintAccess().getPolarityAssignment_0());
11597 // InternalSolverLanguage.g:3732:2: ( rule__Constraint__PolarityAssignment_0 )?
11598 int alt32=2;
11599 int LA32_0 = input.LA(1);
11600
11601 if ( (LA32_0==13||LA32_0==29) ) {
11602 alt32=1;
11603 }
11604 switch (alt32) {
11605 case 1 :
11606 // InternalSolverLanguage.g:3732:3: rule__Constraint__PolarityAssignment_0
11607 {
11608 pushFollow(FOLLOW_2);
11609 rule__Constraint__PolarityAssignment_0();
11610
11611 state._fsp--;
11612
11613
11614 }
11615 break;
11616
11617 }
11618
11619 after(grammarAccess.getConstraintAccess().getPolarityAssignment_0());
11620
11621 }
11622
11623
11624 }
11625
11626 }
11627 catch (RecognitionException re) {
11628 reportError(re);
11629 recover(input,re);
11630 }
11631 finally {
11632
11633 restoreStackSize(stackSize);
11634
11635 }
11636 return ;
11637 }
11638 // $ANTLR end "rule__Constraint__Group__0__Impl"
11639
11640
11641 // $ANTLR start "rule__Constraint__Group__1"
11642 // InternalSolverLanguage.g:3740:1: rule__Constraint__Group__1 : rule__Constraint__Group__1__Impl rule__Constraint__Group__2 ;
11643 public final void rule__Constraint__Group__1() throws RecognitionException {
11644
11645 int stackSize = keepStackSize();
11646
11647 try {
11648 // InternalSolverLanguage.g:3744:1: ( rule__Constraint__Group__1__Impl rule__Constraint__Group__2 )
11649 // InternalSolverLanguage.g:3745:2: rule__Constraint__Group__1__Impl rule__Constraint__Group__2
11650 {
11651 pushFollow(FOLLOW_29);
11652 rule__Constraint__Group__1__Impl();
11653
11654 state._fsp--;
11655
11656 pushFollow(FOLLOW_2);
11657 rule__Constraint__Group__2();
11658
11659 state._fsp--;
11660
11661
11662 }
11663
11664 }
11665 catch (RecognitionException re) {
11666 reportError(re);
11667 recover(input,re);
11668 }
11669 finally {
11670
11671 restoreStackSize(stackSize);
11672
11673 }
11674 return ;
11675 }
11676 // $ANTLR end "rule__Constraint__Group__1"
11677
11678
11679 // $ANTLR start "rule__Constraint__Group__1__Impl"
11680 // InternalSolverLanguage.g:3752:1: rule__Constraint__Group__1__Impl : ( ( rule__Constraint__SymbolAssignment_1 ) ) ;
11681 public final void rule__Constraint__Group__1__Impl() throws RecognitionException {
11682
11683 int stackSize = keepStackSize();
11684
11685 try {
11686 // InternalSolverLanguage.g:3756:1: ( ( ( rule__Constraint__SymbolAssignment_1 ) ) )
11687 // InternalSolverLanguage.g:3757:1: ( ( rule__Constraint__SymbolAssignment_1 ) )
11688 {
11689 // InternalSolverLanguage.g:3757:1: ( ( rule__Constraint__SymbolAssignment_1 ) )
11690 // InternalSolverLanguage.g:3758:2: ( rule__Constraint__SymbolAssignment_1 )
11691 {
11692 before(grammarAccess.getConstraintAccess().getSymbolAssignment_1());
11693 // InternalSolverLanguage.g:3759:2: ( rule__Constraint__SymbolAssignment_1 )
11694 // InternalSolverLanguage.g:3759:3: rule__Constraint__SymbolAssignment_1
11695 {
11696 pushFollow(FOLLOW_2);
11697 rule__Constraint__SymbolAssignment_1();
11698
11699 state._fsp--;
11700
11701
11702 }
11703
11704 after(grammarAccess.getConstraintAccess().getSymbolAssignment_1());
11705
11706 }
11707
11708
11709 }
11710
11711 }
11712 catch (RecognitionException re) {
11713 reportError(re);
11714 recover(input,re);
11715 }
11716 finally {
11717
11718 restoreStackSize(stackSize);
11719
11720 }
11721 return ;
11722 }
11723 // $ANTLR end "rule__Constraint__Group__1__Impl"
11724
11725
11726 // $ANTLR start "rule__Constraint__Group__2"
11727 // InternalSolverLanguage.g:3767:1: rule__Constraint__Group__2 : rule__Constraint__Group__2__Impl ;
11728 public final void rule__Constraint__Group__2() throws RecognitionException {
11729
11730 int stackSize = keepStackSize();
11731
11732 try {
11733 // InternalSolverLanguage.g:3771:1: ( rule__Constraint__Group__2__Impl )
11734 // InternalSolverLanguage.g:3772:2: rule__Constraint__Group__2__Impl
11735 {
11736 pushFollow(FOLLOW_2);
11737 rule__Constraint__Group__2__Impl();
11738
11739 state._fsp--;
11740
11741
11742 }
11743
11744 }
11745 catch (RecognitionException re) {
11746 reportError(re);
11747 recover(input,re);
11748 }
11749 finally {
11750
11751 restoreStackSize(stackSize);
11752
11753 }
11754 return ;
11755 }
11756 // $ANTLR end "rule__Constraint__Group__2"
11757
11758
11759 // $ANTLR start "rule__Constraint__Group__2__Impl"
11760 // InternalSolverLanguage.g:3778:1: rule__Constraint__Group__2__Impl : ( ( rule__Constraint__Alternatives_2 ) ) ;
11761 public final void rule__Constraint__Group__2__Impl() throws RecognitionException {
11762
11763 int stackSize = keepStackSize();
11764
11765 try {
11766 // InternalSolverLanguage.g:3782:1: ( ( ( rule__Constraint__Alternatives_2 ) ) )
11767 // InternalSolverLanguage.g:3783:1: ( ( rule__Constraint__Alternatives_2 ) )
11768 {
11769 // InternalSolverLanguage.g:3783:1: ( ( rule__Constraint__Alternatives_2 ) )
11770 // InternalSolverLanguage.g:3784:2: ( rule__Constraint__Alternatives_2 )
11771 {
11772 before(grammarAccess.getConstraintAccess().getAlternatives_2());
11773 // InternalSolverLanguage.g:3785:2: ( rule__Constraint__Alternatives_2 )
11774 // InternalSolverLanguage.g:3785:3: rule__Constraint__Alternatives_2
11775 {
11776 pushFollow(FOLLOW_2);
11777 rule__Constraint__Alternatives_2();
11778
11779 state._fsp--;
11780
11781
11782 }
11783
11784 after(grammarAccess.getConstraintAccess().getAlternatives_2());
11785
11786 }
11787
11788
11789 }
11790
11791 }
11792 catch (RecognitionException re) {
11793 reportError(re);
11794 recover(input,re);
11795 }
11796 finally {
11797
11798 restoreStackSize(stackSize);
11799
11800 }
11801 return ;
11802 }
11803 // $ANTLR end "rule__Constraint__Group__2__Impl"
11804
11805
11806 // $ANTLR start "rule__Constraint__Group_2_0__0"
11807 // InternalSolverLanguage.g:3794:1: rule__Constraint__Group_2_0__0 : rule__Constraint__Group_2_0__0__Impl rule__Constraint__Group_2_0__1 ;
11808 public final void rule__Constraint__Group_2_0__0() throws RecognitionException {
11809
11810 int stackSize = keepStackSize();
11811
11812 try {
11813 // InternalSolverLanguage.g:3798:1: ( rule__Constraint__Group_2_0__0__Impl rule__Constraint__Group_2_0__1 )
11814 // InternalSolverLanguage.g:3799:2: rule__Constraint__Group_2_0__0__Impl rule__Constraint__Group_2_0__1
11815 {
11816 pushFollow(FOLLOW_30);
11817 rule__Constraint__Group_2_0__0__Impl();
11818
11819 state._fsp--;
11820
11821 pushFollow(FOLLOW_2);
11822 rule__Constraint__Group_2_0__1();
11823
11824 state._fsp--;
11825
11826
11827 }
11828
11829 }
11830 catch (RecognitionException re) {
11831 reportError(re);
11832 recover(input,re);
11833 }
11834 finally {
11835
11836 restoreStackSize(stackSize);
11837
11838 }
11839 return ;
11840 }
11841 // $ANTLR end "rule__Constraint__Group_2_0__0"
11842
11843
11844 // $ANTLR start "rule__Constraint__Group_2_0__0__Impl"
11845 // InternalSolverLanguage.g:3806:1: rule__Constraint__Group_2_0__0__Impl : ( '(' ) ;
11846 public final void rule__Constraint__Group_2_0__0__Impl() throws RecognitionException {
11847
11848 int stackSize = keepStackSize();
11849
11850 try {
11851 // InternalSolverLanguage.g:3810:1: ( ( '(' ) )
11852 // InternalSolverLanguage.g:3811:1: ( '(' )
11853 {
11854 // InternalSolverLanguage.g:3811:1: ( '(' )
11855 // InternalSolverLanguage.g:3812:2: '('
11856 {
11857 before(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_0_0());
11858 match(input,17,FOLLOW_2);
11859 after(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_0_0());
11860
11861 }
11862
11863
11864 }
11865
11866 }
11867 catch (RecognitionException re) {
11868 reportError(re);
11869 recover(input,re);
11870 }
11871 finally {
11872
11873 restoreStackSize(stackSize);
11874
11875 }
11876 return ;
11877 }
11878 // $ANTLR end "rule__Constraint__Group_2_0__0__Impl"
11879
11880
11881 // $ANTLR start "rule__Constraint__Group_2_0__1"
11882 // InternalSolverLanguage.g:3821:1: rule__Constraint__Group_2_0__1 : rule__Constraint__Group_2_0__1__Impl rule__Constraint__Group_2_0__2 ;
11883 public final void rule__Constraint__Group_2_0__1() throws RecognitionException {
11884
11885 int stackSize = keepStackSize();
11886
11887 try {
11888 // InternalSolverLanguage.g:3825:1: ( rule__Constraint__Group_2_0__1__Impl rule__Constraint__Group_2_0__2 )
11889 // InternalSolverLanguage.g:3826:2: rule__Constraint__Group_2_0__1__Impl rule__Constraint__Group_2_0__2
11890 {
11891 pushFollow(FOLLOW_30);
11892 rule__Constraint__Group_2_0__1__Impl();
11893
11894 state._fsp--;
11895
11896 pushFollow(FOLLOW_2);
11897 rule__Constraint__Group_2_0__2();
11898
11899 state._fsp--;
11900
11901
11902 }
11903
11904 }
11905 catch (RecognitionException re) {
11906 reportError(re);
11907 recover(input,re);
11908 }
11909 finally {
11910
11911 restoreStackSize(stackSize);
11912
11913 }
11914 return ;
11915 }
11916 // $ANTLR end "rule__Constraint__Group_2_0__1"
11917
11918
11919 // $ANTLR start "rule__Constraint__Group_2_0__1__Impl"
11920 // InternalSolverLanguage.g:3833:1: rule__Constraint__Group_2_0__1__Impl : ( ( rule__Constraint__ParamsAssignment_2_0_1 )* ) ;
11921 public final void rule__Constraint__Group_2_0__1__Impl() throws RecognitionException {
11922
11923 int stackSize = keepStackSize();
11924
11925 try {
11926 // InternalSolverLanguage.g:3837:1: ( ( ( rule__Constraint__ParamsAssignment_2_0_1 )* ) )
11927 // InternalSolverLanguage.g:3838:1: ( ( rule__Constraint__ParamsAssignment_2_0_1 )* )
11928 {
11929 // InternalSolverLanguage.g:3838:1: ( ( rule__Constraint__ParamsAssignment_2_0_1 )* )
11930 // InternalSolverLanguage.g:3839:2: ( rule__Constraint__ParamsAssignment_2_0_1 )*
11931 {
11932 before(grammarAccess.getConstraintAccess().getParamsAssignment_2_0_1());
11933 // InternalSolverLanguage.g:3840:2: ( rule__Constraint__ParamsAssignment_2_0_1 )*
11934 loop33:
11935 do {
11936 int alt33=2;
11937 int LA33_0 = input.LA(1);
11938
11939 if ( ((LA33_0>=RULE_INT && LA33_0<=RULE_STRING)||(LA33_0>=11 && LA33_0<=13)) ) {
11940 alt33=1;
11941 }
11942
11943
11944 switch (alt33) {
11945 case 1 :
11946 // InternalSolverLanguage.g:3840:3: rule__Constraint__ParamsAssignment_2_0_1
11947 {
11948 pushFollow(FOLLOW_31);
11949 rule__Constraint__ParamsAssignment_2_0_1();
11950
11951 state._fsp--;
11952
11953
11954 }
11955 break;
11956
11957 default :
11958 break loop33;
11959 }
11960 } while (true);
11961
11962 after(grammarAccess.getConstraintAccess().getParamsAssignment_2_0_1());
11963
11964 }
11965
11966
11967 }
11968
11969 }
11970 catch (RecognitionException re) {
11971 reportError(re);
11972 recover(input,re);
11973 }
11974 finally {
11975
11976 restoreStackSize(stackSize);
11977
11978 }
11979 return ;
11980 }
11981 // $ANTLR end "rule__Constraint__Group_2_0__1__Impl"
11982
11983
11984 // $ANTLR start "rule__Constraint__Group_2_0__2"
11985 // InternalSolverLanguage.g:3848:1: rule__Constraint__Group_2_0__2 : rule__Constraint__Group_2_0__2__Impl ;
11986 public final void rule__Constraint__Group_2_0__2() throws RecognitionException {
11987
11988 int stackSize = keepStackSize();
11989
11990 try {
11991 // InternalSolverLanguage.g:3852:1: ( rule__Constraint__Group_2_0__2__Impl )
11992 // InternalSolverLanguage.g:3853:2: rule__Constraint__Group_2_0__2__Impl
11993 {
11994 pushFollow(FOLLOW_2);
11995 rule__Constraint__Group_2_0__2__Impl();
11996
11997 state._fsp--;
11998
11999
12000 }
12001
12002 }
12003 catch (RecognitionException re) {
12004 reportError(re);
12005 recover(input,re);
12006 }
12007 finally {
12008
12009 restoreStackSize(stackSize);
12010
12011 }
12012 return ;
12013 }
12014 // $ANTLR end "rule__Constraint__Group_2_0__2"
12015
12016
12017 // $ANTLR start "rule__Constraint__Group_2_0__2__Impl"
12018 // InternalSolverLanguage.g:3859:1: rule__Constraint__Group_2_0__2__Impl : ( ')' ) ;
12019 public final void rule__Constraint__Group_2_0__2__Impl() throws RecognitionException {
12020
12021 int stackSize = keepStackSize();
12022
12023 try {
12024 // InternalSolverLanguage.g:3863:1: ( ( ')' ) )
12025 // InternalSolverLanguage.g:3864:1: ( ')' )
12026 {
12027 // InternalSolverLanguage.g:3864:1: ( ')' )
12028 // InternalSolverLanguage.g:3865:2: ')'
12029 {
12030 before(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_0_2());
12031 match(input,18,FOLLOW_2);
12032 after(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_0_2());
12033
12034 }
12035
12036
12037 }
12038
12039 }
12040 catch (RecognitionException re) {
12041 reportError(re);
12042 recover(input,re);
12043 }
12044 finally {
12045
12046 restoreStackSize(stackSize);
12047
12048 }
12049 return ;
12050 }
12051 // $ANTLR end "rule__Constraint__Group_2_0__2__Impl"
12052
12053
12054 // $ANTLR start "rule__Constraint__Group_2_1__0"
12055 // InternalSolverLanguage.g:3875:1: rule__Constraint__Group_2_1__0 : rule__Constraint__Group_2_1__0__Impl rule__Constraint__Group_2_1__1 ;
12056 public final void rule__Constraint__Group_2_1__0() throws RecognitionException {
12057
12058 int stackSize = keepStackSize();
12059
12060 try {
12061 // InternalSolverLanguage.g:3879:1: ( rule__Constraint__Group_2_1__0__Impl rule__Constraint__Group_2_1__1 )
12062 // InternalSolverLanguage.g:3880:2: rule__Constraint__Group_2_1__0__Impl rule__Constraint__Group_2_1__1
12063 {
12064 pushFollow(FOLLOW_11);
12065 rule__Constraint__Group_2_1__0__Impl();
12066
12067 state._fsp--;
12068
12069 pushFollow(FOLLOW_2);
12070 rule__Constraint__Group_2_1__1();
12071
12072 state._fsp--;
12073
12074
12075 }
12076
12077 }
12078 catch (RecognitionException re) {
12079 reportError(re);
12080 recover(input,re);
12081 }
12082 finally {
12083
12084 restoreStackSize(stackSize);
12085
12086 }
12087 return ;
12088 }
12089 // $ANTLR end "rule__Constraint__Group_2_1__0"
12090
12091
12092 // $ANTLR start "rule__Constraint__Group_2_1__0__Impl"
12093 // InternalSolverLanguage.g:3887:1: rule__Constraint__Group_2_1__0__Impl : ( ( rule__Constraint__ClosureTypeAssignment_2_1_0 ) ) ;
12094 public final void rule__Constraint__Group_2_1__0__Impl() throws RecognitionException {
12095
12096 int stackSize = keepStackSize();
12097
12098 try {
12099 // InternalSolverLanguage.g:3891:1: ( ( ( rule__Constraint__ClosureTypeAssignment_2_1_0 ) ) )
12100 // InternalSolverLanguage.g:3892:1: ( ( rule__Constraint__ClosureTypeAssignment_2_1_0 ) )
12101 {
12102 // InternalSolverLanguage.g:3892:1: ( ( rule__Constraint__ClosureTypeAssignment_2_1_0 ) )
12103 // InternalSolverLanguage.g:3893:2: ( rule__Constraint__ClosureTypeAssignment_2_1_0 )
12104 {
12105 before(grammarAccess.getConstraintAccess().getClosureTypeAssignment_2_1_0());
12106 // InternalSolverLanguage.g:3894:2: ( rule__Constraint__ClosureTypeAssignment_2_1_0 )
12107 // InternalSolverLanguage.g:3894:3: rule__Constraint__ClosureTypeAssignment_2_1_0
12108 {
12109 pushFollow(FOLLOW_2);
12110 rule__Constraint__ClosureTypeAssignment_2_1_0();
12111
12112 state._fsp--;
12113
12114
12115 }
12116
12117 after(grammarAccess.getConstraintAccess().getClosureTypeAssignment_2_1_0());
12118
12119 }
12120
12121
12122 }
12123
12124 }
12125 catch (RecognitionException re) {
12126 reportError(re);
12127 recover(input,re);
12128 }
12129 finally {
12130
12131 restoreStackSize(stackSize);
12132
12133 }
12134 return ;
12135 }
12136 // $ANTLR end "rule__Constraint__Group_2_1__0__Impl"
12137
12138
12139 // $ANTLR start "rule__Constraint__Group_2_1__1"
12140 // InternalSolverLanguage.g:3902:1: rule__Constraint__Group_2_1__1 : rule__Constraint__Group_2_1__1__Impl rule__Constraint__Group_2_1__2 ;
12141 public final void rule__Constraint__Group_2_1__1() throws RecognitionException {
12142
12143 int stackSize = keepStackSize();
12144
12145 try {
12146 // InternalSolverLanguage.g:3906:1: ( rule__Constraint__Group_2_1__1__Impl rule__Constraint__Group_2_1__2 )
12147 // InternalSolverLanguage.g:3907:2: rule__Constraint__Group_2_1__1__Impl rule__Constraint__Group_2_1__2
12148 {
12149 pushFollow(FOLLOW_32);
12150 rule__Constraint__Group_2_1__1__Impl();
12151
12152 state._fsp--;
12153
12154 pushFollow(FOLLOW_2);
12155 rule__Constraint__Group_2_1__2();
12156
12157 state._fsp--;
12158
12159
12160 }
12161
12162 }
12163 catch (RecognitionException re) {
12164 reportError(re);
12165 recover(input,re);
12166 }
12167 finally {
12168
12169 restoreStackSize(stackSize);
12170
12171 }
12172 return ;
12173 }
12174 // $ANTLR end "rule__Constraint__Group_2_1__1"
12175
12176
12177 // $ANTLR start "rule__Constraint__Group_2_1__1__Impl"
12178 // InternalSolverLanguage.g:3914:1: rule__Constraint__Group_2_1__1__Impl : ( '(' ) ;
12179 public final void rule__Constraint__Group_2_1__1__Impl() throws RecognitionException {
12180
12181 int stackSize = keepStackSize();
12182
12183 try {
12184 // InternalSolverLanguage.g:3918:1: ( ( '(' ) )
12185 // InternalSolverLanguage.g:3919:1: ( '(' )
12186 {
12187 // InternalSolverLanguage.g:3919:1: ( '(' )
12188 // InternalSolverLanguage.g:3920:2: '('
12189 {
12190 before(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_1_1());
12191 match(input,17,FOLLOW_2);
12192 after(grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_1_1());
12193
12194 }
12195
12196
12197 }
12198
12199 }
12200 catch (RecognitionException re) {
12201 reportError(re);
12202 recover(input,re);
12203 }
12204 finally {
12205
12206 restoreStackSize(stackSize);
12207
12208 }
12209 return ;
12210 }
12211 // $ANTLR end "rule__Constraint__Group_2_1__1__Impl"
12212
12213
12214 // $ANTLR start "rule__Constraint__Group_2_1__2"
12215 // InternalSolverLanguage.g:3929:1: rule__Constraint__Group_2_1__2 : rule__Constraint__Group_2_1__2__Impl rule__Constraint__Group_2_1__3 ;
12216 public final void rule__Constraint__Group_2_1__2() throws RecognitionException {
12217
12218 int stackSize = keepStackSize();
12219
12220 try {
12221 // InternalSolverLanguage.g:3933:1: ( rule__Constraint__Group_2_1__2__Impl rule__Constraint__Group_2_1__3 )
12222 // InternalSolverLanguage.g:3934:2: rule__Constraint__Group_2_1__2__Impl rule__Constraint__Group_2_1__3
12223 {
12224 pushFollow(FOLLOW_32);
12225 rule__Constraint__Group_2_1__2__Impl();
12226
12227 state._fsp--;
12228
12229 pushFollow(FOLLOW_2);
12230 rule__Constraint__Group_2_1__3();
12231
12232 state._fsp--;
12233
12234
12235 }
12236
12237 }
12238 catch (RecognitionException re) {
12239 reportError(re);
12240 recover(input,re);
12241 }
12242 finally {
12243
12244 restoreStackSize(stackSize);
12245
12246 }
12247 return ;
12248 }
12249 // $ANTLR end "rule__Constraint__Group_2_1__2"
12250
12251
12252 // $ANTLR start "rule__Constraint__Group_2_1__2__Impl"
12253 // InternalSolverLanguage.g:3941:1: rule__Constraint__Group_2_1__2__Impl : ( ( rule__Constraint__ParamsAssignment_2_1_2 ) ) ;
12254 public final void rule__Constraint__Group_2_1__2__Impl() throws RecognitionException {
12255
12256 int stackSize = keepStackSize();
12257
12258 try {
12259 // InternalSolverLanguage.g:3945:1: ( ( ( rule__Constraint__ParamsAssignment_2_1_2 ) ) )
12260 // InternalSolverLanguage.g:3946:1: ( ( rule__Constraint__ParamsAssignment_2_1_2 ) )
12261 {
12262 // InternalSolverLanguage.g:3946:1: ( ( rule__Constraint__ParamsAssignment_2_1_2 ) )
12263 // InternalSolverLanguage.g:3947:2: ( rule__Constraint__ParamsAssignment_2_1_2 )
12264 {
12265 before(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_2());
12266 // InternalSolverLanguage.g:3948:2: ( rule__Constraint__ParamsAssignment_2_1_2 )
12267 // InternalSolverLanguage.g:3948:3: rule__Constraint__ParamsAssignment_2_1_2
12268 {
12269 pushFollow(FOLLOW_2);
12270 rule__Constraint__ParamsAssignment_2_1_2();
12271
12272 state._fsp--;
12273
12274
12275 }
12276
12277 after(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_2());
12278
12279 }
12280
12281
12282 }
12283
12284 }
12285 catch (RecognitionException re) {
12286 reportError(re);
12287 recover(input,re);
12288 }
12289 finally {
12290
12291 restoreStackSize(stackSize);
12292
12293 }
12294 return ;
12295 }
12296 // $ANTLR end "rule__Constraint__Group_2_1__2__Impl"
12297
12298
12299 // $ANTLR start "rule__Constraint__Group_2_1__3"
12300 // InternalSolverLanguage.g:3956:1: rule__Constraint__Group_2_1__3 : rule__Constraint__Group_2_1__3__Impl rule__Constraint__Group_2_1__4 ;
12301 public final void rule__Constraint__Group_2_1__3() throws RecognitionException {
12302
12303 int stackSize = keepStackSize();
12304
12305 try {
12306 // InternalSolverLanguage.g:3960:1: ( rule__Constraint__Group_2_1__3__Impl rule__Constraint__Group_2_1__4 )
12307 // InternalSolverLanguage.g:3961:2: rule__Constraint__Group_2_1__3__Impl rule__Constraint__Group_2_1__4
12308 {
12309 pushFollow(FOLLOW_33);
12310 rule__Constraint__Group_2_1__3__Impl();
12311
12312 state._fsp--;
12313
12314 pushFollow(FOLLOW_2);
12315 rule__Constraint__Group_2_1__4();
12316
12317 state._fsp--;
12318
12319
12320 }
12321
12322 }
12323 catch (RecognitionException re) {
12324 reportError(re);
12325 recover(input,re);
12326 }
12327 finally {
12328
12329 restoreStackSize(stackSize);
12330
12331 }
12332 return ;
12333 }
12334 // $ANTLR end "rule__Constraint__Group_2_1__3"
12335
12336
12337 // $ANTLR start "rule__Constraint__Group_2_1__3__Impl"
12338 // InternalSolverLanguage.g:3968:1: rule__Constraint__Group_2_1__3__Impl : ( ( rule__Constraint__ParamsAssignment_2_1_3 ) ) ;
12339 public final void rule__Constraint__Group_2_1__3__Impl() throws RecognitionException {
12340
12341 int stackSize = keepStackSize();
12342
12343 try {
12344 // InternalSolverLanguage.g:3972:1: ( ( ( rule__Constraint__ParamsAssignment_2_1_3 ) ) )
12345 // InternalSolverLanguage.g:3973:1: ( ( rule__Constraint__ParamsAssignment_2_1_3 ) )
12346 {
12347 // InternalSolverLanguage.g:3973:1: ( ( rule__Constraint__ParamsAssignment_2_1_3 ) )
12348 // InternalSolverLanguage.g:3974:2: ( rule__Constraint__ParamsAssignment_2_1_3 )
12349 {
12350 before(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_3());
12351 // InternalSolverLanguage.g:3975:2: ( rule__Constraint__ParamsAssignment_2_1_3 )
12352 // InternalSolverLanguage.g:3975:3: rule__Constraint__ParamsAssignment_2_1_3
12353 {
12354 pushFollow(FOLLOW_2);
12355 rule__Constraint__ParamsAssignment_2_1_3();
12356
12357 state._fsp--;
12358
12359
12360 }
12361
12362 after(grammarAccess.getConstraintAccess().getParamsAssignment_2_1_3());
12363
12364 }
12365
12366
12367 }
12368
12369 }
12370 catch (RecognitionException re) {
12371 reportError(re);
12372 recover(input,re);
12373 }
12374 finally {
12375
12376 restoreStackSize(stackSize);
12377
12378 }
12379 return ;
12380 }
12381 // $ANTLR end "rule__Constraint__Group_2_1__3__Impl"
12382
12383
12384 // $ANTLR start "rule__Constraint__Group_2_1__4"
12385 // InternalSolverLanguage.g:3983:1: rule__Constraint__Group_2_1__4 : rule__Constraint__Group_2_1__4__Impl ;
12386 public final void rule__Constraint__Group_2_1__4() throws RecognitionException {
12387
12388 int stackSize = keepStackSize();
12389
12390 try {
12391 // InternalSolverLanguage.g:3987:1: ( rule__Constraint__Group_2_1__4__Impl )
12392 // InternalSolverLanguage.g:3988:2: rule__Constraint__Group_2_1__4__Impl
12393 {
12394 pushFollow(FOLLOW_2);
12395 rule__Constraint__Group_2_1__4__Impl();
12396
12397 state._fsp--;
12398
12399
12400 }
12401
12402 }
12403 catch (RecognitionException re) {
12404 reportError(re);
12405 recover(input,re);
12406 }
12407 finally {
12408
12409 restoreStackSize(stackSize);
12410
12411 }
12412 return ;
12413 }
12414 // $ANTLR end "rule__Constraint__Group_2_1__4"
12415
12416
12417 // $ANTLR start "rule__Constraint__Group_2_1__4__Impl"
12418 // InternalSolverLanguage.g:3994:1: rule__Constraint__Group_2_1__4__Impl : ( ')' ) ;
12419 public final void rule__Constraint__Group_2_1__4__Impl() throws RecognitionException {
12420
12421 int stackSize = keepStackSize();
12422
12423 try {
12424 // InternalSolverLanguage.g:3998:1: ( ( ')' ) )
12425 // InternalSolverLanguage.g:3999:1: ( ')' )
12426 {
12427 // InternalSolverLanguage.g:3999:1: ( ')' )
12428 // InternalSolverLanguage.g:4000:2: ')'
12429 {
12430 before(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_1_4());
12431 match(input,18,FOLLOW_2);
12432 after(grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_1_4());
12433
12434 }
12435
12436
12437 }
12438
12439 }
12440 catch (RecognitionException re) {
12441 reportError(re);
12442 recover(input,re);
12443 }
12444 finally {
12445
12446 restoreStackSize(stackSize);
12447
12448 }
12449 return ;
12450 }
12451 // $ANTLR end "rule__Constraint__Group_2_1__4__Impl"
12452
12453
12454 // $ANTLR start "rule__ClosureType__Group_0__0"
12455 // InternalSolverLanguage.g:4010:1: rule__ClosureType__Group_0__0 : rule__ClosureType__Group_0__0__Impl rule__ClosureType__Group_0__1 ;
12456 public final void rule__ClosureType__Group_0__0() throws RecognitionException {
12457
12458 int stackSize = keepStackSize();
12459
12460 try {
12461 // InternalSolverLanguage.g:4014:1: ( rule__ClosureType__Group_0__0__Impl rule__ClosureType__Group_0__1 )
12462 // InternalSolverLanguage.g:4015:2: rule__ClosureType__Group_0__0__Impl rule__ClosureType__Group_0__1
12463 {
12464 pushFollow(FOLLOW_34);
12465 rule__ClosureType__Group_0__0__Impl();
12466
12467 state._fsp--;
12468
12469 pushFollow(FOLLOW_2);
12470 rule__ClosureType__Group_0__1();
12471
12472 state._fsp--;
12473
12474
12475 }
12476
12477 }
12478 catch (RecognitionException re) {
12479 reportError(re);
12480 recover(input,re);
12481 }
12482 finally {
12483
12484 restoreStackSize(stackSize);
12485
12486 }
12487 return ;
12488 }
12489 // $ANTLR end "rule__ClosureType__Group_0__0"
12490
12491
12492 // $ANTLR start "rule__ClosureType__Group_0__0__Impl"
12493 // InternalSolverLanguage.g:4022:1: rule__ClosureType__Group_0__0__Impl : ( () ) ;
12494 public final void rule__ClosureType__Group_0__0__Impl() throws RecognitionException {
12495
12496 int stackSize = keepStackSize();
12497
12498 try {
12499 // InternalSolverLanguage.g:4026:1: ( ( () ) )
12500 // InternalSolverLanguage.g:4027:1: ( () )
12501 {
12502 // InternalSolverLanguage.g:4027:1: ( () )
12503 // InternalSolverLanguage.g:4028:2: ()
12504 {
12505 before(grammarAccess.getClosureTypeAccess().getReflexiveClosureAction_0_0());
12506 // InternalSolverLanguage.g:4029:2: ()
12507 // InternalSolverLanguage.g:4029:3:
12508 {
12509 }
12510
12511 after(grammarAccess.getClosureTypeAccess().getReflexiveClosureAction_0_0());
12512
12513 }
12514
12515
12516 }
12517
12518 }
12519 finally {
12520
12521 restoreStackSize(stackSize);
12522
12523 }
12524 return ;
12525 }
12526 // $ANTLR end "rule__ClosureType__Group_0__0__Impl"
12527
12528
12529 // $ANTLR start "rule__ClosureType__Group_0__1"
12530 // InternalSolverLanguage.g:4037:1: rule__ClosureType__Group_0__1 : rule__ClosureType__Group_0__1__Impl ;
12531 public final void rule__ClosureType__Group_0__1() throws RecognitionException {
12532
12533 int stackSize = keepStackSize();
12534
12535 try {
12536 // InternalSolverLanguage.g:4041:1: ( rule__ClosureType__Group_0__1__Impl )
12537 // InternalSolverLanguage.g:4042:2: rule__ClosureType__Group_0__1__Impl
12538 {
12539 pushFollow(FOLLOW_2);
12540 rule__ClosureType__Group_0__1__Impl();
12541
12542 state._fsp--;
12543
12544
12545 }
12546
12547 }
12548 catch (RecognitionException re) {
12549 reportError(re);
12550 recover(input,re);
12551 }
12552 finally {
12553
12554 restoreStackSize(stackSize);
12555
12556 }
12557 return ;
12558 }
12559 // $ANTLR end "rule__ClosureType__Group_0__1"
12560
12561
12562 // $ANTLR start "rule__ClosureType__Group_0__1__Impl"
12563 // InternalSolverLanguage.g:4048:1: rule__ClosureType__Group_0__1__Impl : ( '*' ) ;
12564 public final void rule__ClosureType__Group_0__1__Impl() throws RecognitionException {
12565
12566 int stackSize = keepStackSize();
12567
12568 try {
12569 // InternalSolverLanguage.g:4052:1: ( ( '*' ) )
12570 // InternalSolverLanguage.g:4053:1: ( '*' )
12571 {
12572 // InternalSolverLanguage.g:4053:1: ( '*' )
12573 // InternalSolverLanguage.g:4054:2: '*'
12574 {
12575 before(grammarAccess.getClosureTypeAccess().getAsteriskKeyword_0_1());
12576 match(input,30,FOLLOW_2);
12577 after(grammarAccess.getClosureTypeAccess().getAsteriskKeyword_0_1());
12578
12579 }
12580
12581
12582 }
12583
12584 }
12585 catch (RecognitionException re) {
12586 reportError(re);
12587 recover(input,re);
12588 }
12589 finally {
12590
12591 restoreStackSize(stackSize);
12592
12593 }
12594 return ;
12595 }
12596 // $ANTLR end "rule__ClosureType__Group_0__1__Impl"
12597
12598
12599 // $ANTLR start "rule__ClosureType__Group_1__0"
12600 // InternalSolverLanguage.g:4064:1: rule__ClosureType__Group_1__0 : rule__ClosureType__Group_1__0__Impl rule__ClosureType__Group_1__1 ;
12601 public final void rule__ClosureType__Group_1__0() throws RecognitionException {
12602
12603 int stackSize = keepStackSize();
12604
12605 try {
12606 // InternalSolverLanguage.g:4068:1: ( rule__ClosureType__Group_1__0__Impl rule__ClosureType__Group_1__1 )
12607 // InternalSolverLanguage.g:4069:2: rule__ClosureType__Group_1__0__Impl rule__ClosureType__Group_1__1
12608 {
12609 pushFollow(FOLLOW_29);
12610 rule__ClosureType__Group_1__0__Impl();
12611
12612 state._fsp--;
12613
12614 pushFollow(FOLLOW_2);
12615 rule__ClosureType__Group_1__1();
12616
12617 state._fsp--;
12618
12619
12620 }
12621
12622 }
12623 catch (RecognitionException re) {
12624 reportError(re);
12625 recover(input,re);
12626 }
12627 finally {
12628
12629 restoreStackSize(stackSize);
12630
12631 }
12632 return ;
12633 }
12634 // $ANTLR end "rule__ClosureType__Group_1__0"
12635
12636
12637 // $ANTLR start "rule__ClosureType__Group_1__0__Impl"
12638 // InternalSolverLanguage.g:4076:1: rule__ClosureType__Group_1__0__Impl : ( () ) ;
12639 public final void rule__ClosureType__Group_1__0__Impl() throws RecognitionException {
12640
12641 int stackSize = keepStackSize();
12642
12643 try {
12644 // InternalSolverLanguage.g:4080:1: ( ( () ) )
12645 // InternalSolverLanguage.g:4081:1: ( () )
12646 {
12647 // InternalSolverLanguage.g:4081:1: ( () )
12648 // InternalSolverLanguage.g:4082:2: ()
12649 {
12650 before(grammarAccess.getClosureTypeAccess().getIrreflexiveClosureAction_1_0());
12651 // InternalSolverLanguage.g:4083:2: ()
12652 // InternalSolverLanguage.g:4083:3:
12653 {
12654 }
12655
12656 after(grammarAccess.getClosureTypeAccess().getIrreflexiveClosureAction_1_0());
12657
12658 }
12659
12660
12661 }
12662
12663 }
12664 finally {
12665
12666 restoreStackSize(stackSize);
12667
12668 }
12669 return ;
12670 }
12671 // $ANTLR end "rule__ClosureType__Group_1__0__Impl"
12672
12673
12674 // $ANTLR start "rule__ClosureType__Group_1__1"
12675 // InternalSolverLanguage.g:4091:1: rule__ClosureType__Group_1__1 : rule__ClosureType__Group_1__1__Impl ;
12676 public final void rule__ClosureType__Group_1__1() throws RecognitionException {
12677
12678 int stackSize = keepStackSize();
12679
12680 try {
12681 // InternalSolverLanguage.g:4095:1: ( rule__ClosureType__Group_1__1__Impl )
12682 // InternalSolverLanguage.g:4096:2: rule__ClosureType__Group_1__1__Impl
12683 {
12684 pushFollow(FOLLOW_2);
12685 rule__ClosureType__Group_1__1__Impl();
12686
12687 state._fsp--;
12688
12689
12690 }
12691
12692 }
12693 catch (RecognitionException re) {
12694 reportError(re);
12695 recover(input,re);
12696 }
12697 finally {
12698
12699 restoreStackSize(stackSize);
12700
12701 }
12702 return ;
12703 }
12704 // $ANTLR end "rule__ClosureType__Group_1__1"
12705
12706
12707 // $ANTLR start "rule__ClosureType__Group_1__1__Impl"
12708 // InternalSolverLanguage.g:4102:1: rule__ClosureType__Group_1__1__Impl : ( '+' ) ;
12709 public final void rule__ClosureType__Group_1__1__Impl() throws RecognitionException {
12710
12711 int stackSize = keepStackSize();
12712
12713 try {
12714 // InternalSolverLanguage.g:4106:1: ( ( '+' ) )
12715 // InternalSolverLanguage.g:4107:1: ( '+' )
12716 {
12717 // InternalSolverLanguage.g:4107:1: ( '+' )
12718 // InternalSolverLanguage.g:4108:2: '+'
12719 {
12720 before(grammarAccess.getClosureTypeAccess().getPlusSignKeyword_1_1());
12721 match(input,29,FOLLOW_2);
12722 after(grammarAccess.getClosureTypeAccess().getPlusSignKeyword_1_1());
12723
12724 }
12725
12726
12727 }
12728
12729 }
12730 catch (RecognitionException re) {
12731 reportError(re);
12732 recover(input,re);
12733 }
12734 finally {
12735
12736 restoreStackSize(stackSize);
12737
12738 }
12739 return ;
12740 }
12741 // $ANTLR end "rule__ClosureType__Group_1__1__Impl"
12742
12743
12744 // $ANTLR start "rule__AllInstances__Group__0"
12745 // InternalSolverLanguage.g:4118:1: rule__AllInstances__Group__0 : rule__AllInstances__Group__0__Impl rule__AllInstances__Group__1 ;
12746 public final void rule__AllInstances__Group__0() throws RecognitionException {
12747
12748 int stackSize = keepStackSize();
12749
12750 try {
12751 // InternalSolverLanguage.g:4122:1: ( rule__AllInstances__Group__0__Impl rule__AllInstances__Group__1 )
12752 // InternalSolverLanguage.g:4123:2: rule__AllInstances__Group__0__Impl rule__AllInstances__Group__1
12753 {
12754 pushFollow(FOLLOW_25);
12755 rule__AllInstances__Group__0__Impl();
12756
12757 state._fsp--;
12758
12759 pushFollow(FOLLOW_2);
12760 rule__AllInstances__Group__1();
12761
12762 state._fsp--;
12763
12764
12765 }
12766
12767 }
12768 catch (RecognitionException re) {
12769 reportError(re);
12770 recover(input,re);
12771 }
12772 finally {
12773
12774 restoreStackSize(stackSize);
12775
12776 }
12777 return ;
12778 }
12779 // $ANTLR end "rule__AllInstances__Group__0"
12780
12781
12782 // $ANTLR start "rule__AllInstances__Group__0__Impl"
12783 // InternalSolverLanguage.g:4130:1: rule__AllInstances__Group__0__Impl : ( ':' ) ;
12784 public final void rule__AllInstances__Group__0__Impl() throws RecognitionException {
12785
12786 int stackSize = keepStackSize();
12787
12788 try {
12789 // InternalSolverLanguage.g:4134:1: ( ( ':' ) )
12790 // InternalSolverLanguage.g:4135:1: ( ':' )
12791 {
12792 // InternalSolverLanguage.g:4135:1: ( ':' )
12793 // InternalSolverLanguage.g:4136:2: ':'
12794 {
12795 before(grammarAccess.getAllInstancesAccess().getColonKeyword_0());
12796 match(input,19,FOLLOW_2);
12797 after(grammarAccess.getAllInstancesAccess().getColonKeyword_0());
12798
12799 }
12800
12801
12802 }
12803
12804 }
12805 catch (RecognitionException re) {
12806 reportError(re);
12807 recover(input,re);
12808 }
12809 finally {
12810
12811 restoreStackSize(stackSize);
12812
12813 }
12814 return ;
12815 }
12816 // $ANTLR end "rule__AllInstances__Group__0__Impl"
12817
12818
12819 // $ANTLR start "rule__AllInstances__Group__1"
12820 // InternalSolverLanguage.g:4145:1: rule__AllInstances__Group__1 : rule__AllInstances__Group__1__Impl ;
12821 public final void rule__AllInstances__Group__1() throws RecognitionException {
12822
12823 int stackSize = keepStackSize();
12824
12825 try {
12826 // InternalSolverLanguage.g:4149:1: ( rule__AllInstances__Group__1__Impl )
12827 // InternalSolverLanguage.g:4150:2: rule__AllInstances__Group__1__Impl
12828 {
12829 pushFollow(FOLLOW_2);
12830 rule__AllInstances__Group__1__Impl();
12831
12832 state._fsp--;
12833
12834
12835 }
12836
12837 }
12838 catch (RecognitionException re) {
12839 reportError(re);
12840 recover(input,re);
12841 }
12842 finally {
12843
12844 restoreStackSize(stackSize);
12845
12846 }
12847 return ;
12848 }
12849 // $ANTLR end "rule__AllInstances__Group__1"
12850
12851
12852 // $ANTLR start "rule__AllInstances__Group__1__Impl"
12853 // InternalSolverLanguage.g:4156:1: rule__AllInstances__Group__1__Impl : ( ( rule__AllInstances__SymbolAssignment_1 ) ) ;
12854 public final void rule__AllInstances__Group__1__Impl() throws RecognitionException {
12855
12856 int stackSize = keepStackSize();
12857
12858 try {
12859 // InternalSolverLanguage.g:4160:1: ( ( ( rule__AllInstances__SymbolAssignment_1 ) ) )
12860 // InternalSolverLanguage.g:4161:1: ( ( rule__AllInstances__SymbolAssignment_1 ) )
12861 {
12862 // InternalSolverLanguage.g:4161:1: ( ( rule__AllInstances__SymbolAssignment_1 ) )
12863 // InternalSolverLanguage.g:4162:2: ( rule__AllInstances__SymbolAssignment_1 )
12864 {
12865 before(grammarAccess.getAllInstancesAccess().getSymbolAssignment_1());
12866 // InternalSolverLanguage.g:4163:2: ( rule__AllInstances__SymbolAssignment_1 )
12867 // InternalSolverLanguage.g:4163:3: rule__AllInstances__SymbolAssignment_1
12868 {
12869 pushFollow(FOLLOW_2);
12870 rule__AllInstances__SymbolAssignment_1();
12871
12872 state._fsp--;
12873
12874
12875 }
12876
12877 after(grammarAccess.getAllInstancesAccess().getSymbolAssignment_1());
12878
12879 }
12880
12881
12882 }
12883
12884 }
12885 catch (RecognitionException re) {
12886 reportError(re);
12887 recover(input,re);
12888 }
12889 finally {
12890
12891 restoreStackSize(stackSize);
12892
12893 }
12894 return ;
12895 }
12896 // $ANTLR end "rule__AllInstances__Group__1__Impl"
12897
12898
12899 // $ANTLR start "rule__AllObjects__Group__0"
12900 // InternalSolverLanguage.g:4172:1: rule__AllObjects__Group__0 : rule__AllObjects__Group__0__Impl rule__AllObjects__Group__1 ;
12901 public final void rule__AllObjects__Group__0() throws RecognitionException {
12902
12903 int stackSize = keepStackSize();
12904
12905 try {
12906 // InternalSolverLanguage.g:4176:1: ( rule__AllObjects__Group__0__Impl rule__AllObjects__Group__1 )
12907 // InternalSolverLanguage.g:4177:2: rule__AllObjects__Group__0__Impl rule__AllObjects__Group__1
12908 {
12909 pushFollow(FOLLOW_35);
12910 rule__AllObjects__Group__0__Impl();
12911
12912 state._fsp--;
12913
12914 pushFollow(FOLLOW_2);
12915 rule__AllObjects__Group__1();
12916
12917 state._fsp--;
12918
12919
12920 }
12921
12922 }
12923 catch (RecognitionException re) {
12924 reportError(re);
12925 recover(input,re);
12926 }
12927 finally {
12928
12929 restoreStackSize(stackSize);
12930
12931 }
12932 return ;
12933 }
12934 // $ANTLR end "rule__AllObjects__Group__0"
12935
12936
12937 // $ANTLR start "rule__AllObjects__Group__0__Impl"
12938 // InternalSolverLanguage.g:4184:1: rule__AllObjects__Group__0__Impl : ( () ) ;
12939 public final void rule__AllObjects__Group__0__Impl() throws RecognitionException {
12940
12941 int stackSize = keepStackSize();
12942
12943 try {
12944 // InternalSolverLanguage.g:4188:1: ( ( () ) )
12945 // InternalSolverLanguage.g:4189:1: ( () )
12946 {
12947 // InternalSolverLanguage.g:4189:1: ( () )
12948 // InternalSolverLanguage.g:4190:2: ()
12949 {
12950 before(grammarAccess.getAllObjectsAccess().getAllObjectsAction_0());
12951 // InternalSolverLanguage.g:4191:2: ()
12952 // InternalSolverLanguage.g:4191:3:
12953 {
12954 }
12955
12956 after(grammarAccess.getAllObjectsAccess().getAllObjectsAction_0());
12957
12958 }
12959
12960
12961 }
12962
12963 }
12964 finally {
12965
12966 restoreStackSize(stackSize);
12967
12968 }
12969 return ;
12970 }
12971 // $ANTLR end "rule__AllObjects__Group__0__Impl"
12972
12973
12974 // $ANTLR start "rule__AllObjects__Group__1"
12975 // InternalSolverLanguage.g:4199:1: rule__AllObjects__Group__1 : rule__AllObjects__Group__1__Impl ;
12976 public final void rule__AllObjects__Group__1() throws RecognitionException {
12977
12978 int stackSize = keepStackSize();
12979
12980 try {
12981 // InternalSolverLanguage.g:4203:1: ( rule__AllObjects__Group__1__Impl )
12982 // InternalSolverLanguage.g:4204:2: rule__AllObjects__Group__1__Impl
12983 {
12984 pushFollow(FOLLOW_2);
12985 rule__AllObjects__Group__1__Impl();
12986
12987 state._fsp--;
12988
12989
12990 }
12991
12992 }
12993 catch (RecognitionException re) {
12994 reportError(re);
12995 recover(input,re);
12996 }
12997 finally {
12998
12999 restoreStackSize(stackSize);
13000
13001 }
13002 return ;
13003 }
13004 // $ANTLR end "rule__AllObjects__Group__1"
13005
13006
13007 // $ANTLR start "rule__AllObjects__Group__1__Impl"
13008 // InternalSolverLanguage.g:4210:1: rule__AllObjects__Group__1__Impl : ( '*' ) ;
13009 public final void rule__AllObjects__Group__1__Impl() throws RecognitionException {
13010
13011 int stackSize = keepStackSize();
13012
13013 try {
13014 // InternalSolverLanguage.g:4214:1: ( ( '*' ) )
13015 // InternalSolverLanguage.g:4215:1: ( '*' )
13016 {
13017 // InternalSolverLanguage.g:4215:1: ( '*' )
13018 // InternalSolverLanguage.g:4216:2: '*'
13019 {
13020 before(grammarAccess.getAllObjectsAccess().getAsteriskKeyword_1());
13021 match(input,30,FOLLOW_2);
13022 after(grammarAccess.getAllObjectsAccess().getAsteriskKeyword_1());
13023
13024 }
13025
13026
13027 }
13028
13029 }
13030 catch (RecognitionException re) {
13031 reportError(re);
13032 recover(input,re);
13033 }
13034 finally {
13035
13036 restoreStackSize(stackSize);
13037
13038 }
13039 return ;
13040 }
13041 // $ANTLR end "rule__AllObjects__Group__1__Impl"
13042
13043
13044 // $ANTLR start "rule__DefaultInterpretation__Group__0"
13045 // InternalSolverLanguage.g:4226:1: rule__DefaultInterpretation__Group__0 : rule__DefaultInterpretation__Group__0__Impl rule__DefaultInterpretation__Group__1 ;
13046 public final void rule__DefaultInterpretation__Group__0() throws RecognitionException {
13047
13048 int stackSize = keepStackSize();
13049
13050 try {
13051 // InternalSolverLanguage.g:4230:1: ( rule__DefaultInterpretation__Group__0__Impl rule__DefaultInterpretation__Group__1 )
13052 // InternalSolverLanguage.g:4231:2: rule__DefaultInterpretation__Group__0__Impl rule__DefaultInterpretation__Group__1
13053 {
13054 pushFollow(FOLLOW_25);
13055 rule__DefaultInterpretation__Group__0__Impl();
13056
13057 state._fsp--;
13058
13059 pushFollow(FOLLOW_2);
13060 rule__DefaultInterpretation__Group__1();
13061
13062 state._fsp--;
13063
13064
13065 }
13066
13067 }
13068 catch (RecognitionException re) {
13069 reportError(re);
13070 recover(input,re);
13071 }
13072 finally {
13073
13074 restoreStackSize(stackSize);
13075
13076 }
13077 return ;
13078 }
13079 // $ANTLR end "rule__DefaultInterpretation__Group__0"
13080
13081
13082 // $ANTLR start "rule__DefaultInterpretation__Group__0__Impl"
13083 // InternalSolverLanguage.g:4238:1: rule__DefaultInterpretation__Group__0__Impl : ( 'default' ) ;
13084 public final void rule__DefaultInterpretation__Group__0__Impl() throws RecognitionException {
13085
13086 int stackSize = keepStackSize();
13087
13088 try {
13089 // InternalSolverLanguage.g:4242:1: ( ( 'default' ) )
13090 // InternalSolverLanguage.g:4243:1: ( 'default' )
13091 {
13092 // InternalSolverLanguage.g:4243:1: ( 'default' )
13093 // InternalSolverLanguage.g:4244:2: 'default'
13094 {
13095 before(grammarAccess.getDefaultInterpretationAccess().getDefaultKeyword_0());
13096 match(input,31,FOLLOW_2);
13097 after(grammarAccess.getDefaultInterpretationAccess().getDefaultKeyword_0());
13098
13099 }
13100
13101
13102 }
13103
13104 }
13105 catch (RecognitionException re) {
13106 reportError(re);
13107 recover(input,re);
13108 }
13109 finally {
13110
13111 restoreStackSize(stackSize);
13112
13113 }
13114 return ;
13115 }
13116 // $ANTLR end "rule__DefaultInterpretation__Group__0__Impl"
13117
13118
13119 // $ANTLR start "rule__DefaultInterpretation__Group__1"
13120 // InternalSolverLanguage.g:4253:1: rule__DefaultInterpretation__Group__1 : rule__DefaultInterpretation__Group__1__Impl ;
13121 public final void rule__DefaultInterpretation__Group__1() throws RecognitionException {
13122
13123 int stackSize = keepStackSize();
13124
13125 try {
13126 // InternalSolverLanguage.g:4257:1: ( rule__DefaultInterpretation__Group__1__Impl )
13127 // InternalSolverLanguage.g:4258:2: rule__DefaultInterpretation__Group__1__Impl
13128 {
13129 pushFollow(FOLLOW_2);
13130 rule__DefaultInterpretation__Group__1__Impl();
13131
13132 state._fsp--;
13133
13134
13135 }
13136
13137 }
13138 catch (RecognitionException re) {
13139 reportError(re);
13140 recover(input,re);
13141 }
13142 finally {
13143
13144 restoreStackSize(stackSize);
13145
13146 }
13147 return ;
13148 }
13149 // $ANTLR end "rule__DefaultInterpretation__Group__1"
13150
13151
13152 // $ANTLR start "rule__DefaultInterpretation__Group__1__Impl"
13153 // InternalSolverLanguage.g:4264:1: rule__DefaultInterpretation__Group__1__Impl : ( ( rule__DefaultInterpretation__InterpretationAssignment_1 ) ) ;
13154 public final void rule__DefaultInterpretation__Group__1__Impl() throws RecognitionException {
13155
13156 int stackSize = keepStackSize();
13157
13158 try {
13159 // InternalSolverLanguage.g:4268:1: ( ( ( rule__DefaultInterpretation__InterpretationAssignment_1 ) ) )
13160 // InternalSolverLanguage.g:4269:1: ( ( rule__DefaultInterpretation__InterpretationAssignment_1 ) )
13161 {
13162 // InternalSolverLanguage.g:4269:1: ( ( rule__DefaultInterpretation__InterpretationAssignment_1 ) )
13163 // InternalSolverLanguage.g:4270:2: ( rule__DefaultInterpretation__InterpretationAssignment_1 )
13164 {
13165 before(grammarAccess.getDefaultInterpretationAccess().getInterpretationAssignment_1());
13166 // InternalSolverLanguage.g:4271:2: ( rule__DefaultInterpretation__InterpretationAssignment_1 )
13167 // InternalSolverLanguage.g:4271:3: rule__DefaultInterpretation__InterpretationAssignment_1
13168 {
13169 pushFollow(FOLLOW_2);
13170 rule__DefaultInterpretation__InterpretationAssignment_1();
13171
13172 state._fsp--;
13173
13174
13175 }
13176
13177 after(grammarAccess.getDefaultInterpretationAccess().getInterpretationAssignment_1());
13178
13179 }
13180
13181
13182 }
13183
13184 }
13185 catch (RecognitionException re) {
13186 reportError(re);
13187 recover(input,re);
13188 }
13189 finally {
13190
13191 restoreStackSize(stackSize);
13192
13193 }
13194 return ;
13195 }
13196 // $ANTLR end "rule__DefaultInterpretation__Group__1__Impl"
13197
13198
13199 // $ANTLR start "rule__ClassInterpretation__Group__0"
13200 // InternalSolverLanguage.g:4280:1: rule__ClassInterpretation__Group__0 : rule__ClassInterpretation__Group__0__Impl rule__ClassInterpretation__Group__1 ;
13201 public final void rule__ClassInterpretation__Group__0() throws RecognitionException {
13202
13203 int stackSize = keepStackSize();
13204
13205 try {
13206 // InternalSolverLanguage.g:4284:1: ( rule__ClassInterpretation__Group__0__Impl rule__ClassInterpretation__Group__1 )
13207 // InternalSolverLanguage.g:4285:2: rule__ClassInterpretation__Group__0__Impl rule__ClassInterpretation__Group__1
13208 {
13209 pushFollow(FOLLOW_36);
13210 rule__ClassInterpretation__Group__0__Impl();
13211
13212 state._fsp--;
13213
13214 pushFollow(FOLLOW_2);
13215 rule__ClassInterpretation__Group__1();
13216
13217 state._fsp--;
13218
13219
13220 }
13221
13222 }
13223 catch (RecognitionException re) {
13224 reportError(re);
13225 recover(input,re);
13226 }
13227 finally {
13228
13229 restoreStackSize(stackSize);
13230
13231 }
13232 return ;
13233 }
13234 // $ANTLR end "rule__ClassInterpretation__Group__0"
13235
13236
13237 // $ANTLR start "rule__ClassInterpretation__Group__0__Impl"
13238 // InternalSolverLanguage.g:4292:1: rule__ClassInterpretation__Group__0__Impl : ( ( rule__ClassInterpretation__AbstractAssignment_0 ) ) ;
13239 public final void rule__ClassInterpretation__Group__0__Impl() throws RecognitionException {
13240
13241 int stackSize = keepStackSize();
13242
13243 try {
13244 // InternalSolverLanguage.g:4296:1: ( ( ( rule__ClassInterpretation__AbstractAssignment_0 ) ) )
13245 // InternalSolverLanguage.g:4297:1: ( ( rule__ClassInterpretation__AbstractAssignment_0 ) )
13246 {
13247 // InternalSolverLanguage.g:4297:1: ( ( rule__ClassInterpretation__AbstractAssignment_0 ) )
13248 // InternalSolverLanguage.g:4298:2: ( rule__ClassInterpretation__AbstractAssignment_0 )
13249 {
13250 before(grammarAccess.getClassInterpretationAccess().getAbstractAssignment_0());
13251 // InternalSolverLanguage.g:4299:2: ( rule__ClassInterpretation__AbstractAssignment_0 )
13252 // InternalSolverLanguage.g:4299:3: rule__ClassInterpretation__AbstractAssignment_0
13253 {
13254 pushFollow(FOLLOW_2);
13255 rule__ClassInterpretation__AbstractAssignment_0();
13256
13257 state._fsp--;
13258
13259
13260 }
13261
13262 after(grammarAccess.getClassInterpretationAccess().getAbstractAssignment_0());
13263
13264 }
13265
13266
13267 }
13268
13269 }
13270 catch (RecognitionException re) {
13271 reportError(re);
13272 recover(input,re);
13273 }
13274 finally {
13275
13276 restoreStackSize(stackSize);
13277
13278 }
13279 return ;
13280 }
13281 // $ANTLR end "rule__ClassInterpretation__Group__0__Impl"
13282
13283
13284 // $ANTLR start "rule__ClassInterpretation__Group__1"
13285 // InternalSolverLanguage.g:4307:1: rule__ClassInterpretation__Group__1 : rule__ClassInterpretation__Group__1__Impl rule__ClassInterpretation__Group__2 ;
13286 public final void rule__ClassInterpretation__Group__1() throws RecognitionException {
13287
13288 int stackSize = keepStackSize();
13289
13290 try {
13291 // InternalSolverLanguage.g:4311:1: ( rule__ClassInterpretation__Group__1__Impl rule__ClassInterpretation__Group__2 )
13292 // InternalSolverLanguage.g:4312:2: rule__ClassInterpretation__Group__1__Impl rule__ClassInterpretation__Group__2
13293 {
13294 pushFollow(FOLLOW_16);
13295 rule__ClassInterpretation__Group__1__Impl();
13296
13297 state._fsp--;
13298
13299 pushFollow(FOLLOW_2);
13300 rule__ClassInterpretation__Group__2();
13301
13302 state._fsp--;
13303
13304
13305 }
13306
13307 }
13308 catch (RecognitionException re) {
13309 reportError(re);
13310 recover(input,re);
13311 }
13312 finally {
13313
13314 restoreStackSize(stackSize);
13315
13316 }
13317 return ;
13318 }
13319 // $ANTLR end "rule__ClassInterpretation__Group__1"
13320
13321
13322 // $ANTLR start "rule__ClassInterpretation__Group__1__Impl"
13323 // InternalSolverLanguage.g:4319:1: rule__ClassInterpretation__Group__1__Impl : ( 'class' ) ;
13324 public final void rule__ClassInterpretation__Group__1__Impl() throws RecognitionException {
13325
13326 int stackSize = keepStackSize();
13327
13328 try {
13329 // InternalSolverLanguage.g:4323:1: ( ( 'class' ) )
13330 // InternalSolverLanguage.g:4324:1: ( 'class' )
13331 {
13332 // InternalSolverLanguage.g:4324:1: ( 'class' )
13333 // InternalSolverLanguage.g:4325:2: 'class'
13334 {
13335 before(grammarAccess.getClassInterpretationAccess().getClassKeyword_1());
13336 match(input,32,FOLLOW_2);
13337 after(grammarAccess.getClassInterpretationAccess().getClassKeyword_1());
13338
13339 }
13340
13341
13342 }
13343
13344 }
13345 catch (RecognitionException re) {
13346 reportError(re);
13347 recover(input,re);
13348 }
13349 finally {
13350
13351 restoreStackSize(stackSize);
13352
13353 }
13354 return ;
13355 }
13356 // $ANTLR end "rule__ClassInterpretation__Group__1__Impl"
13357
13358
13359 // $ANTLR start "rule__ClassInterpretation__Group__2"
13360 // InternalSolverLanguage.g:4334:1: rule__ClassInterpretation__Group__2 : rule__ClassInterpretation__Group__2__Impl rule__ClassInterpretation__Group__3 ;
13361 public final void rule__ClassInterpretation__Group__2() throws RecognitionException {
13362
13363 int stackSize = keepStackSize();
13364
13365 try {
13366 // InternalSolverLanguage.g:4338:1: ( rule__ClassInterpretation__Group__2__Impl rule__ClassInterpretation__Group__3 )
13367 // InternalSolverLanguage.g:4339:2: rule__ClassInterpretation__Group__2__Impl rule__ClassInterpretation__Group__3
13368 {
13369 pushFollow(FOLLOW_37);
13370 rule__ClassInterpretation__Group__2__Impl();
13371
13372 state._fsp--;
13373
13374 pushFollow(FOLLOW_2);
13375 rule__ClassInterpretation__Group__3();
13376
13377 state._fsp--;
13378
13379
13380 }
13381
13382 }
13383 catch (RecognitionException re) {
13384 reportError(re);
13385 recover(input,re);
13386 }
13387 finally {
13388
13389 restoreStackSize(stackSize);
13390
13391 }
13392 return ;
13393 }
13394 // $ANTLR end "rule__ClassInterpretation__Group__2"
13395
13396
13397 // $ANTLR start "rule__ClassInterpretation__Group__2__Impl"
13398 // InternalSolverLanguage.g:4346:1: rule__ClassInterpretation__Group__2__Impl : ( ( rule__ClassInterpretation__SymbolAssignment_2 ) ) ;
13399 public final void rule__ClassInterpretation__Group__2__Impl() throws RecognitionException {
13400
13401 int stackSize = keepStackSize();
13402
13403 try {
13404 // InternalSolverLanguage.g:4350:1: ( ( ( rule__ClassInterpretation__SymbolAssignment_2 ) ) )
13405 // InternalSolverLanguage.g:4351:1: ( ( rule__ClassInterpretation__SymbolAssignment_2 ) )
13406 {
13407 // InternalSolverLanguage.g:4351:1: ( ( rule__ClassInterpretation__SymbolAssignment_2 ) )
13408 // InternalSolverLanguage.g:4352:2: ( rule__ClassInterpretation__SymbolAssignment_2 )
13409 {
13410 before(grammarAccess.getClassInterpretationAccess().getSymbolAssignment_2());
13411 // InternalSolverLanguage.g:4353:2: ( rule__ClassInterpretation__SymbolAssignment_2 )
13412 // InternalSolverLanguage.g:4353:3: rule__ClassInterpretation__SymbolAssignment_2
13413 {
13414 pushFollow(FOLLOW_2);
13415 rule__ClassInterpretation__SymbolAssignment_2();
13416
13417 state._fsp--;
13418
13419
13420 }
13421
13422 after(grammarAccess.getClassInterpretationAccess().getSymbolAssignment_2());
13423
13424 }
13425
13426
13427 }
13428
13429 }
13430 catch (RecognitionException re) {
13431 reportError(re);
13432 recover(input,re);
13433 }
13434 finally {
13435
13436 restoreStackSize(stackSize);
13437
13438 }
13439 return ;
13440 }
13441 // $ANTLR end "rule__ClassInterpretation__Group__2__Impl"
13442
13443
13444 // $ANTLR start "rule__ClassInterpretation__Group__3"
13445 // InternalSolverLanguage.g:4361:1: rule__ClassInterpretation__Group__3 : rule__ClassInterpretation__Group__3__Impl rule__ClassInterpretation__Group__4 ;
13446 public final void rule__ClassInterpretation__Group__3() throws RecognitionException {
13447
13448 int stackSize = keepStackSize();
13449
13450 try {
13451 // InternalSolverLanguage.g:4365:1: ( rule__ClassInterpretation__Group__3__Impl rule__ClassInterpretation__Group__4 )
13452 // InternalSolverLanguage.g:4366:2: rule__ClassInterpretation__Group__3__Impl rule__ClassInterpretation__Group__4
13453 {
13454 pushFollow(FOLLOW_37);
13455 rule__ClassInterpretation__Group__3__Impl();
13456
13457 state._fsp--;
13458
13459 pushFollow(FOLLOW_2);
13460 rule__ClassInterpretation__Group__4();
13461
13462 state._fsp--;
13463
13464
13465 }
13466
13467 }
13468 catch (RecognitionException re) {
13469 reportError(re);
13470 recover(input,re);
13471 }
13472 finally {
13473
13474 restoreStackSize(stackSize);
13475
13476 }
13477 return ;
13478 }
13479 // $ANTLR end "rule__ClassInterpretation__Group__3"
13480
13481
13482 // $ANTLR start "rule__ClassInterpretation__Group__3__Impl"
13483 // InternalSolverLanguage.g:4373:1: rule__ClassInterpretation__Group__3__Impl : ( ( rule__ClassInterpretation__Group_3__0 )? ) ;
13484 public final void rule__ClassInterpretation__Group__3__Impl() throws RecognitionException {
13485
13486 int stackSize = keepStackSize();
13487
13488 try {
13489 // InternalSolverLanguage.g:4377:1: ( ( ( rule__ClassInterpretation__Group_3__0 )? ) )
13490 // InternalSolverLanguage.g:4378:1: ( ( rule__ClassInterpretation__Group_3__0 )? )
13491 {
13492 // InternalSolverLanguage.g:4378:1: ( ( rule__ClassInterpretation__Group_3__0 )? )
13493 // InternalSolverLanguage.g:4379:2: ( rule__ClassInterpretation__Group_3__0 )?
13494 {
13495 before(grammarAccess.getClassInterpretationAccess().getGroup_3());
13496 // InternalSolverLanguage.g:4380:2: ( rule__ClassInterpretation__Group_3__0 )?
13497 int alt34=2;
13498 int LA34_0 = input.LA(1);
13499
13500 if ( (LA34_0==35) ) {
13501 alt34=1;
13502 }
13503 switch (alt34) {
13504 case 1 :
13505 // InternalSolverLanguage.g:4380:3: rule__ClassInterpretation__Group_3__0
13506 {
13507 pushFollow(FOLLOW_2);
13508 rule__ClassInterpretation__Group_3__0();
13509
13510 state._fsp--;
13511
13512
13513 }
13514 break;
13515
13516 }
13517
13518 after(grammarAccess.getClassInterpretationAccess().getGroup_3());
13519
13520 }
13521
13522
13523 }
13524
13525 }
13526 catch (RecognitionException re) {
13527 reportError(re);
13528 recover(input,re);
13529 }
13530 finally {
13531
13532 restoreStackSize(stackSize);
13533
13534 }
13535 return ;
13536 }
13537 // $ANTLR end "rule__ClassInterpretation__Group__3__Impl"
13538
13539
13540 // $ANTLR start "rule__ClassInterpretation__Group__4"
13541 // InternalSolverLanguage.g:4388:1: rule__ClassInterpretation__Group__4 : rule__ClassInterpretation__Group__4__Impl rule__ClassInterpretation__Group__5 ;
13542 public final void rule__ClassInterpretation__Group__4() throws RecognitionException {
13543
13544 int stackSize = keepStackSize();
13545
13546 try {
13547 // InternalSolverLanguage.g:4392:1: ( rule__ClassInterpretation__Group__4__Impl rule__ClassInterpretation__Group__5 )
13548 // InternalSolverLanguage.g:4393:2: rule__ClassInterpretation__Group__4__Impl rule__ClassInterpretation__Group__5
13549 {
13550 pushFollow(FOLLOW_38);
13551 rule__ClassInterpretation__Group__4__Impl();
13552
13553 state._fsp--;
13554
13555 pushFollow(FOLLOW_2);
13556 rule__ClassInterpretation__Group__5();
13557
13558 state._fsp--;
13559
13560
13561 }
13562
13563 }
13564 catch (RecognitionException re) {
13565 reportError(re);
13566 recover(input,re);
13567 }
13568 finally {
13569
13570 restoreStackSize(stackSize);
13571
13572 }
13573 return ;
13574 }
13575 // $ANTLR end "rule__ClassInterpretation__Group__4"
13576
13577
13578 // $ANTLR start "rule__ClassInterpretation__Group__4__Impl"
13579 // InternalSolverLanguage.g:4400:1: rule__ClassInterpretation__Group__4__Impl : ( '{' ) ;
13580 public final void rule__ClassInterpretation__Group__4__Impl() throws RecognitionException {
13581
13582 int stackSize = keepStackSize();
13583
13584 try {
13585 // InternalSolverLanguage.g:4404:1: ( ( '{' ) )
13586 // InternalSolverLanguage.g:4405:1: ( '{' )
13587 {
13588 // InternalSolverLanguage.g:4405:1: ( '{' )
13589 // InternalSolverLanguage.g:4406:2: '{'
13590 {
13591 before(grammarAccess.getClassInterpretationAccess().getLeftCurlyBracketKeyword_4());
13592 match(input,33,FOLLOW_2);
13593 after(grammarAccess.getClassInterpretationAccess().getLeftCurlyBracketKeyword_4());
13594
13595 }
13596
13597
13598 }
13599
13600 }
13601 catch (RecognitionException re) {
13602 reportError(re);
13603 recover(input,re);
13604 }
13605 finally {
13606
13607 restoreStackSize(stackSize);
13608
13609 }
13610 return ;
13611 }
13612 // $ANTLR end "rule__ClassInterpretation__Group__4__Impl"
13613
13614
13615 // $ANTLR start "rule__ClassInterpretation__Group__5"
13616 // InternalSolverLanguage.g:4415:1: rule__ClassInterpretation__Group__5 : rule__ClassInterpretation__Group__5__Impl rule__ClassInterpretation__Group__6 ;
13617 public final void rule__ClassInterpretation__Group__5() throws RecognitionException {
13618
13619 int stackSize = keepStackSize();
13620
13621 try {
13622 // InternalSolverLanguage.g:4419:1: ( rule__ClassInterpretation__Group__5__Impl rule__ClassInterpretation__Group__6 )
13623 // InternalSolverLanguage.g:4420:2: rule__ClassInterpretation__Group__5__Impl rule__ClassInterpretation__Group__6
13624 {
13625 pushFollow(FOLLOW_38);
13626 rule__ClassInterpretation__Group__5__Impl();
13627
13628 state._fsp--;
13629
13630 pushFollow(FOLLOW_2);
13631 rule__ClassInterpretation__Group__6();
13632
13633 state._fsp--;
13634
13635
13636 }
13637
13638 }
13639 catch (RecognitionException re) {
13640 reportError(re);
13641 recover(input,re);
13642 }
13643 finally {
13644
13645 restoreStackSize(stackSize);
13646
13647 }
13648 return ;
13649 }
13650 // $ANTLR end "rule__ClassInterpretation__Group__5"
13651
13652
13653 // $ANTLR start "rule__ClassInterpretation__Group__5__Impl"
13654 // InternalSolverLanguage.g:4427:1: rule__ClassInterpretation__Group__5__Impl : ( ( rule__ClassInterpretation__FieltAssignment_5 )* ) ;
13655 public final void rule__ClassInterpretation__Group__5__Impl() throws RecognitionException {
13656
13657 int stackSize = keepStackSize();
13658
13659 try {
13660 // InternalSolverLanguage.g:4431:1: ( ( ( rule__ClassInterpretation__FieltAssignment_5 )* ) )
13661 // InternalSolverLanguage.g:4432:1: ( ( rule__ClassInterpretation__FieltAssignment_5 )* )
13662 {
13663 // InternalSolverLanguage.g:4432:1: ( ( rule__ClassInterpretation__FieltAssignment_5 )* )
13664 // InternalSolverLanguage.g:4433:2: ( rule__ClassInterpretation__FieltAssignment_5 )*
13665 {
13666 before(grammarAccess.getClassInterpretationAccess().getFieltAssignment_5());
13667 // InternalSolverLanguage.g:4434:2: ( rule__ClassInterpretation__FieltAssignment_5 )*
13668 loop35:
13669 do {
13670 int alt35=2;
13671 int LA35_0 = input.LA(1);
13672
13673 if ( (LA35_0==40) ) {
13674 alt35=1;
13675 }
13676
13677
13678 switch (alt35) {
13679 case 1 :
13680 // InternalSolverLanguage.g:4434:3: rule__ClassInterpretation__FieltAssignment_5
13681 {
13682 pushFollow(FOLLOW_39);
13683 rule__ClassInterpretation__FieltAssignment_5();
13684
13685 state._fsp--;
13686
13687
13688 }
13689 break;
13690
13691 default :
13692 break loop35;
13693 }
13694 } while (true);
13695
13696 after(grammarAccess.getClassInterpretationAccess().getFieltAssignment_5());
13697
13698 }
13699
13700
13701 }
13702
13703 }
13704 catch (RecognitionException re) {
13705 reportError(re);
13706 recover(input,re);
13707 }
13708 finally {
13709
13710 restoreStackSize(stackSize);
13711
13712 }
13713 return ;
13714 }
13715 // $ANTLR end "rule__ClassInterpretation__Group__5__Impl"
13716
13717
13718 // $ANTLR start "rule__ClassInterpretation__Group__6"
13719 // InternalSolverLanguage.g:4442:1: rule__ClassInterpretation__Group__6 : rule__ClassInterpretation__Group__6__Impl ;
13720 public final void rule__ClassInterpretation__Group__6() throws RecognitionException {
13721
13722 int stackSize = keepStackSize();
13723
13724 try {
13725 // InternalSolverLanguage.g:4446:1: ( rule__ClassInterpretation__Group__6__Impl )
13726 // InternalSolverLanguage.g:4447:2: rule__ClassInterpretation__Group__6__Impl
13727 {
13728 pushFollow(FOLLOW_2);
13729 rule__ClassInterpretation__Group__6__Impl();
13730
13731 state._fsp--;
13732
13733
13734 }
13735
13736 }
13737 catch (RecognitionException re) {
13738 reportError(re);
13739 recover(input,re);
13740 }
13741 finally {
13742
13743 restoreStackSize(stackSize);
13744
13745 }
13746 return ;
13747 }
13748 // $ANTLR end "rule__ClassInterpretation__Group__6"
13749
13750
13751 // $ANTLR start "rule__ClassInterpretation__Group__6__Impl"
13752 // InternalSolverLanguage.g:4453:1: rule__ClassInterpretation__Group__6__Impl : ( '}' ) ;
13753 public final void rule__ClassInterpretation__Group__6__Impl() throws RecognitionException {
13754
13755 int stackSize = keepStackSize();
13756
13757 try {
13758 // InternalSolverLanguage.g:4457:1: ( ( '}' ) )
13759 // InternalSolverLanguage.g:4458:1: ( '}' )
13760 {
13761 // InternalSolverLanguage.g:4458:1: ( '}' )
13762 // InternalSolverLanguage.g:4459:2: '}'
13763 {
13764 before(grammarAccess.getClassInterpretationAccess().getRightCurlyBracketKeyword_6());
13765 match(input,34,FOLLOW_2);
13766 after(grammarAccess.getClassInterpretationAccess().getRightCurlyBracketKeyword_6());
13767
13768 }
13769
13770
13771 }
13772
13773 }
13774 catch (RecognitionException re) {
13775 reportError(re);
13776 recover(input,re);
13777 }
13778 finally {
13779
13780 restoreStackSize(stackSize);
13781
13782 }
13783 return ;
13784 }
13785 // $ANTLR end "rule__ClassInterpretation__Group__6__Impl"
13786
13787
13788 // $ANTLR start "rule__ClassInterpretation__Group_3__0"
13789 // InternalSolverLanguage.g:4469:1: rule__ClassInterpretation__Group_3__0 : rule__ClassInterpretation__Group_3__0__Impl rule__ClassInterpretation__Group_3__1 ;
13790 public final void rule__ClassInterpretation__Group_3__0() throws RecognitionException {
13791
13792 int stackSize = keepStackSize();
13793
13794 try {
13795 // InternalSolverLanguage.g:4473:1: ( rule__ClassInterpretation__Group_3__0__Impl rule__ClassInterpretation__Group_3__1 )
13796 // InternalSolverLanguage.g:4474:2: rule__ClassInterpretation__Group_3__0__Impl rule__ClassInterpretation__Group_3__1
13797 {
13798 pushFollow(FOLLOW_16);
13799 rule__ClassInterpretation__Group_3__0__Impl();
13800
13801 state._fsp--;
13802
13803 pushFollow(FOLLOW_2);
13804 rule__ClassInterpretation__Group_3__1();
13805
13806 state._fsp--;
13807
13808
13809 }
13810
13811 }
13812 catch (RecognitionException re) {
13813 reportError(re);
13814 recover(input,re);
13815 }
13816 finally {
13817
13818 restoreStackSize(stackSize);
13819
13820 }
13821 return ;
13822 }
13823 // $ANTLR end "rule__ClassInterpretation__Group_3__0"
13824
13825
13826 // $ANTLR start "rule__ClassInterpretation__Group_3__0__Impl"
13827 // InternalSolverLanguage.g:4481:1: rule__ClassInterpretation__Group_3__0__Impl : ( 'extends' ) ;
13828 public final void rule__ClassInterpretation__Group_3__0__Impl() throws RecognitionException {
13829
13830 int stackSize = keepStackSize();
13831
13832 try {
13833 // InternalSolverLanguage.g:4485:1: ( ( 'extends' ) )
13834 // InternalSolverLanguage.g:4486:1: ( 'extends' )
13835 {
13836 // InternalSolverLanguage.g:4486:1: ( 'extends' )
13837 // InternalSolverLanguage.g:4487:2: 'extends'
13838 {
13839 before(grammarAccess.getClassInterpretationAccess().getExtendsKeyword_3_0());
13840 match(input,35,FOLLOW_2);
13841 after(grammarAccess.getClassInterpretationAccess().getExtendsKeyword_3_0());
13842
13843 }
13844
13845
13846 }
13847
13848 }
13849 catch (RecognitionException re) {
13850 reportError(re);
13851 recover(input,re);
13852 }
13853 finally {
13854
13855 restoreStackSize(stackSize);
13856
13857 }
13858 return ;
13859 }
13860 // $ANTLR end "rule__ClassInterpretation__Group_3__0__Impl"
13861
13862
13863 // $ANTLR start "rule__ClassInterpretation__Group_3__1"
13864 // InternalSolverLanguage.g:4496:1: rule__ClassInterpretation__Group_3__1 : rule__ClassInterpretation__Group_3__1__Impl ;
13865 public final void rule__ClassInterpretation__Group_3__1() throws RecognitionException {
13866
13867 int stackSize = keepStackSize();
13868
13869 try {
13870 // InternalSolverLanguage.g:4500:1: ( rule__ClassInterpretation__Group_3__1__Impl )
13871 // InternalSolverLanguage.g:4501:2: rule__ClassInterpretation__Group_3__1__Impl
13872 {
13873 pushFollow(FOLLOW_2);
13874 rule__ClassInterpretation__Group_3__1__Impl();
13875
13876 state._fsp--;
13877
13878
13879 }
13880
13881 }
13882 catch (RecognitionException re) {
13883 reportError(re);
13884 recover(input,re);
13885 }
13886 finally {
13887
13888 restoreStackSize(stackSize);
13889
13890 }
13891 return ;
13892 }
13893 // $ANTLR end "rule__ClassInterpretation__Group_3__1"
13894
13895
13896 // $ANTLR start "rule__ClassInterpretation__Group_3__1__Impl"
13897 // InternalSolverLanguage.g:4507:1: rule__ClassInterpretation__Group_3__1__Impl : ( ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 ) ) ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 )* ) ) ;
13898 public final void rule__ClassInterpretation__Group_3__1__Impl() throws RecognitionException {
13899
13900 int stackSize = keepStackSize();
13901
13902 try {
13903 // InternalSolverLanguage.g:4511:1: ( ( ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 ) ) ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 )* ) ) )
13904 // InternalSolverLanguage.g:4512:1: ( ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 ) ) ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 )* ) )
13905 {
13906 // InternalSolverLanguage.g:4512:1: ( ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 ) ) ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 )* ) )
13907 // InternalSolverLanguage.g:4513:2: ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 ) ) ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 )* )
13908 {
13909 // InternalSolverLanguage.g:4513:2: ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 ) )
13910 // InternalSolverLanguage.g:4514:3: ( rule__ClassInterpretation__SupertypesAssignment_3_1 )
13911 {
13912 before(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1());
13913 // InternalSolverLanguage.g:4515:3: ( rule__ClassInterpretation__SupertypesAssignment_3_1 )
13914 // InternalSolverLanguage.g:4515:4: rule__ClassInterpretation__SupertypesAssignment_3_1
13915 {
13916 pushFollow(FOLLOW_19);
13917 rule__ClassInterpretation__SupertypesAssignment_3_1();
13918
13919 state._fsp--;
13920
13921
13922 }
13923
13924 after(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1());
13925
13926 }
13927
13928 // InternalSolverLanguage.g:4518:2: ( ( rule__ClassInterpretation__SupertypesAssignment_3_1 )* )
13929 // InternalSolverLanguage.g:4519:3: ( rule__ClassInterpretation__SupertypesAssignment_3_1 )*
13930 {
13931 before(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1());
13932 // InternalSolverLanguage.g:4520:3: ( rule__ClassInterpretation__SupertypesAssignment_3_1 )*
13933 loop36:
13934 do {
13935 int alt36=2;
13936 int LA36_0 = input.LA(1);
13937
13938 if ( (LA36_0==RULE_ID) ) {
13939 alt36=1;
13940 }
13941
13942
13943 switch (alt36) {
13944 case 1 :
13945 // InternalSolverLanguage.g:4520:4: rule__ClassInterpretation__SupertypesAssignment_3_1
13946 {
13947 pushFollow(FOLLOW_19);
13948 rule__ClassInterpretation__SupertypesAssignment_3_1();
13949
13950 state._fsp--;
13951
13952
13953 }
13954 break;
13955
13956 default :
13957 break loop36;
13958 }
13959 } while (true);
13960
13961 after(grammarAccess.getClassInterpretationAccess().getSupertypesAssignment_3_1());
13962
13963 }
13964
13965
13966 }
13967
13968
13969 }
13970
13971 }
13972 catch (RecognitionException re) {
13973 reportError(re);
13974 recover(input,re);
13975 }
13976 finally {
13977
13978 restoreStackSize(stackSize);
13979
13980 }
13981 return ;
13982 }
13983 // $ANTLR end "rule__ClassInterpretation__Group_3__1__Impl"
13984
13985
13986 // $ANTLR start "rule__EnumInterpretation__Group__0"
13987 // InternalSolverLanguage.g:4530:1: rule__EnumInterpretation__Group__0 : rule__EnumInterpretation__Group__0__Impl rule__EnumInterpretation__Group__1 ;
13988 public final void rule__EnumInterpretation__Group__0() throws RecognitionException {
13989
13990 int stackSize = keepStackSize();
13991
13992 try {
13993 // InternalSolverLanguage.g:4534:1: ( rule__EnumInterpretation__Group__0__Impl rule__EnumInterpretation__Group__1 )
13994 // InternalSolverLanguage.g:4535:2: rule__EnumInterpretation__Group__0__Impl rule__EnumInterpretation__Group__1
13995 {
13996 pushFollow(FOLLOW_16);
13997 rule__EnumInterpretation__Group__0__Impl();
13998
13999 state._fsp--;
14000
14001 pushFollow(FOLLOW_2);
14002 rule__EnumInterpretation__Group__1();
14003
14004 state._fsp--;
14005
14006
14007 }
14008
14009 }
14010 catch (RecognitionException re) {
14011 reportError(re);
14012 recover(input,re);
14013 }
14014 finally {
14015
14016 restoreStackSize(stackSize);
14017
14018 }
14019 return ;
14020 }
14021 // $ANTLR end "rule__EnumInterpretation__Group__0"
14022
14023
14024 // $ANTLR start "rule__EnumInterpretation__Group__0__Impl"
14025 // InternalSolverLanguage.g:4542:1: rule__EnumInterpretation__Group__0__Impl : ( 'enum' ) ;
14026 public final void rule__EnumInterpretation__Group__0__Impl() throws RecognitionException {
14027
14028 int stackSize = keepStackSize();
14029
14030 try {
14031 // InternalSolverLanguage.g:4546:1: ( ( 'enum' ) )
14032 // InternalSolverLanguage.g:4547:1: ( 'enum' )
14033 {
14034 // InternalSolverLanguage.g:4547:1: ( 'enum' )
14035 // InternalSolverLanguage.g:4548:2: 'enum'
14036 {
14037 before(grammarAccess.getEnumInterpretationAccess().getEnumKeyword_0());
14038 match(input,36,FOLLOW_2);
14039 after(grammarAccess.getEnumInterpretationAccess().getEnumKeyword_0());
14040
14041 }
14042
14043
14044 }
14045
14046 }
14047 catch (RecognitionException re) {
14048 reportError(re);
14049 recover(input,re);
14050 }
14051 finally {
14052
14053 restoreStackSize(stackSize);
14054
14055 }
14056 return ;
14057 }
14058 // $ANTLR end "rule__EnumInterpretation__Group__0__Impl"
14059
14060
14061 // $ANTLR start "rule__EnumInterpretation__Group__1"
14062 // InternalSolverLanguage.g:4557:1: rule__EnumInterpretation__Group__1 : rule__EnumInterpretation__Group__1__Impl rule__EnumInterpretation__Group__2 ;
14063 public final void rule__EnumInterpretation__Group__1() throws RecognitionException {
14064
14065 int stackSize = keepStackSize();
14066
14067 try {
14068 // InternalSolverLanguage.g:4561:1: ( rule__EnumInterpretation__Group__1__Impl rule__EnumInterpretation__Group__2 )
14069 // InternalSolverLanguage.g:4562:2: rule__EnumInterpretation__Group__1__Impl rule__EnumInterpretation__Group__2
14070 {
14071 pushFollow(FOLLOW_40);
14072 rule__EnumInterpretation__Group__1__Impl();
14073
14074 state._fsp--;
14075
14076 pushFollow(FOLLOW_2);
14077 rule__EnumInterpretation__Group__2();
14078
14079 state._fsp--;
14080
14081
14082 }
14083
14084 }
14085 catch (RecognitionException re) {
14086 reportError(re);
14087 recover(input,re);
14088 }
14089 finally {
14090
14091 restoreStackSize(stackSize);
14092
14093 }
14094 return ;
14095 }
14096 // $ANTLR end "rule__EnumInterpretation__Group__1"
14097
14098
14099 // $ANTLR start "rule__EnumInterpretation__Group__1__Impl"
14100 // InternalSolverLanguage.g:4569:1: rule__EnumInterpretation__Group__1__Impl : ( ( rule__EnumInterpretation__SymbolAssignment_1 ) ) ;
14101 public final void rule__EnumInterpretation__Group__1__Impl() throws RecognitionException {
14102
14103 int stackSize = keepStackSize();
14104
14105 try {
14106 // InternalSolverLanguage.g:4573:1: ( ( ( rule__EnumInterpretation__SymbolAssignment_1 ) ) )
14107 // InternalSolverLanguage.g:4574:1: ( ( rule__EnumInterpretation__SymbolAssignment_1 ) )
14108 {
14109 // InternalSolverLanguage.g:4574:1: ( ( rule__EnumInterpretation__SymbolAssignment_1 ) )
14110 // InternalSolverLanguage.g:4575:2: ( rule__EnumInterpretation__SymbolAssignment_1 )
14111 {
14112 before(grammarAccess.getEnumInterpretationAccess().getSymbolAssignment_1());
14113 // InternalSolverLanguage.g:4576:2: ( rule__EnumInterpretation__SymbolAssignment_1 )
14114 // InternalSolverLanguage.g:4576:3: rule__EnumInterpretation__SymbolAssignment_1
14115 {
14116 pushFollow(FOLLOW_2);
14117 rule__EnumInterpretation__SymbolAssignment_1();
14118
14119 state._fsp--;
14120
14121
14122 }
14123
14124 after(grammarAccess.getEnumInterpretationAccess().getSymbolAssignment_1());
14125
14126 }
14127
14128
14129 }
14130
14131 }
14132 catch (RecognitionException re) {
14133 reportError(re);
14134 recover(input,re);
14135 }
14136 finally {
14137
14138 restoreStackSize(stackSize);
14139
14140 }
14141 return ;
14142 }
14143 // $ANTLR end "rule__EnumInterpretation__Group__1__Impl"
14144
14145
14146 // $ANTLR start "rule__EnumInterpretation__Group__2"
14147 // InternalSolverLanguage.g:4584:1: rule__EnumInterpretation__Group__2 : rule__EnumInterpretation__Group__2__Impl rule__EnumInterpretation__Group__3 ;
14148 public final void rule__EnumInterpretation__Group__2() throws RecognitionException {
14149
14150 int stackSize = keepStackSize();
14151
14152 try {
14153 // InternalSolverLanguage.g:4588:1: ( rule__EnumInterpretation__Group__2__Impl rule__EnumInterpretation__Group__3 )
14154 // InternalSolverLanguage.g:4589:2: rule__EnumInterpretation__Group__2__Impl rule__EnumInterpretation__Group__3
14155 {
14156 pushFollow(FOLLOW_17);
14157 rule__EnumInterpretation__Group__2__Impl();
14158
14159 state._fsp--;
14160
14161 pushFollow(FOLLOW_2);
14162 rule__EnumInterpretation__Group__3();
14163
14164 state._fsp--;
14165
14166
14167 }
14168
14169 }
14170 catch (RecognitionException re) {
14171 reportError(re);
14172 recover(input,re);
14173 }
14174 finally {
14175
14176 restoreStackSize(stackSize);
14177
14178 }
14179 return ;
14180 }
14181 // $ANTLR end "rule__EnumInterpretation__Group__2"
14182
14183
14184 // $ANTLR start "rule__EnumInterpretation__Group__2__Impl"
14185 // InternalSolverLanguage.g:4596:1: rule__EnumInterpretation__Group__2__Impl : ( '{' ) ;
14186 public final void rule__EnumInterpretation__Group__2__Impl() throws RecognitionException {
14187
14188 int stackSize = keepStackSize();
14189
14190 try {
14191 // InternalSolverLanguage.g:4600:1: ( ( '{' ) )
14192 // InternalSolverLanguage.g:4601:1: ( '{' )
14193 {
14194 // InternalSolverLanguage.g:4601:1: ( '{' )
14195 // InternalSolverLanguage.g:4602:2: '{'
14196 {
14197 before(grammarAccess.getEnumInterpretationAccess().getLeftCurlyBracketKeyword_2());
14198 match(input,33,FOLLOW_2);
14199 after(grammarAccess.getEnumInterpretationAccess().getLeftCurlyBracketKeyword_2());
14200
14201 }
14202
14203
14204 }
14205
14206 }
14207 catch (RecognitionException re) {
14208 reportError(re);
14209 recover(input,re);
14210 }
14211 finally {
14212
14213 restoreStackSize(stackSize);
14214
14215 }
14216 return ;
14217 }
14218 // $ANTLR end "rule__EnumInterpretation__Group__2__Impl"
14219
14220
14221 // $ANTLR start "rule__EnumInterpretation__Group__3"
14222 // InternalSolverLanguage.g:4611:1: rule__EnumInterpretation__Group__3 : rule__EnumInterpretation__Group__3__Impl rule__EnumInterpretation__Group__4 ;
14223 public final void rule__EnumInterpretation__Group__3() throws RecognitionException {
14224
14225 int stackSize = keepStackSize();
14226
14227 try {
14228 // InternalSolverLanguage.g:4615:1: ( rule__EnumInterpretation__Group__3__Impl rule__EnumInterpretation__Group__4 )
14229 // InternalSolverLanguage.g:4616:2: rule__EnumInterpretation__Group__3__Impl rule__EnumInterpretation__Group__4
14230 {
14231 pushFollow(FOLLOW_41);
14232 rule__EnumInterpretation__Group__3__Impl();
14233
14234 state._fsp--;
14235
14236 pushFollow(FOLLOW_2);
14237 rule__EnumInterpretation__Group__4();
14238
14239 state._fsp--;
14240
14241
14242 }
14243
14244 }
14245 catch (RecognitionException re) {
14246 reportError(re);
14247 recover(input,re);
14248 }
14249 finally {
14250
14251 restoreStackSize(stackSize);
14252
14253 }
14254 return ;
14255 }
14256 // $ANTLR end "rule__EnumInterpretation__Group__3"
14257
14258
14259 // $ANTLR start "rule__EnumInterpretation__Group__3__Impl"
14260 // InternalSolverLanguage.g:4623:1: rule__EnumInterpretation__Group__3__Impl : ( ( ( rule__EnumInterpretation__ObjectsAssignment_3 ) ) ( ( rule__EnumInterpretation__ObjectsAssignment_3 )* ) ) ;
14261 public final void rule__EnumInterpretation__Group__3__Impl() throws RecognitionException {
14262
14263 int stackSize = keepStackSize();
14264
14265 try {
14266 // InternalSolverLanguage.g:4627:1: ( ( ( ( rule__EnumInterpretation__ObjectsAssignment_3 ) ) ( ( rule__EnumInterpretation__ObjectsAssignment_3 )* ) ) )
14267 // InternalSolverLanguage.g:4628:1: ( ( ( rule__EnumInterpretation__ObjectsAssignment_3 ) ) ( ( rule__EnumInterpretation__ObjectsAssignment_3 )* ) )
14268 {
14269 // InternalSolverLanguage.g:4628:1: ( ( ( rule__EnumInterpretation__ObjectsAssignment_3 ) ) ( ( rule__EnumInterpretation__ObjectsAssignment_3 )* ) )
14270 // InternalSolverLanguage.g:4629:2: ( ( rule__EnumInterpretation__ObjectsAssignment_3 ) ) ( ( rule__EnumInterpretation__ObjectsAssignment_3 )* )
14271 {
14272 // InternalSolverLanguage.g:4629:2: ( ( rule__EnumInterpretation__ObjectsAssignment_3 ) )
14273 // InternalSolverLanguage.g:4630:3: ( rule__EnumInterpretation__ObjectsAssignment_3 )
14274 {
14275 before(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3());
14276 // InternalSolverLanguage.g:4631:3: ( rule__EnumInterpretation__ObjectsAssignment_3 )
14277 // InternalSolverLanguage.g:4631:4: rule__EnumInterpretation__ObjectsAssignment_3
14278 {
14279 pushFollow(FOLLOW_42);
14280 rule__EnumInterpretation__ObjectsAssignment_3();
14281
14282 state._fsp--;
14283
14284
14285 }
14286
14287 after(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3());
14288
14289 }
14290
14291 // InternalSolverLanguage.g:4634:2: ( ( rule__EnumInterpretation__ObjectsAssignment_3 )* )
14292 // InternalSolverLanguage.g:4635:3: ( rule__EnumInterpretation__ObjectsAssignment_3 )*
14293 {
14294 before(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3());
14295 // InternalSolverLanguage.g:4636:3: ( rule__EnumInterpretation__ObjectsAssignment_3 )*
14296 loop37:
14297 do {
14298 int alt37=2;
14299 int LA37_0 = input.LA(1);
14300
14301 if ( (LA37_0==26) ) {
14302 alt37=1;
14303 }
14304
14305
14306 switch (alt37) {
14307 case 1 :
14308 // InternalSolverLanguage.g:4636:4: rule__EnumInterpretation__ObjectsAssignment_3
14309 {
14310 pushFollow(FOLLOW_42);
14311 rule__EnumInterpretation__ObjectsAssignment_3();
14312
14313 state._fsp--;
14314
14315
14316 }
14317 break;
14318
14319 default :
14320 break loop37;
14321 }
14322 } while (true);
14323
14324 after(grammarAccess.getEnumInterpretationAccess().getObjectsAssignment_3());
14325
14326 }
14327
14328
14329 }
14330
14331
14332 }
14333
14334 }
14335 catch (RecognitionException re) {
14336 reportError(re);
14337 recover(input,re);
14338 }
14339 finally {
14340
14341 restoreStackSize(stackSize);
14342
14343 }
14344 return ;
14345 }
14346 // $ANTLR end "rule__EnumInterpretation__Group__3__Impl"
14347
14348
14349 // $ANTLR start "rule__EnumInterpretation__Group__4"
14350 // InternalSolverLanguage.g:4645:1: rule__EnumInterpretation__Group__4 : rule__EnumInterpretation__Group__4__Impl ;
14351 public final void rule__EnumInterpretation__Group__4() throws RecognitionException {
14352
14353 int stackSize = keepStackSize();
14354
14355 try {
14356 // InternalSolverLanguage.g:4649:1: ( rule__EnumInterpretation__Group__4__Impl )
14357 // InternalSolverLanguage.g:4650:2: rule__EnumInterpretation__Group__4__Impl
14358 {
14359 pushFollow(FOLLOW_2);
14360 rule__EnumInterpretation__Group__4__Impl();
14361
14362 state._fsp--;
14363
14364
14365 }
14366
14367 }
14368 catch (RecognitionException re) {
14369 reportError(re);
14370 recover(input,re);
14371 }
14372 finally {
14373
14374 restoreStackSize(stackSize);
14375
14376 }
14377 return ;
14378 }
14379 // $ANTLR end "rule__EnumInterpretation__Group__4"
14380
14381
14382 // $ANTLR start "rule__EnumInterpretation__Group__4__Impl"
14383 // InternalSolverLanguage.g:4656:1: rule__EnumInterpretation__Group__4__Impl : ( '}' ) ;
14384 public final void rule__EnumInterpretation__Group__4__Impl() throws RecognitionException {
14385
14386 int stackSize = keepStackSize();
14387
14388 try {
14389 // InternalSolverLanguage.g:4660:1: ( ( '}' ) )
14390 // InternalSolverLanguage.g:4661:1: ( '}' )
14391 {
14392 // InternalSolverLanguage.g:4661:1: ( '}' )
14393 // InternalSolverLanguage.g:4662:2: '}'
14394 {
14395 before(grammarAccess.getEnumInterpretationAccess().getRightCurlyBracketKeyword_4());
14396 match(input,34,FOLLOW_2);
14397 after(grammarAccess.getEnumInterpretationAccess().getRightCurlyBracketKeyword_4());
14398
14399 }
14400
14401
14402 }
14403
14404 }
14405 catch (RecognitionException re) {
14406 reportError(re);
14407 recover(input,re);
14408 }
14409 finally {
14410
14411 restoreStackSize(stackSize);
14412
14413 }
14414 return ;
14415 }
14416 // $ANTLR end "rule__EnumInterpretation__Group__4__Impl"
14417
14418
14419 // $ANTLR start "rule__FieldRelationInterpretation__Group__0"
14420 // InternalSolverLanguage.g:4672:1: rule__FieldRelationInterpretation__Group__0 : rule__FieldRelationInterpretation__Group__0__Impl rule__FieldRelationInterpretation__Group__1 ;
14421 public final void rule__FieldRelationInterpretation__Group__0() throws RecognitionException {
14422
14423 int stackSize = keepStackSize();
14424
14425 try {
14426 // InternalSolverLanguage.g:4676:1: ( rule__FieldRelationInterpretation__Group__0__Impl rule__FieldRelationInterpretation__Group__1 )
14427 // InternalSolverLanguage.g:4677:2: rule__FieldRelationInterpretation__Group__0__Impl rule__FieldRelationInterpretation__Group__1
14428 {
14429 pushFollow(FOLLOW_16);
14430 rule__FieldRelationInterpretation__Group__0__Impl();
14431
14432 state._fsp--;
14433
14434 pushFollow(FOLLOW_2);
14435 rule__FieldRelationInterpretation__Group__1();
14436
14437 state._fsp--;
14438
14439
14440 }
14441
14442 }
14443 catch (RecognitionException re) {
14444 reportError(re);
14445 recover(input,re);
14446 }
14447 finally {
14448
14449 restoreStackSize(stackSize);
14450
14451 }
14452 return ;
14453 }
14454 // $ANTLR end "rule__FieldRelationInterpretation__Group__0"
14455
14456
14457 // $ANTLR start "rule__FieldRelationInterpretation__Group__0__Impl"
14458 // InternalSolverLanguage.g:4684:1: rule__FieldRelationInterpretation__Group__0__Impl : ( ( rule__FieldRelationInterpretation__ContainmentAssignment_0 ) ) ;
14459 public final void rule__FieldRelationInterpretation__Group__0__Impl() throws RecognitionException {
14460
14461 int stackSize = keepStackSize();
14462
14463 try {
14464 // InternalSolverLanguage.g:4688:1: ( ( ( rule__FieldRelationInterpretation__ContainmentAssignment_0 ) ) )
14465 // InternalSolverLanguage.g:4689:1: ( ( rule__FieldRelationInterpretation__ContainmentAssignment_0 ) )
14466 {
14467 // InternalSolverLanguage.g:4689:1: ( ( rule__FieldRelationInterpretation__ContainmentAssignment_0 ) )
14468 // InternalSolverLanguage.g:4690:2: ( rule__FieldRelationInterpretation__ContainmentAssignment_0 )
14469 {
14470 before(grammarAccess.getFieldRelationInterpretationAccess().getContainmentAssignment_0());
14471 // InternalSolverLanguage.g:4691:2: ( rule__FieldRelationInterpretation__ContainmentAssignment_0 )
14472 // InternalSolverLanguage.g:4691:3: rule__FieldRelationInterpretation__ContainmentAssignment_0
14473 {
14474 pushFollow(FOLLOW_2);
14475 rule__FieldRelationInterpretation__ContainmentAssignment_0();
14476
14477 state._fsp--;
14478
14479
14480 }
14481
14482 after(grammarAccess.getFieldRelationInterpretationAccess().getContainmentAssignment_0());
14483
14484 }
14485
14486
14487 }
14488
14489 }
14490 catch (RecognitionException re) {
14491 reportError(re);
14492 recover(input,re);
14493 }
14494 finally {
14495
14496 restoreStackSize(stackSize);
14497
14498 }
14499 return ;
14500 }
14501 // $ANTLR end "rule__FieldRelationInterpretation__Group__0__Impl"
14502
14503
14504 // $ANTLR start "rule__FieldRelationInterpretation__Group__1"
14505 // InternalSolverLanguage.g:4699:1: rule__FieldRelationInterpretation__Group__1 : rule__FieldRelationInterpretation__Group__1__Impl rule__FieldRelationInterpretation__Group__2 ;
14506 public final void rule__FieldRelationInterpretation__Group__1() throws RecognitionException {
14507
14508 int stackSize = keepStackSize();
14509
14510 try {
14511 // InternalSolverLanguage.g:4703:1: ( rule__FieldRelationInterpretation__Group__1__Impl rule__FieldRelationInterpretation__Group__2 )
14512 // InternalSolverLanguage.g:4704:2: rule__FieldRelationInterpretation__Group__1__Impl rule__FieldRelationInterpretation__Group__2
14513 {
14514 pushFollow(FOLLOW_14);
14515 rule__FieldRelationInterpretation__Group__1__Impl();
14516
14517 state._fsp--;
14518
14519 pushFollow(FOLLOW_2);
14520 rule__FieldRelationInterpretation__Group__2();
14521
14522 state._fsp--;
14523
14524
14525 }
14526
14527 }
14528 catch (RecognitionException re) {
14529 reportError(re);
14530 recover(input,re);
14531 }
14532 finally {
14533
14534 restoreStackSize(stackSize);
14535
14536 }
14537 return ;
14538 }
14539 // $ANTLR end "rule__FieldRelationInterpretation__Group__1"
14540
14541
14542 // $ANTLR start "rule__FieldRelationInterpretation__Group__1__Impl"
14543 // InternalSolverLanguage.g:4711:1: rule__FieldRelationInterpretation__Group__1__Impl : ( ( rule__FieldRelationInterpretation__SymbolAssignment_1 ) ) ;
14544 public final void rule__FieldRelationInterpretation__Group__1__Impl() throws RecognitionException {
14545
14546 int stackSize = keepStackSize();
14547
14548 try {
14549 // InternalSolverLanguage.g:4715:1: ( ( ( rule__FieldRelationInterpretation__SymbolAssignment_1 ) ) )
14550 // InternalSolverLanguage.g:4716:1: ( ( rule__FieldRelationInterpretation__SymbolAssignment_1 ) )
14551 {
14552 // InternalSolverLanguage.g:4716:1: ( ( rule__FieldRelationInterpretation__SymbolAssignment_1 ) )
14553 // InternalSolverLanguage.g:4717:2: ( rule__FieldRelationInterpretation__SymbolAssignment_1 )
14554 {
14555 before(grammarAccess.getFieldRelationInterpretationAccess().getSymbolAssignment_1());
14556 // InternalSolverLanguage.g:4718:2: ( rule__FieldRelationInterpretation__SymbolAssignment_1 )
14557 // InternalSolverLanguage.g:4718:3: rule__FieldRelationInterpretation__SymbolAssignment_1
14558 {
14559 pushFollow(FOLLOW_2);
14560 rule__FieldRelationInterpretation__SymbolAssignment_1();
14561
14562 state._fsp--;
14563
14564
14565 }
14566
14567 after(grammarAccess.getFieldRelationInterpretationAccess().getSymbolAssignment_1());
14568
14569 }
14570
14571
14572 }
14573
14574 }
14575 catch (RecognitionException re) {
14576 reportError(re);
14577 recover(input,re);
14578 }
14579 finally {
14580
14581 restoreStackSize(stackSize);
14582
14583 }
14584 return ;
14585 }
14586 // $ANTLR end "rule__FieldRelationInterpretation__Group__1__Impl"
14587
14588
14589 // $ANTLR start "rule__FieldRelationInterpretation__Group__2"
14590 // InternalSolverLanguage.g:4726:1: rule__FieldRelationInterpretation__Group__2 : rule__FieldRelationInterpretation__Group__2__Impl rule__FieldRelationInterpretation__Group__3 ;
14591 public final void rule__FieldRelationInterpretation__Group__2() throws RecognitionException {
14592
14593 int stackSize = keepStackSize();
14594
14595 try {
14596 // InternalSolverLanguage.g:4730:1: ( rule__FieldRelationInterpretation__Group__2__Impl rule__FieldRelationInterpretation__Group__3 )
14597 // InternalSolverLanguage.g:4731:2: rule__FieldRelationInterpretation__Group__2__Impl rule__FieldRelationInterpretation__Group__3
14598 {
14599 pushFollow(FOLLOW_43);
14600 rule__FieldRelationInterpretation__Group__2__Impl();
14601
14602 state._fsp--;
14603
14604 pushFollow(FOLLOW_2);
14605 rule__FieldRelationInterpretation__Group__3();
14606
14607 state._fsp--;
14608
14609
14610 }
14611
14612 }
14613 catch (RecognitionException re) {
14614 reportError(re);
14615 recover(input,re);
14616 }
14617 finally {
14618
14619 restoreStackSize(stackSize);
14620
14621 }
14622 return ;
14623 }
14624 // $ANTLR end "rule__FieldRelationInterpretation__Group__2"
14625
14626
14627 // $ANTLR start "rule__FieldRelationInterpretation__Group__2__Impl"
14628 // InternalSolverLanguage.g:4738:1: rule__FieldRelationInterpretation__Group__2__Impl : ( ':' ) ;
14629 public final void rule__FieldRelationInterpretation__Group__2__Impl() throws RecognitionException {
14630
14631 int stackSize = keepStackSize();
14632
14633 try {
14634 // InternalSolverLanguage.g:4742:1: ( ( ':' ) )
14635 // InternalSolverLanguage.g:4743:1: ( ':' )
14636 {
14637 // InternalSolverLanguage.g:4743:1: ( ':' )
14638 // InternalSolverLanguage.g:4744:2: ':'
14639 {
14640 before(grammarAccess.getFieldRelationInterpretationAccess().getColonKeyword_2());
14641 match(input,19,FOLLOW_2);
14642 after(grammarAccess.getFieldRelationInterpretationAccess().getColonKeyword_2());
14643
14644 }
14645
14646
14647 }
14648
14649 }
14650 catch (RecognitionException re) {
14651 reportError(re);
14652 recover(input,re);
14653 }
14654 finally {
14655
14656 restoreStackSize(stackSize);
14657
14658 }
14659 return ;
14660 }
14661 // $ANTLR end "rule__FieldRelationInterpretation__Group__2__Impl"
14662
14663
14664 // $ANTLR start "rule__FieldRelationInterpretation__Group__3"
14665 // InternalSolverLanguage.g:4753:1: rule__FieldRelationInterpretation__Group__3 : rule__FieldRelationInterpretation__Group__3__Impl rule__FieldRelationInterpretation__Group__4 ;
14666 public final void rule__FieldRelationInterpretation__Group__3() throws RecognitionException {
14667
14668 int stackSize = keepStackSize();
14669
14670 try {
14671 // InternalSolverLanguage.g:4757:1: ( rule__FieldRelationInterpretation__Group__3__Impl rule__FieldRelationInterpretation__Group__4 )
14672 // InternalSolverLanguage.g:4758:2: rule__FieldRelationInterpretation__Group__3__Impl rule__FieldRelationInterpretation__Group__4
14673 {
14674 pushFollow(FOLLOW_43);
14675 rule__FieldRelationInterpretation__Group__3__Impl();
14676
14677 state._fsp--;
14678
14679 pushFollow(FOLLOW_2);
14680 rule__FieldRelationInterpretation__Group__4();
14681
14682 state._fsp--;
14683
14684
14685 }
14686
14687 }
14688 catch (RecognitionException re) {
14689 reportError(re);
14690 recover(input,re);
14691 }
14692 finally {
14693
14694 restoreStackSize(stackSize);
14695
14696 }
14697 return ;
14698 }
14699 // $ANTLR end "rule__FieldRelationInterpretation__Group__3"
14700
14701
14702 // $ANTLR start "rule__FieldRelationInterpretation__Group__3__Impl"
14703 // InternalSolverLanguage.g:4765:1: rule__FieldRelationInterpretation__Group__3__Impl : ( ( rule__FieldRelationInterpretation__MultiplicityAssignment_3 )? ) ;
14704 public final void rule__FieldRelationInterpretation__Group__3__Impl() throws RecognitionException {
14705
14706 int stackSize = keepStackSize();
14707
14708 try {
14709 // InternalSolverLanguage.g:4769:1: ( ( ( rule__FieldRelationInterpretation__MultiplicityAssignment_3 )? ) )
14710 // InternalSolverLanguage.g:4770:1: ( ( rule__FieldRelationInterpretation__MultiplicityAssignment_3 )? )
14711 {
14712 // InternalSolverLanguage.g:4770:1: ( ( rule__FieldRelationInterpretation__MultiplicityAssignment_3 )? )
14713 // InternalSolverLanguage.g:4771:2: ( rule__FieldRelationInterpretation__MultiplicityAssignment_3 )?
14714 {
14715 before(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityAssignment_3());
14716 // InternalSolverLanguage.g:4772:2: ( rule__FieldRelationInterpretation__MultiplicityAssignment_3 )?
14717 int alt38=2;
14718 int LA38_0 = input.LA(1);
14719
14720 if ( (LA38_0==RULE_INT) ) {
14721 alt38=1;
14722 }
14723 switch (alt38) {
14724 case 1 :
14725 // InternalSolverLanguage.g:4772:3: rule__FieldRelationInterpretation__MultiplicityAssignment_3
14726 {
14727 pushFollow(FOLLOW_2);
14728 rule__FieldRelationInterpretation__MultiplicityAssignment_3();
14729
14730 state._fsp--;
14731
14732
14733 }
14734 break;
14735
14736 }
14737
14738 after(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityAssignment_3());
14739
14740 }
14741
14742
14743 }
14744
14745 }
14746 catch (RecognitionException re) {
14747 reportError(re);
14748 recover(input,re);
14749 }
14750 finally {
14751
14752 restoreStackSize(stackSize);
14753
14754 }
14755 return ;
14756 }
14757 // $ANTLR end "rule__FieldRelationInterpretation__Group__3__Impl"
14758
14759
14760 // $ANTLR start "rule__FieldRelationInterpretation__Group__4"
14761 // InternalSolverLanguage.g:4780:1: rule__FieldRelationInterpretation__Group__4 : rule__FieldRelationInterpretation__Group__4__Impl ;
14762 public final void rule__FieldRelationInterpretation__Group__4() throws RecognitionException {
14763
14764 int stackSize = keepStackSize();
14765
14766 try {
14767 // InternalSolverLanguage.g:4784:1: ( rule__FieldRelationInterpretation__Group__4__Impl )
14768 // InternalSolverLanguage.g:4785:2: rule__FieldRelationInterpretation__Group__4__Impl
14769 {
14770 pushFollow(FOLLOW_2);
14771 rule__FieldRelationInterpretation__Group__4__Impl();
14772
14773 state._fsp--;
14774
14775
14776 }
14777
14778 }
14779 catch (RecognitionException re) {
14780 reportError(re);
14781 recover(input,re);
14782 }
14783 finally {
14784
14785 restoreStackSize(stackSize);
14786
14787 }
14788 return ;
14789 }
14790 // $ANTLR end "rule__FieldRelationInterpretation__Group__4"
14791
14792
14793 // $ANTLR start "rule__FieldRelationInterpretation__Group__4__Impl"
14794 // InternalSolverLanguage.g:4791:1: rule__FieldRelationInterpretation__Group__4__Impl : ( ( rule__FieldRelationInterpretation__TargetAssignment_4 ) ) ;
14795 public final void rule__FieldRelationInterpretation__Group__4__Impl() throws RecognitionException {
14796
14797 int stackSize = keepStackSize();
14798
14799 try {
14800 // InternalSolverLanguage.g:4795:1: ( ( ( rule__FieldRelationInterpretation__TargetAssignment_4 ) ) )
14801 // InternalSolverLanguage.g:4796:1: ( ( rule__FieldRelationInterpretation__TargetAssignment_4 ) )
14802 {
14803 // InternalSolverLanguage.g:4796:1: ( ( rule__FieldRelationInterpretation__TargetAssignment_4 ) )
14804 // InternalSolverLanguage.g:4797:2: ( rule__FieldRelationInterpretation__TargetAssignment_4 )
14805 {
14806 before(grammarAccess.getFieldRelationInterpretationAccess().getTargetAssignment_4());
14807 // InternalSolverLanguage.g:4798:2: ( rule__FieldRelationInterpretation__TargetAssignment_4 )
14808 // InternalSolverLanguage.g:4798:3: rule__FieldRelationInterpretation__TargetAssignment_4
14809 {
14810 pushFollow(FOLLOW_2);
14811 rule__FieldRelationInterpretation__TargetAssignment_4();
14812
14813 state._fsp--;
14814
14815
14816 }
14817
14818 after(grammarAccess.getFieldRelationInterpretationAccess().getTargetAssignment_4());
14819
14820 }
14821
14822
14823 }
14824
14825 }
14826 catch (RecognitionException re) {
14827 reportError(re);
14828 recover(input,re);
14829 }
14830 finally {
14831
14832 restoreStackSize(stackSize);
14833
14834 }
14835 return ;
14836 }
14837 // $ANTLR end "rule__FieldRelationInterpretation__Group__4__Impl"
14838
14839
14840 // $ANTLR start "rule__GlobalRelationInterpretation__Group__0"
14841 // InternalSolverLanguage.g:4807:1: rule__GlobalRelationInterpretation__Group__0 : rule__GlobalRelationInterpretation__Group__0__Impl rule__GlobalRelationInterpretation__Group__1 ;
14842 public final void rule__GlobalRelationInterpretation__Group__0() throws RecognitionException {
14843
14844 int stackSize = keepStackSize();
14845
14846 try {
14847 // InternalSolverLanguage.g:4811:1: ( rule__GlobalRelationInterpretation__Group__0__Impl rule__GlobalRelationInterpretation__Group__1 )
14848 // InternalSolverLanguage.g:4812:2: rule__GlobalRelationInterpretation__Group__0__Impl rule__GlobalRelationInterpretation__Group__1
14849 {
14850 pushFollow(FOLLOW_44);
14851 rule__GlobalRelationInterpretation__Group__0__Impl();
14852
14853 state._fsp--;
14854
14855 pushFollow(FOLLOW_2);
14856 rule__GlobalRelationInterpretation__Group__1();
14857
14858 state._fsp--;
14859
14860
14861 }
14862
14863 }
14864 catch (RecognitionException re) {
14865 reportError(re);
14866 recover(input,re);
14867 }
14868 finally {
14869
14870 restoreStackSize(stackSize);
14871
14872 }
14873 return ;
14874 }
14875 // $ANTLR end "rule__GlobalRelationInterpretation__Group__0"
14876
14877
14878 // $ANTLR start "rule__GlobalRelationInterpretation__Group__0__Impl"
14879 // InternalSolverLanguage.g:4819:1: rule__GlobalRelationInterpretation__Group__0__Impl : ( ( rule__GlobalRelationInterpretation__ContainmentAssignment_0 ) ) ;
14880 public final void rule__GlobalRelationInterpretation__Group__0__Impl() throws RecognitionException {
14881
14882 int stackSize = keepStackSize();
14883
14884 try {
14885 // InternalSolverLanguage.g:4823:1: ( ( ( rule__GlobalRelationInterpretation__ContainmentAssignment_0 ) ) )
14886 // InternalSolverLanguage.g:4824:1: ( ( rule__GlobalRelationInterpretation__ContainmentAssignment_0 ) )
14887 {
14888 // InternalSolverLanguage.g:4824:1: ( ( rule__GlobalRelationInterpretation__ContainmentAssignment_0 ) )
14889 // InternalSolverLanguage.g:4825:2: ( rule__GlobalRelationInterpretation__ContainmentAssignment_0 )
14890 {
14891 before(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentAssignment_0());
14892 // InternalSolverLanguage.g:4826:2: ( rule__GlobalRelationInterpretation__ContainmentAssignment_0 )
14893 // InternalSolverLanguage.g:4826:3: rule__GlobalRelationInterpretation__ContainmentAssignment_0
14894 {
14895 pushFollow(FOLLOW_2);
14896 rule__GlobalRelationInterpretation__ContainmentAssignment_0();
14897
14898 state._fsp--;
14899
14900
14901 }
14902
14903 after(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentAssignment_0());
14904
14905 }
14906
14907
14908 }
14909
14910 }
14911 catch (RecognitionException re) {
14912 reportError(re);
14913 recover(input,re);
14914 }
14915 finally {
14916
14917 restoreStackSize(stackSize);
14918
14919 }
14920 return ;
14921 }
14922 // $ANTLR end "rule__GlobalRelationInterpretation__Group__0__Impl"
14923
14924
14925 // $ANTLR start "rule__GlobalRelationInterpretation__Group__1"
14926 // InternalSolverLanguage.g:4834:1: rule__GlobalRelationInterpretation__Group__1 : rule__GlobalRelationInterpretation__Group__1__Impl rule__GlobalRelationInterpretation__Group__2 ;
14927 public final void rule__GlobalRelationInterpretation__Group__1() throws RecognitionException {
14928
14929 int stackSize = keepStackSize();
14930
14931 try {
14932 // InternalSolverLanguage.g:4838:1: ( rule__GlobalRelationInterpretation__Group__1__Impl rule__GlobalRelationInterpretation__Group__2 )
14933 // InternalSolverLanguage.g:4839:2: rule__GlobalRelationInterpretation__Group__1__Impl rule__GlobalRelationInterpretation__Group__2
14934 {
14935 pushFollow(FOLLOW_16);
14936 rule__GlobalRelationInterpretation__Group__1__Impl();
14937
14938 state._fsp--;
14939
14940 pushFollow(FOLLOW_2);
14941 rule__GlobalRelationInterpretation__Group__2();
14942
14943 state._fsp--;
14944
14945
14946 }
14947
14948 }
14949 catch (RecognitionException re) {
14950 reportError(re);
14951 recover(input,re);
14952 }
14953 finally {
14954
14955 restoreStackSize(stackSize);
14956
14957 }
14958 return ;
14959 }
14960 // $ANTLR end "rule__GlobalRelationInterpretation__Group__1"
14961
14962
14963 // $ANTLR start "rule__GlobalRelationInterpretation__Group__1__Impl"
14964 // InternalSolverLanguage.g:4846:1: rule__GlobalRelationInterpretation__Group__1__Impl : ( 'relation' ) ;
14965 public final void rule__GlobalRelationInterpretation__Group__1__Impl() throws RecognitionException {
14966
14967 int stackSize = keepStackSize();
14968
14969 try {
14970 // InternalSolverLanguage.g:4850:1: ( ( 'relation' ) )
14971 // InternalSolverLanguage.g:4851:1: ( 'relation' )
14972 {
14973 // InternalSolverLanguage.g:4851:1: ( 'relation' )
14974 // InternalSolverLanguage.g:4852:2: 'relation'
14975 {
14976 before(grammarAccess.getGlobalRelationInterpretationAccess().getRelationKeyword_1());
14977 match(input,37,FOLLOW_2);
14978 after(grammarAccess.getGlobalRelationInterpretationAccess().getRelationKeyword_1());
14979
14980 }
14981
14982
14983 }
14984
14985 }
14986 catch (RecognitionException re) {
14987 reportError(re);
14988 recover(input,re);
14989 }
14990 finally {
14991
14992 restoreStackSize(stackSize);
14993
14994 }
14995 return ;
14996 }
14997 // $ANTLR end "rule__GlobalRelationInterpretation__Group__1__Impl"
14998
14999
15000 // $ANTLR start "rule__GlobalRelationInterpretation__Group__2"
15001 // InternalSolverLanguage.g:4861:1: rule__GlobalRelationInterpretation__Group__2 : rule__GlobalRelationInterpretation__Group__2__Impl rule__GlobalRelationInterpretation__Group__3 ;
15002 public final void rule__GlobalRelationInterpretation__Group__2() throws RecognitionException {
15003
15004 int stackSize = keepStackSize();
15005
15006 try {
15007 // InternalSolverLanguage.g:4865:1: ( rule__GlobalRelationInterpretation__Group__2__Impl rule__GlobalRelationInterpretation__Group__3 )
15008 // InternalSolverLanguage.g:4866:2: rule__GlobalRelationInterpretation__Group__2__Impl rule__GlobalRelationInterpretation__Group__3
15009 {
15010 pushFollow(FOLLOW_14);
15011 rule__GlobalRelationInterpretation__Group__2__Impl();
15012
15013 state._fsp--;
15014
15015 pushFollow(FOLLOW_2);
15016 rule__GlobalRelationInterpretation__Group__3();
15017
15018 state._fsp--;
15019
15020
15021 }
15022
15023 }
15024 catch (RecognitionException re) {
15025 reportError(re);
15026 recover(input,re);
15027 }
15028 finally {
15029
15030 restoreStackSize(stackSize);
15031
15032 }
15033 return ;
15034 }
15035 // $ANTLR end "rule__GlobalRelationInterpretation__Group__2"
15036
15037
15038 // $ANTLR start "rule__GlobalRelationInterpretation__Group__2__Impl"
15039 // InternalSolverLanguage.g:4873:1: rule__GlobalRelationInterpretation__Group__2__Impl : ( ( rule__GlobalRelationInterpretation__SymbolAssignment_2 ) ) ;
15040 public final void rule__GlobalRelationInterpretation__Group__2__Impl() throws RecognitionException {
15041
15042 int stackSize = keepStackSize();
15043
15044 try {
15045 // InternalSolverLanguage.g:4877:1: ( ( ( rule__GlobalRelationInterpretation__SymbolAssignment_2 ) ) )
15046 // InternalSolverLanguage.g:4878:1: ( ( rule__GlobalRelationInterpretation__SymbolAssignment_2 ) )
15047 {
15048 // InternalSolverLanguage.g:4878:1: ( ( rule__GlobalRelationInterpretation__SymbolAssignment_2 ) )
15049 // InternalSolverLanguage.g:4879:2: ( rule__GlobalRelationInterpretation__SymbolAssignment_2 )
15050 {
15051 before(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolAssignment_2());
15052 // InternalSolverLanguage.g:4880:2: ( rule__GlobalRelationInterpretation__SymbolAssignment_2 )
15053 // InternalSolverLanguage.g:4880:3: rule__GlobalRelationInterpretation__SymbolAssignment_2
15054 {
15055 pushFollow(FOLLOW_2);
15056 rule__GlobalRelationInterpretation__SymbolAssignment_2();
15057
15058 state._fsp--;
15059
15060
15061 }
15062
15063 after(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolAssignment_2());
15064
15065 }
15066
15067
15068 }
15069
15070 }
15071 catch (RecognitionException re) {
15072 reportError(re);
15073 recover(input,re);
15074 }
15075 finally {
15076
15077 restoreStackSize(stackSize);
15078
15079 }
15080 return ;
15081 }
15082 // $ANTLR end "rule__GlobalRelationInterpretation__Group__2__Impl"
15083
15084
15085 // $ANTLR start "rule__GlobalRelationInterpretation__Group__3"
15086 // InternalSolverLanguage.g:4888:1: rule__GlobalRelationInterpretation__Group__3 : rule__GlobalRelationInterpretation__Group__3__Impl rule__GlobalRelationInterpretation__Group__4 ;
15087 public final void rule__GlobalRelationInterpretation__Group__3() throws RecognitionException {
15088
15089 int stackSize = keepStackSize();
15090
15091 try {
15092 // InternalSolverLanguage.g:4892:1: ( rule__GlobalRelationInterpretation__Group__3__Impl rule__GlobalRelationInterpretation__Group__4 )
15093 // InternalSolverLanguage.g:4893:2: rule__GlobalRelationInterpretation__Group__3__Impl rule__GlobalRelationInterpretation__Group__4
15094 {
15095 pushFollow(FOLLOW_43);
15096 rule__GlobalRelationInterpretation__Group__3__Impl();
15097
15098 state._fsp--;
15099
15100 pushFollow(FOLLOW_2);
15101 rule__GlobalRelationInterpretation__Group__4();
15102
15103 state._fsp--;
15104
15105
15106 }
15107
15108 }
15109 catch (RecognitionException re) {
15110 reportError(re);
15111 recover(input,re);
15112 }
15113 finally {
15114
15115 restoreStackSize(stackSize);
15116
15117 }
15118 return ;
15119 }
15120 // $ANTLR end "rule__GlobalRelationInterpretation__Group__3"
15121
15122
15123 // $ANTLR start "rule__GlobalRelationInterpretation__Group__3__Impl"
15124 // InternalSolverLanguage.g:4900:1: rule__GlobalRelationInterpretation__Group__3__Impl : ( ':' ) ;
15125 public final void rule__GlobalRelationInterpretation__Group__3__Impl() throws RecognitionException {
15126
15127 int stackSize = keepStackSize();
15128
15129 try {
15130 // InternalSolverLanguage.g:4904:1: ( ( ':' ) )
15131 // InternalSolverLanguage.g:4905:1: ( ':' )
15132 {
15133 // InternalSolverLanguage.g:4905:1: ( ':' )
15134 // InternalSolverLanguage.g:4906:2: ':'
15135 {
15136 before(grammarAccess.getGlobalRelationInterpretationAccess().getColonKeyword_3());
15137 match(input,19,FOLLOW_2);
15138 after(grammarAccess.getGlobalRelationInterpretationAccess().getColonKeyword_3());
15139
15140 }
15141
15142
15143 }
15144
15145 }
15146 catch (RecognitionException re) {
15147 reportError(re);
15148 recover(input,re);
15149 }
15150 finally {
15151
15152 restoreStackSize(stackSize);
15153
15154 }
15155 return ;
15156 }
15157 // $ANTLR end "rule__GlobalRelationInterpretation__Group__3__Impl"
15158
15159
15160 // $ANTLR start "rule__GlobalRelationInterpretation__Group__4"
15161 // InternalSolverLanguage.g:4915:1: rule__GlobalRelationInterpretation__Group__4 : rule__GlobalRelationInterpretation__Group__4__Impl rule__GlobalRelationInterpretation__Group__5 ;
15162 public final void rule__GlobalRelationInterpretation__Group__4() throws RecognitionException {
15163
15164 int stackSize = keepStackSize();
15165
15166 try {
15167 // InternalSolverLanguage.g:4919:1: ( rule__GlobalRelationInterpretation__Group__4__Impl rule__GlobalRelationInterpretation__Group__5 )
15168 // InternalSolverLanguage.g:4920:2: rule__GlobalRelationInterpretation__Group__4__Impl rule__GlobalRelationInterpretation__Group__5
15169 {
15170 pushFollow(FOLLOW_43);
15171 rule__GlobalRelationInterpretation__Group__4__Impl();
15172
15173 state._fsp--;
15174
15175 pushFollow(FOLLOW_2);
15176 rule__GlobalRelationInterpretation__Group__5();
15177
15178 state._fsp--;
15179
15180
15181 }
15182
15183 }
15184 catch (RecognitionException re) {
15185 reportError(re);
15186 recover(input,re);
15187 }
15188 finally {
15189
15190 restoreStackSize(stackSize);
15191
15192 }
15193 return ;
15194 }
15195 // $ANTLR end "rule__GlobalRelationInterpretation__Group__4"
15196
15197
15198 // $ANTLR start "rule__GlobalRelationInterpretation__Group__4__Impl"
15199 // InternalSolverLanguage.g:4927:1: rule__GlobalRelationInterpretation__Group__4__Impl : ( ( rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 )? ) ;
15200 public final void rule__GlobalRelationInterpretation__Group__4__Impl() throws RecognitionException {
15201
15202 int stackSize = keepStackSize();
15203
15204 try {
15205 // InternalSolverLanguage.g:4931:1: ( ( ( rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 )? ) )
15206 // InternalSolverLanguage.g:4932:1: ( ( rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 )? )
15207 {
15208 // InternalSolverLanguage.g:4932:1: ( ( rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 )? )
15209 // InternalSolverLanguage.g:4933:2: ( rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 )?
15210 {
15211 before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityAssignment_4());
15212 // InternalSolverLanguage.g:4934:2: ( rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 )?
15213 int alt39=2;
15214 int LA39_0 = input.LA(1);
15215
15216 if ( (LA39_0==RULE_INT) ) {
15217 alt39=1;
15218 }
15219 switch (alt39) {
15220 case 1 :
15221 // InternalSolverLanguage.g:4934:3: rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4
15222 {
15223 pushFollow(FOLLOW_2);
15224 rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4();
15225
15226 state._fsp--;
15227
15228
15229 }
15230 break;
15231
15232 }
15233
15234 after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityAssignment_4());
15235
15236 }
15237
15238
15239 }
15240
15241 }
15242 catch (RecognitionException re) {
15243 reportError(re);
15244 recover(input,re);
15245 }
15246 finally {
15247
15248 restoreStackSize(stackSize);
15249
15250 }
15251 return ;
15252 }
15253 // $ANTLR end "rule__GlobalRelationInterpretation__Group__4__Impl"
15254
15255
15256 // $ANTLR start "rule__GlobalRelationInterpretation__Group__5"
15257 // InternalSolverLanguage.g:4942:1: rule__GlobalRelationInterpretation__Group__5 : rule__GlobalRelationInterpretation__Group__5__Impl rule__GlobalRelationInterpretation__Group__6 ;
15258 public final void rule__GlobalRelationInterpretation__Group__5() throws RecognitionException {
15259
15260 int stackSize = keepStackSize();
15261
15262 try {
15263 // InternalSolverLanguage.g:4946:1: ( rule__GlobalRelationInterpretation__Group__5__Impl rule__GlobalRelationInterpretation__Group__6 )
15264 // InternalSolverLanguage.g:4947:2: rule__GlobalRelationInterpretation__Group__5__Impl rule__GlobalRelationInterpretation__Group__6
15265 {
15266 pushFollow(FOLLOW_43);
15267 rule__GlobalRelationInterpretation__Group__5__Impl();
15268
15269 state._fsp--;
15270
15271 pushFollow(FOLLOW_2);
15272 rule__GlobalRelationInterpretation__Group__6();
15273
15274 state._fsp--;
15275
15276
15277 }
15278
15279 }
15280 catch (RecognitionException re) {
15281 reportError(re);
15282 recover(input,re);
15283 }
15284 finally {
15285
15286 restoreStackSize(stackSize);
15287
15288 }
15289 return ;
15290 }
15291 // $ANTLR end "rule__GlobalRelationInterpretation__Group__5"
15292
15293
15294 // $ANTLR start "rule__GlobalRelationInterpretation__Group__5__Impl"
15295 // InternalSolverLanguage.g:4954:1: rule__GlobalRelationInterpretation__Group__5__Impl : ( ( rule__GlobalRelationInterpretation__SourceAssignment_5 ) ) ;
15296 public final void rule__GlobalRelationInterpretation__Group__5__Impl() throws RecognitionException {
15297
15298 int stackSize = keepStackSize();
15299
15300 try {
15301 // InternalSolverLanguage.g:4958:1: ( ( ( rule__GlobalRelationInterpretation__SourceAssignment_5 ) ) )
15302 // InternalSolverLanguage.g:4959:1: ( ( rule__GlobalRelationInterpretation__SourceAssignment_5 ) )
15303 {
15304 // InternalSolverLanguage.g:4959:1: ( ( rule__GlobalRelationInterpretation__SourceAssignment_5 ) )
15305 // InternalSolverLanguage.g:4960:2: ( rule__GlobalRelationInterpretation__SourceAssignment_5 )
15306 {
15307 before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceAssignment_5());
15308 // InternalSolverLanguage.g:4961:2: ( rule__GlobalRelationInterpretation__SourceAssignment_5 )
15309 // InternalSolverLanguage.g:4961:3: rule__GlobalRelationInterpretation__SourceAssignment_5
15310 {
15311 pushFollow(FOLLOW_2);
15312 rule__GlobalRelationInterpretation__SourceAssignment_5();
15313
15314 state._fsp--;
15315
15316
15317 }
15318
15319 after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceAssignment_5());
15320
15321 }
15322
15323
15324 }
15325
15326 }
15327 catch (RecognitionException re) {
15328 reportError(re);
15329 recover(input,re);
15330 }
15331 finally {
15332
15333 restoreStackSize(stackSize);
15334
15335 }
15336 return ;
15337 }
15338 // $ANTLR end "rule__GlobalRelationInterpretation__Group__5__Impl"
15339
15340
15341 // $ANTLR start "rule__GlobalRelationInterpretation__Group__6"
15342 // InternalSolverLanguage.g:4969:1: rule__GlobalRelationInterpretation__Group__6 : rule__GlobalRelationInterpretation__Group__6__Impl rule__GlobalRelationInterpretation__Group__7 ;
15343 public final void rule__GlobalRelationInterpretation__Group__6() throws RecognitionException {
15344
15345 int stackSize = keepStackSize();
15346
15347 try {
15348 // InternalSolverLanguage.g:4973:1: ( rule__GlobalRelationInterpretation__Group__6__Impl rule__GlobalRelationInterpretation__Group__7 )
15349 // InternalSolverLanguage.g:4974:2: rule__GlobalRelationInterpretation__Group__6__Impl rule__GlobalRelationInterpretation__Group__7
15350 {
15351 pushFollow(FOLLOW_43);
15352 rule__GlobalRelationInterpretation__Group__6__Impl();
15353
15354 state._fsp--;
15355
15356 pushFollow(FOLLOW_2);
15357 rule__GlobalRelationInterpretation__Group__7();
15358
15359 state._fsp--;
15360
15361
15362 }
15363
15364 }
15365 catch (RecognitionException re) {
15366 reportError(re);
15367 recover(input,re);
15368 }
15369 finally {
15370
15371 restoreStackSize(stackSize);
15372
15373 }
15374 return ;
15375 }
15376 // $ANTLR end "rule__GlobalRelationInterpretation__Group__6"
15377
15378
15379 // $ANTLR start "rule__GlobalRelationInterpretation__Group__6__Impl"
15380 // InternalSolverLanguage.g:4981:1: rule__GlobalRelationInterpretation__Group__6__Impl : ( ( rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 )? ) ;
15381 public final void rule__GlobalRelationInterpretation__Group__6__Impl() throws RecognitionException {
15382
15383 int stackSize = keepStackSize();
15384
15385 try {
15386 // InternalSolverLanguage.g:4985:1: ( ( ( rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 )? ) )
15387 // InternalSolverLanguage.g:4986:1: ( ( rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 )? )
15388 {
15389 // InternalSolverLanguage.g:4986:1: ( ( rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 )? )
15390 // InternalSolverLanguage.g:4987:2: ( rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 )?
15391 {
15392 before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityAssignment_6());
15393 // InternalSolverLanguage.g:4988:2: ( rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 )?
15394 int alt40=2;
15395 int LA40_0 = input.LA(1);
15396
15397 if ( (LA40_0==RULE_INT) ) {
15398 alt40=1;
15399 }
15400 switch (alt40) {
15401 case 1 :
15402 // InternalSolverLanguage.g:4988:3: rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6
15403 {
15404 pushFollow(FOLLOW_2);
15405 rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6();
15406
15407 state._fsp--;
15408
15409
15410 }
15411 break;
15412
15413 }
15414
15415 after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityAssignment_6());
15416
15417 }
15418
15419
15420 }
15421
15422 }
15423 catch (RecognitionException re) {
15424 reportError(re);
15425 recover(input,re);
15426 }
15427 finally {
15428
15429 restoreStackSize(stackSize);
15430
15431 }
15432 return ;
15433 }
15434 // $ANTLR end "rule__GlobalRelationInterpretation__Group__6__Impl"
15435
15436
15437 // $ANTLR start "rule__GlobalRelationInterpretation__Group__7"
15438 // InternalSolverLanguage.g:4996:1: rule__GlobalRelationInterpretation__Group__7 : rule__GlobalRelationInterpretation__Group__7__Impl ;
15439 public final void rule__GlobalRelationInterpretation__Group__7() throws RecognitionException {
15440
15441 int stackSize = keepStackSize();
15442
15443 try {
15444 // InternalSolverLanguage.g:5000:1: ( rule__GlobalRelationInterpretation__Group__7__Impl )
15445 // InternalSolverLanguage.g:5001:2: rule__GlobalRelationInterpretation__Group__7__Impl
15446 {
15447 pushFollow(FOLLOW_2);
15448 rule__GlobalRelationInterpretation__Group__7__Impl();
15449
15450 state._fsp--;
15451
15452
15453 }
15454
15455 }
15456 catch (RecognitionException re) {
15457 reportError(re);
15458 recover(input,re);
15459 }
15460 finally {
15461
15462 restoreStackSize(stackSize);
15463
15464 }
15465 return ;
15466 }
15467 // $ANTLR end "rule__GlobalRelationInterpretation__Group__7"
15468
15469
15470 // $ANTLR start "rule__GlobalRelationInterpretation__Group__7__Impl"
15471 // InternalSolverLanguage.g:5007:1: rule__GlobalRelationInterpretation__Group__7__Impl : ( ( rule__GlobalRelationInterpretation__TargetAssignment_7 ) ) ;
15472 public final void rule__GlobalRelationInterpretation__Group__7__Impl() throws RecognitionException {
15473
15474 int stackSize = keepStackSize();
15475
15476 try {
15477 // InternalSolverLanguage.g:5011:1: ( ( ( rule__GlobalRelationInterpretation__TargetAssignment_7 ) ) )
15478 // InternalSolverLanguage.g:5012:1: ( ( rule__GlobalRelationInterpretation__TargetAssignment_7 ) )
15479 {
15480 // InternalSolverLanguage.g:5012:1: ( ( rule__GlobalRelationInterpretation__TargetAssignment_7 ) )
15481 // InternalSolverLanguage.g:5013:2: ( rule__GlobalRelationInterpretation__TargetAssignment_7 )
15482 {
15483 before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetAssignment_7());
15484 // InternalSolverLanguage.g:5014:2: ( rule__GlobalRelationInterpretation__TargetAssignment_7 )
15485 // InternalSolverLanguage.g:5014:3: rule__GlobalRelationInterpretation__TargetAssignment_7
15486 {
15487 pushFollow(FOLLOW_2);
15488 rule__GlobalRelationInterpretation__TargetAssignment_7();
15489
15490 state._fsp--;
15491
15492
15493 }
15494
15495 after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetAssignment_7());
15496
15497 }
15498
15499
15500 }
15501
15502 }
15503 catch (RecognitionException re) {
15504 reportError(re);
15505 recover(input,re);
15506 }
15507 finally {
15508
15509 restoreStackSize(stackSize);
15510
15511 }
15512 return ;
15513 }
15514 // $ANTLR end "rule__GlobalRelationInterpretation__Group__7__Impl"
15515
15516
15517 // $ANTLR start "rule__MultiplicityDefinition__Group__0"
15518 // InternalSolverLanguage.g:5023:1: rule__MultiplicityDefinition__Group__0 : rule__MultiplicityDefinition__Group__0__Impl rule__MultiplicityDefinition__Group__1 ;
15519 public final void rule__MultiplicityDefinition__Group__0() throws RecognitionException {
15520
15521 int stackSize = keepStackSize();
15522
15523 try {
15524 // InternalSolverLanguage.g:5027:1: ( rule__MultiplicityDefinition__Group__0__Impl rule__MultiplicityDefinition__Group__1 )
15525 // InternalSolverLanguage.g:5028:2: rule__MultiplicityDefinition__Group__0__Impl rule__MultiplicityDefinition__Group__1
15526 {
15527 pushFollow(FOLLOW_45);
15528 rule__MultiplicityDefinition__Group__0__Impl();
15529
15530 state._fsp--;
15531
15532 pushFollow(FOLLOW_2);
15533 rule__MultiplicityDefinition__Group__1();
15534
15535 state._fsp--;
15536
15537
15538 }
15539
15540 }
15541 catch (RecognitionException re) {
15542 reportError(re);
15543 recover(input,re);
15544 }
15545 finally {
15546
15547 restoreStackSize(stackSize);
15548
15549 }
15550 return ;
15551 }
15552 // $ANTLR end "rule__MultiplicityDefinition__Group__0"
15553
15554
15555 // $ANTLR start "rule__MultiplicityDefinition__Group__0__Impl"
15556 // InternalSolverLanguage.g:5035:1: rule__MultiplicityDefinition__Group__0__Impl : ( ( rule__MultiplicityDefinition__LowerAssignment_0 ) ) ;
15557 public final void rule__MultiplicityDefinition__Group__0__Impl() throws RecognitionException {
15558
15559 int stackSize = keepStackSize();
15560
15561 try {
15562 // InternalSolverLanguage.g:5039:1: ( ( ( rule__MultiplicityDefinition__LowerAssignment_0 ) ) )
15563 // InternalSolverLanguage.g:5040:1: ( ( rule__MultiplicityDefinition__LowerAssignment_0 ) )
15564 {
15565 // InternalSolverLanguage.g:5040:1: ( ( rule__MultiplicityDefinition__LowerAssignment_0 ) )
15566 // InternalSolverLanguage.g:5041:2: ( rule__MultiplicityDefinition__LowerAssignment_0 )
15567 {
15568 before(grammarAccess.getMultiplicityDefinitionAccess().getLowerAssignment_0());
15569 // InternalSolverLanguage.g:5042:2: ( rule__MultiplicityDefinition__LowerAssignment_0 )
15570 // InternalSolverLanguage.g:5042:3: rule__MultiplicityDefinition__LowerAssignment_0
15571 {
15572 pushFollow(FOLLOW_2);
15573 rule__MultiplicityDefinition__LowerAssignment_0();
15574
15575 state._fsp--;
15576
15577
15578 }
15579
15580 after(grammarAccess.getMultiplicityDefinitionAccess().getLowerAssignment_0());
15581
15582 }
15583
15584
15585 }
15586
15587 }
15588 catch (RecognitionException re) {
15589 reportError(re);
15590 recover(input,re);
15591 }
15592 finally {
15593
15594 restoreStackSize(stackSize);
15595
15596 }
15597 return ;
15598 }
15599 // $ANTLR end "rule__MultiplicityDefinition__Group__0__Impl"
15600
15601
15602 // $ANTLR start "rule__MultiplicityDefinition__Group__1"
15603 // InternalSolverLanguage.g:5050:1: rule__MultiplicityDefinition__Group__1 : rule__MultiplicityDefinition__Group__1__Impl rule__MultiplicityDefinition__Group__2 ;
15604 public final void rule__MultiplicityDefinition__Group__1() throws RecognitionException {
15605
15606 int stackSize = keepStackSize();
15607
15608 try {
15609 // InternalSolverLanguage.g:5054:1: ( rule__MultiplicityDefinition__Group__1__Impl rule__MultiplicityDefinition__Group__2 )
15610 // InternalSolverLanguage.g:5055:2: rule__MultiplicityDefinition__Group__1__Impl rule__MultiplicityDefinition__Group__2
15611 {
15612 pushFollow(FOLLOW_46);
15613 rule__MultiplicityDefinition__Group__1__Impl();
15614
15615 state._fsp--;
15616
15617 pushFollow(FOLLOW_2);
15618 rule__MultiplicityDefinition__Group__2();
15619
15620 state._fsp--;
15621
15622
15623 }
15624
15625 }
15626 catch (RecognitionException re) {
15627 reportError(re);
15628 recover(input,re);
15629 }
15630 finally {
15631
15632 restoreStackSize(stackSize);
15633
15634 }
15635 return ;
15636 }
15637 // $ANTLR end "rule__MultiplicityDefinition__Group__1"
15638
15639
15640 // $ANTLR start "rule__MultiplicityDefinition__Group__1__Impl"
15641 // InternalSolverLanguage.g:5062:1: rule__MultiplicityDefinition__Group__1__Impl : ( '..' ) ;
15642 public final void rule__MultiplicityDefinition__Group__1__Impl() throws RecognitionException {
15643
15644 int stackSize = keepStackSize();
15645
15646 try {
15647 // InternalSolverLanguage.g:5066:1: ( ( '..' ) )
15648 // InternalSolverLanguage.g:5067:1: ( '..' )
15649 {
15650 // InternalSolverLanguage.g:5067:1: ( '..' )
15651 // InternalSolverLanguage.g:5068:2: '..'
15652 {
15653 before(grammarAccess.getMultiplicityDefinitionAccess().getFullStopFullStopKeyword_1());
15654 match(input,38,FOLLOW_2);
15655 after(grammarAccess.getMultiplicityDefinitionAccess().getFullStopFullStopKeyword_1());
15656
15657 }
15658
15659
15660 }
15661
15662 }
15663 catch (RecognitionException re) {
15664 reportError(re);
15665 recover(input,re);
15666 }
15667 finally {
15668
15669 restoreStackSize(stackSize);
15670
15671 }
15672 return ;
15673 }
15674 // $ANTLR end "rule__MultiplicityDefinition__Group__1__Impl"
15675
15676
15677 // $ANTLR start "rule__MultiplicityDefinition__Group__2"
15678 // InternalSolverLanguage.g:5077:1: rule__MultiplicityDefinition__Group__2 : rule__MultiplicityDefinition__Group__2__Impl ;
15679 public final void rule__MultiplicityDefinition__Group__2() throws RecognitionException {
15680
15681 int stackSize = keepStackSize();
15682
15683 try {
15684 // InternalSolverLanguage.g:5081:1: ( rule__MultiplicityDefinition__Group__2__Impl )
15685 // InternalSolverLanguage.g:5082:2: rule__MultiplicityDefinition__Group__2__Impl
15686 {
15687 pushFollow(FOLLOW_2);
15688 rule__MultiplicityDefinition__Group__2__Impl();
15689
15690 state._fsp--;
15691
15692
15693 }
15694
15695 }
15696 catch (RecognitionException re) {
15697 reportError(re);
15698 recover(input,re);
15699 }
15700 finally {
15701
15702 restoreStackSize(stackSize);
15703
15704 }
15705 return ;
15706 }
15707 // $ANTLR end "rule__MultiplicityDefinition__Group__2"
15708
15709
15710 // $ANTLR start "rule__MultiplicityDefinition__Group__2__Impl"
15711 // InternalSolverLanguage.g:5088:1: rule__MultiplicityDefinition__Group__2__Impl : ( ( rule__MultiplicityDefinition__Alternatives_2 ) ) ;
15712 public final void rule__MultiplicityDefinition__Group__2__Impl() throws RecognitionException {
15713
15714 int stackSize = keepStackSize();
15715
15716 try {
15717 // InternalSolverLanguage.g:5092:1: ( ( ( rule__MultiplicityDefinition__Alternatives_2 ) ) )
15718 // InternalSolverLanguage.g:5093:1: ( ( rule__MultiplicityDefinition__Alternatives_2 ) )
15719 {
15720 // InternalSolverLanguage.g:5093:1: ( ( rule__MultiplicityDefinition__Alternatives_2 ) )
15721 // InternalSolverLanguage.g:5094:2: ( rule__MultiplicityDefinition__Alternatives_2 )
15722 {
15723 before(grammarAccess.getMultiplicityDefinitionAccess().getAlternatives_2());
15724 // InternalSolverLanguage.g:5095:2: ( rule__MultiplicityDefinition__Alternatives_2 )
15725 // InternalSolverLanguage.g:5095:3: rule__MultiplicityDefinition__Alternatives_2
15726 {
15727 pushFollow(FOLLOW_2);
15728 rule__MultiplicityDefinition__Alternatives_2();
15729
15730 state._fsp--;
15731
15732
15733 }
15734
15735 after(grammarAccess.getMultiplicityDefinitionAccess().getAlternatives_2());
15736
15737 }
15738
15739
15740 }
15741
15742 }
15743 catch (RecognitionException re) {
15744 reportError(re);
15745 recover(input,re);
15746 }
15747 finally {
15748
15749 restoreStackSize(stackSize);
15750
15751 }
15752 return ;
15753 }
15754 // $ANTLR end "rule__MultiplicityDefinition__Group__2__Impl"
15755
15756
15757 // $ANTLR start "rule__Problem__StatementsAssignment"
15758 // InternalSolverLanguage.g:5104:1: rule__Problem__StatementsAssignment : ( ruleStatement ) ;
15759 public final void rule__Problem__StatementsAssignment() throws RecognitionException {
15760
15761 int stackSize = keepStackSize();
15762
15763 try {
15764 // InternalSolverLanguage.g:5108:1: ( ( ruleStatement ) )
15765 // InternalSolverLanguage.g:5109:2: ( ruleStatement )
15766 {
15767 // InternalSolverLanguage.g:5109:2: ( ruleStatement )
15768 // InternalSolverLanguage.g:5110:3: ruleStatement
15769 {
15770 before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0());
15771 pushFollow(FOLLOW_2);
15772 ruleStatement();
15773
15774 state._fsp--;
15775
15776 after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0());
15777
15778 }
15779
15780
15781 }
15782
15783 }
15784 catch (RecognitionException re) {
15785 reportError(re);
15786 recover(input,re);
15787 }
15788 finally {
15789
15790 restoreStackSize(stackSize);
15791
15792 }
15793 return ;
15794 }
15795 // $ANTLR end "rule__Problem__StatementsAssignment"
15796
15797
15798 // $ANTLR start "rule__BasicInterpretation__SymbolAssignment_0"
15799 // InternalSolverLanguage.g:5119:1: rule__BasicInterpretation__SymbolAssignment_0 : ( ruleSymbol ) ;
15800 public final void rule__BasicInterpretation__SymbolAssignment_0() throws RecognitionException {
15801
15802 int stackSize = keepStackSize();
15803
15804 try {
15805 // InternalSolverLanguage.g:5123:1: ( ( ruleSymbol ) )
15806 // InternalSolverLanguage.g:5124:2: ( ruleSymbol )
15807 {
15808 // InternalSolverLanguage.g:5124:2: ( ruleSymbol )
15809 // InternalSolverLanguage.g:5125:3: ruleSymbol
15810 {
15811 before(grammarAccess.getBasicInterpretationAccess().getSymbolSymbolParserRuleCall_0_0());
15812 pushFollow(FOLLOW_2);
15813 ruleSymbol();
15814
15815 state._fsp--;
15816
15817 after(grammarAccess.getBasicInterpretationAccess().getSymbolSymbolParserRuleCall_0_0());
15818
15819 }
15820
15821
15822 }
15823
15824 }
15825 catch (RecognitionException re) {
15826 reportError(re);
15827 recover(input,re);
15828 }
15829 finally {
15830
15831 restoreStackSize(stackSize);
15832
15833 }
15834 return ;
15835 }
15836 // $ANTLR end "rule__BasicInterpretation__SymbolAssignment_0"
15837
15838
15839 // $ANTLR start "rule__BasicInterpretation__ObjectsAssignment_2"
15840 // InternalSolverLanguage.g:5134:1: rule__BasicInterpretation__ObjectsAssignment_2 : ( ruleComplexObject ) ;
15841 public final void rule__BasicInterpretation__ObjectsAssignment_2() throws RecognitionException {
15842
15843 int stackSize = keepStackSize();
15844
15845 try {
15846 // InternalSolverLanguage.g:5138:1: ( ( ruleComplexObject ) )
15847 // InternalSolverLanguage.g:5139:2: ( ruleComplexObject )
15848 {
15849 // InternalSolverLanguage.g:5139:2: ( ruleComplexObject )
15850 // InternalSolverLanguage.g:5140:3: ruleComplexObject
15851 {
15852 before(grammarAccess.getBasicInterpretationAccess().getObjectsComplexObjectParserRuleCall_2_0());
15853 pushFollow(FOLLOW_2);
15854 ruleComplexObject();
15855
15856 state._fsp--;
15857
15858 after(grammarAccess.getBasicInterpretationAccess().getObjectsComplexObjectParserRuleCall_2_0());
15859
15860 }
15861
15862
15863 }
15864
15865 }
15866 catch (RecognitionException re) {
15867 reportError(re);
15868 recover(input,re);
15869 }
15870 finally {
15871
15872 restoreStackSize(stackSize);
15873
15874 }
15875 return ;
15876 }
15877 // $ANTLR end "rule__BasicInterpretation__ObjectsAssignment_2"
15878
15879
15880 // $ANTLR start "rule__BasicInterpretation__ValueAssignment_5"
15881 // InternalSolverLanguage.g:5149:1: rule__BasicInterpretation__ValueAssignment_5 : ( ruleTruthValue ) ;
15882 public final void rule__BasicInterpretation__ValueAssignment_5() throws RecognitionException {
15883
15884 int stackSize = keepStackSize();
15885
15886 try {
15887 // InternalSolverLanguage.g:5153:1: ( ( ruleTruthValue ) )
15888 // InternalSolverLanguage.g:5154:2: ( ruleTruthValue )
15889 {
15890 // InternalSolverLanguage.g:5154:2: ( ruleTruthValue )
15891 // InternalSolverLanguage.g:5155:3: ruleTruthValue
15892 {
15893 before(grammarAccess.getBasicInterpretationAccess().getValueTruthValueParserRuleCall_5_0());
15894 pushFollow(FOLLOW_2);
15895 ruleTruthValue();
15896
15897 state._fsp--;
15898
15899 after(grammarAccess.getBasicInterpretationAccess().getValueTruthValueParserRuleCall_5_0());
15900
15901 }
15902
15903
15904 }
15905
15906 }
15907 catch (RecognitionException re) {
15908 reportError(re);
15909 recover(input,re);
15910 }
15911 finally {
15912
15913 restoreStackSize(stackSize);
15914
15915 }
15916 return ;
15917 }
15918 // $ANTLR end "rule__BasicInterpretation__ValueAssignment_5"
15919
15920
15921 // $ANTLR start "rule__ModelSymbol__NameAssignment"
15922 // InternalSolverLanguage.g:5164:1: rule__ModelSymbol__NameAssignment : ( RULE_ID ) ;
15923 public final void rule__ModelSymbol__NameAssignment() throws RecognitionException {
15924
15925 int stackSize = keepStackSize();
15926
15927 try {
15928 // InternalSolverLanguage.g:5168:1: ( ( RULE_ID ) )
15929 // InternalSolverLanguage.g:5169:2: ( RULE_ID )
15930 {
15931 // InternalSolverLanguage.g:5169:2: ( RULE_ID )
15932 // InternalSolverLanguage.g:5170:3: RULE_ID
15933 {
15934 before(grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0());
15935 match(input,RULE_ID,FOLLOW_2);
15936 after(grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0());
15937
15938 }
15939
15940
15941 }
15942
15943 }
15944 catch (RecognitionException re) {
15945 reportError(re);
15946 recover(input,re);
15947 }
15948 finally {
15949
15950 restoreStackSize(stackSize);
15951
15952 }
15953 return ;
15954 }
15955 // $ANTLR end "rule__ModelSymbol__NameAssignment"
15956
15957
15958 // $ANTLR start "rule__NamedObject__NameAssignment_1"
15959 // InternalSolverLanguage.g:5179:1: rule__NamedObject__NameAssignment_1 : ( RULE_ID ) ;
15960 public final void rule__NamedObject__NameAssignment_1() throws RecognitionException {
15961
15962 int stackSize = keepStackSize();
15963
15964 try {
15965 // InternalSolverLanguage.g:5183:1: ( ( RULE_ID ) )
15966 // InternalSolverLanguage.g:5184:2: ( RULE_ID )
15967 {
15968 // InternalSolverLanguage.g:5184:2: ( RULE_ID )
15969 // InternalSolverLanguage.g:5185:3: RULE_ID
15970 {
15971 before(grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0());
15972 match(input,RULE_ID,FOLLOW_2);
15973 after(grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0());
15974
15975 }
15976
15977
15978 }
15979
15980 }
15981 catch (RecognitionException re) {
15982 reportError(re);
15983 recover(input,re);
15984 }
15985 finally {
15986
15987 restoreStackSize(stackSize);
15988
15989 }
15990 return ;
15991 }
15992 // $ANTLR end "rule__NamedObject__NameAssignment_1"
15993
15994
15995 // $ANTLR start "rule__UnnamedObject__NameAssignment"
15996 // InternalSolverLanguage.g:5194:1: rule__UnnamedObject__NameAssignment : ( RULE_ID ) ;
15997 public final void rule__UnnamedObject__NameAssignment() throws RecognitionException {
15998
15999 int stackSize = keepStackSize();
16000
16001 try {
16002 // InternalSolverLanguage.g:5198:1: ( ( RULE_ID ) )
16003 // InternalSolverLanguage.g:5199:2: ( RULE_ID )
16004 {
16005 // InternalSolverLanguage.g:5199:2: ( RULE_ID )
16006 // InternalSolverLanguage.g:5200:3: RULE_ID
16007 {
16008 before(grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0());
16009 match(input,RULE_ID,FOLLOW_2);
16010 after(grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0());
16011
16012 }
16013
16014
16015 }
16016
16017 }
16018 catch (RecognitionException re) {
16019 reportError(re);
16020 recover(input,re);
16021 }
16022 finally {
16023
16024 restoreStackSize(stackSize);
16025
16026 }
16027 return ;
16028 }
16029 // $ANTLR end "rule__UnnamedObject__NameAssignment"
16030
16031
16032 // $ANTLR start "rule__BooleanObject__ValueAssignment"
16033 // InternalSolverLanguage.g:5209:1: rule__BooleanObject__ValueAssignment : ( ruleBooleanValue ) ;
16034 public final void rule__BooleanObject__ValueAssignment() throws RecognitionException {
16035
16036 int stackSize = keepStackSize();
16037
16038 try {
16039 // InternalSolverLanguage.g:5213:1: ( ( ruleBooleanValue ) )
16040 // InternalSolverLanguage.g:5214:2: ( ruleBooleanValue )
16041 {
16042 // InternalSolverLanguage.g:5214:2: ( ruleBooleanValue )
16043 // InternalSolverLanguage.g:5215:3: ruleBooleanValue
16044 {
16045 before(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0());
16046 pushFollow(FOLLOW_2);
16047 ruleBooleanValue();
16048
16049 state._fsp--;
16050
16051 after(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0());
16052
16053 }
16054
16055
16056 }
16057
16058 }
16059 catch (RecognitionException re) {
16060 reportError(re);
16061 recover(input,re);
16062 }
16063 finally {
16064
16065 restoreStackSize(stackSize);
16066
16067 }
16068 return ;
16069 }
16070 // $ANTLR end "rule__BooleanObject__ValueAssignment"
16071
16072
16073 // $ANTLR start "rule__IntObject__ValueAssignment"
16074 // InternalSolverLanguage.g:5224:1: rule__IntObject__ValueAssignment : ( ruleINTLiteral ) ;
16075 public final void rule__IntObject__ValueAssignment() throws RecognitionException {
16076
16077 int stackSize = keepStackSize();
16078
16079 try {
16080 // InternalSolverLanguage.g:5228:1: ( ( ruleINTLiteral ) )
16081 // InternalSolverLanguage.g:5229:2: ( ruleINTLiteral )
16082 {
16083 // InternalSolverLanguage.g:5229:2: ( ruleINTLiteral )
16084 // InternalSolverLanguage.g:5230:3: ruleINTLiteral
16085 {
16086 before(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0());
16087 pushFollow(FOLLOW_2);
16088 ruleINTLiteral();
16089
16090 state._fsp--;
16091
16092 after(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0());
16093
16094 }
16095
16096
16097 }
16098
16099 }
16100 catch (RecognitionException re) {
16101 reportError(re);
16102 recover(input,re);
16103 }
16104 finally {
16105
16106 restoreStackSize(stackSize);
16107
16108 }
16109 return ;
16110 }
16111 // $ANTLR end "rule__IntObject__ValueAssignment"
16112
16113
16114 // $ANTLR start "rule__RealObject__ValueAssignment"
16115 // InternalSolverLanguage.g:5239:1: rule__RealObject__ValueAssignment : ( ruleREALLiteral ) ;
16116 public final void rule__RealObject__ValueAssignment() throws RecognitionException {
16117
16118 int stackSize = keepStackSize();
16119
16120 try {
16121 // InternalSolverLanguage.g:5243:1: ( ( ruleREALLiteral ) )
16122 // InternalSolverLanguage.g:5244:2: ( ruleREALLiteral )
16123 {
16124 // InternalSolverLanguage.g:5244:2: ( ruleREALLiteral )
16125 // InternalSolverLanguage.g:5245:3: ruleREALLiteral
16126 {
16127 before(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0());
16128 pushFollow(FOLLOW_2);
16129 ruleREALLiteral();
16130
16131 state._fsp--;
16132
16133 after(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0());
16134
16135 }
16136
16137
16138 }
16139
16140 }
16141 catch (RecognitionException re) {
16142 reportError(re);
16143 recover(input,re);
16144 }
16145 finally {
16146
16147 restoreStackSize(stackSize);
16148
16149 }
16150 return ;
16151 }
16152 // $ANTLR end "rule__RealObject__ValueAssignment"
16153
16154
16155 // $ANTLR start "rule__StringObject__ValueAssignment"
16156 // InternalSolverLanguage.g:5254:1: rule__StringObject__ValueAssignment : ( RULE_STRING ) ;
16157 public final void rule__StringObject__ValueAssignment() throws RecognitionException {
16158
16159 int stackSize = keepStackSize();
16160
16161 try {
16162 // InternalSolverLanguage.g:5258:1: ( ( RULE_STRING ) )
16163 // InternalSolverLanguage.g:5259:2: ( RULE_STRING )
16164 {
16165 // InternalSolverLanguage.g:5259:2: ( RULE_STRING )
16166 // InternalSolverLanguage.g:5260:3: RULE_STRING
16167 {
16168 before(grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0());
16169 match(input,RULE_STRING,FOLLOW_2);
16170 after(grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0());
16171
16172 }
16173
16174
16175 }
16176
16177 }
16178 catch (RecognitionException re) {
16179 reportError(re);
16180 recover(input,re);
16181 }
16182 finally {
16183
16184 restoreStackSize(stackSize);
16185
16186 }
16187 return ;
16188 }
16189 // $ANTLR end "rule__StringObject__ValueAssignment"
16190
16191
16192 // $ANTLR start "rule__PredicateSymbol__SymbolAssignment_1"
16193 // InternalSolverLanguage.g:5269:1: rule__PredicateSymbol__SymbolAssignment_1 : ( ruleModelSymbol ) ;
16194 public final void rule__PredicateSymbol__SymbolAssignment_1() throws RecognitionException {
16195
16196 int stackSize = keepStackSize();
16197
16198 try {
16199 // InternalSolverLanguage.g:5273:1: ( ( ruleModelSymbol ) )
16200 // InternalSolverLanguage.g:5274:2: ( ruleModelSymbol )
16201 {
16202 // InternalSolverLanguage.g:5274:2: ( ruleModelSymbol )
16203 // InternalSolverLanguage.g:5275:3: ruleModelSymbol
16204 {
16205 before(grammarAccess.getPredicateSymbolAccess().getSymbolModelSymbolParserRuleCall_1_0());
16206 pushFollow(FOLLOW_2);
16207 ruleModelSymbol();
16208
16209 state._fsp--;
16210
16211 after(grammarAccess.getPredicateSymbolAccess().getSymbolModelSymbolParserRuleCall_1_0());
16212
16213 }
16214
16215
16216 }
16217
16218 }
16219 catch (RecognitionException re) {
16220 reportError(re);
16221 recover(input,re);
16222 }
16223 finally {
16224
16225 restoreStackSize(stackSize);
16226
16227 }
16228 return ;
16229 }
16230 // $ANTLR end "rule__PredicateSymbol__SymbolAssignment_1"
16231
16232
16233 // $ANTLR start "rule__PredicateSymbol__ParametersAssignment_3"
16234 // InternalSolverLanguage.g:5284:1: rule__PredicateSymbol__ParametersAssignment_3 : ( ruleParameter ) ;
16235 public final void rule__PredicateSymbol__ParametersAssignment_3() throws RecognitionException {
16236
16237 int stackSize = keepStackSize();
16238
16239 try {
16240 // InternalSolverLanguage.g:5288:1: ( ( ruleParameter ) )
16241 // InternalSolverLanguage.g:5289:2: ( ruleParameter )
16242 {
16243 // InternalSolverLanguage.g:5289:2: ( ruleParameter )
16244 // InternalSolverLanguage.g:5290:3: ruleParameter
16245 {
16246 before(grammarAccess.getPredicateSymbolAccess().getParametersParameterParserRuleCall_3_0());
16247 pushFollow(FOLLOW_2);
16248 ruleParameter();
16249
16250 state._fsp--;
16251
16252 after(grammarAccess.getPredicateSymbolAccess().getParametersParameterParserRuleCall_3_0());
16253
16254 }
16255
16256
16257 }
16258
16259 }
16260 catch (RecognitionException re) {
16261 reportError(re);
16262 recover(input,re);
16263 }
16264 finally {
16265
16266 restoreStackSize(stackSize);
16267
16268 }
16269 return ;
16270 }
16271 // $ANTLR end "rule__PredicateSymbol__ParametersAssignment_3"
16272
16273
16274 // $ANTLR start "rule__PredicateSymbol__BodiesAssignment_6_1_0"
16275 // InternalSolverLanguage.g:5299:1: rule__PredicateSymbol__BodiesAssignment_6_1_0 : ( rulePatternBody ) ;
16276 public final void rule__PredicateSymbol__BodiesAssignment_6_1_0() throws RecognitionException {
16277
16278 int stackSize = keepStackSize();
16279
16280 try {
16281 // InternalSolverLanguage.g:5303:1: ( ( rulePatternBody ) )
16282 // InternalSolverLanguage.g:5304:2: ( rulePatternBody )
16283 {
16284 // InternalSolverLanguage.g:5304:2: ( rulePatternBody )
16285 // InternalSolverLanguage.g:5305:3: rulePatternBody
16286 {
16287 before(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_0_0());
16288 pushFollow(FOLLOW_2);
16289 rulePatternBody();
16290
16291 state._fsp--;
16292
16293 after(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_0_0());
16294
16295 }
16296
16297
16298 }
16299
16300 }
16301 catch (RecognitionException re) {
16302 reportError(re);
16303 recover(input,re);
16304 }
16305 finally {
16306
16307 restoreStackSize(stackSize);
16308
16309 }
16310 return ;
16311 }
16312 // $ANTLR end "rule__PredicateSymbol__BodiesAssignment_6_1_0"
16313
16314
16315 // $ANTLR start "rule__PredicateSymbol__BodiesAssignment_6_1_1_1"
16316 // InternalSolverLanguage.g:5314:1: rule__PredicateSymbol__BodiesAssignment_6_1_1_1 : ( rulePatternBody ) ;
16317 public final void rule__PredicateSymbol__BodiesAssignment_6_1_1_1() throws RecognitionException {
16318
16319 int stackSize = keepStackSize();
16320
16321 try {
16322 // InternalSolverLanguage.g:5318:1: ( ( rulePatternBody ) )
16323 // InternalSolverLanguage.g:5319:2: ( rulePatternBody )
16324 {
16325 // InternalSolverLanguage.g:5319:2: ( rulePatternBody )
16326 // InternalSolverLanguage.g:5320:3: rulePatternBody
16327 {
16328 before(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_1_1_0());
16329 pushFollow(FOLLOW_2);
16330 rulePatternBody();
16331
16332 state._fsp--;
16333
16334 after(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_1_1_0());
16335
16336 }
16337
16338
16339 }
16340
16341 }
16342 catch (RecognitionException re) {
16343 reportError(re);
16344 recover(input,re);
16345 }
16346 finally {
16347
16348 restoreStackSize(stackSize);
16349
16350 }
16351 return ;
16352 }
16353 // $ANTLR end "rule__PredicateSymbol__BodiesAssignment_6_1_1_1"
16354
16355
16356 // $ANTLR start "rule__ErrorPredicate__NameAssignment_2"
16357 // InternalSolverLanguage.g:5329:1: rule__ErrorPredicate__NameAssignment_2 : ( RULE_ID ) ;
16358 public final void rule__ErrorPredicate__NameAssignment_2() throws RecognitionException {
16359
16360 int stackSize = keepStackSize();
16361
16362 try {
16363 // InternalSolverLanguage.g:5333:1: ( ( RULE_ID ) )
16364 // InternalSolverLanguage.g:5334:2: ( RULE_ID )
16365 {
16366 // InternalSolverLanguage.g:5334:2: ( RULE_ID )
16367 // InternalSolverLanguage.g:5335:3: RULE_ID
16368 {
16369 before(grammarAccess.getErrorPredicateAccess().getNameIDTerminalRuleCall_2_0());
16370 match(input,RULE_ID,FOLLOW_2);
16371 after(grammarAccess.getErrorPredicateAccess().getNameIDTerminalRuleCall_2_0());
16372
16373 }
16374
16375
16376 }
16377
16378 }
16379 catch (RecognitionException re) {
16380 reportError(re);
16381 recover(input,re);
16382 }
16383 finally {
16384
16385 restoreStackSize(stackSize);
16386
16387 }
16388 return ;
16389 }
16390 // $ANTLR end "rule__ErrorPredicate__NameAssignment_2"
16391
16392
16393 // $ANTLR start "rule__ErrorPredicate__ParametersAssignment_3_1"
16394 // InternalSolverLanguage.g:5344:1: rule__ErrorPredicate__ParametersAssignment_3_1 : ( ruleParameter ) ;
16395 public final void rule__ErrorPredicate__ParametersAssignment_3_1() throws RecognitionException {
16396
16397 int stackSize = keepStackSize();
16398
16399 try {
16400 // InternalSolverLanguage.g:5348:1: ( ( ruleParameter ) )
16401 // InternalSolverLanguage.g:5349:2: ( ruleParameter )
16402 {
16403 // InternalSolverLanguage.g:5349:2: ( ruleParameter )
16404 // InternalSolverLanguage.g:5350:3: ruleParameter
16405 {
16406 before(grammarAccess.getErrorPredicateAccess().getParametersParameterParserRuleCall_3_1_0());
16407 pushFollow(FOLLOW_2);
16408 ruleParameter();
16409
16410 state._fsp--;
16411
16412 after(grammarAccess.getErrorPredicateAccess().getParametersParameterParserRuleCall_3_1_0());
16413
16414 }
16415
16416
16417 }
16418
16419 }
16420 catch (RecognitionException re) {
16421 reportError(re);
16422 recover(input,re);
16423 }
16424 finally {
16425
16426 restoreStackSize(stackSize);
16427
16428 }
16429 return ;
16430 }
16431 // $ANTLR end "rule__ErrorPredicate__ParametersAssignment_3_1"
16432
16433
16434 // $ANTLR start "rule__ErrorPredicate__BodiesAssignment_5_1_0"
16435 // InternalSolverLanguage.g:5359:1: rule__ErrorPredicate__BodiesAssignment_5_1_0 : ( rulePatternBody ) ;
16436 public final void rule__ErrorPredicate__BodiesAssignment_5_1_0() throws RecognitionException {
16437
16438 int stackSize = keepStackSize();
16439
16440 try {
16441 // InternalSolverLanguage.g:5363:1: ( ( rulePatternBody ) )
16442 // InternalSolverLanguage.g:5364:2: ( rulePatternBody )
16443 {
16444 // InternalSolverLanguage.g:5364:2: ( rulePatternBody )
16445 // InternalSolverLanguage.g:5365:3: rulePatternBody
16446 {
16447 before(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_0_0());
16448 pushFollow(FOLLOW_2);
16449 rulePatternBody();
16450
16451 state._fsp--;
16452
16453 after(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_0_0());
16454
16455 }
16456
16457
16458 }
16459
16460 }
16461 catch (RecognitionException re) {
16462 reportError(re);
16463 recover(input,re);
16464 }
16465 finally {
16466
16467 restoreStackSize(stackSize);
16468
16469 }
16470 return ;
16471 }
16472 // $ANTLR end "rule__ErrorPredicate__BodiesAssignment_5_1_0"
16473
16474
16475 // $ANTLR start "rule__ErrorPredicate__BodiesAssignment_5_1_1_1"
16476 // InternalSolverLanguage.g:5374:1: rule__ErrorPredicate__BodiesAssignment_5_1_1_1 : ( rulePatternBody ) ;
16477 public final void rule__ErrorPredicate__BodiesAssignment_5_1_1_1() throws RecognitionException {
16478
16479 int stackSize = keepStackSize();
16480
16481 try {
16482 // InternalSolverLanguage.g:5378:1: ( ( rulePatternBody ) )
16483 // InternalSolverLanguage.g:5379:2: ( rulePatternBody )
16484 {
16485 // InternalSolverLanguage.g:5379:2: ( rulePatternBody )
16486 // InternalSolverLanguage.g:5380:3: rulePatternBody
16487 {
16488 before(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_1_1_0());
16489 pushFollow(FOLLOW_2);
16490 rulePatternBody();
16491
16492 state._fsp--;
16493
16494 after(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_1_1_0());
16495
16496 }
16497
16498
16499 }
16500
16501 }
16502 catch (RecognitionException re) {
16503 reportError(re);
16504 recover(input,re);
16505 }
16506 finally {
16507
16508 restoreStackSize(stackSize);
16509
16510 }
16511 return ;
16512 }
16513 // $ANTLR end "rule__ErrorPredicate__BodiesAssignment_5_1_1_1"
16514
16515
16516 // $ANTLR start "rule__Parameter__VariableAssignment_0"
16517 // InternalSolverLanguage.g:5389:1: rule__Parameter__VariableAssignment_0 : ( ruleVariable ) ;
16518 public final void rule__Parameter__VariableAssignment_0() throws RecognitionException {
16519
16520 int stackSize = keepStackSize();
16521
16522 try {
16523 // InternalSolverLanguage.g:5393:1: ( ( ruleVariable ) )
16524 // InternalSolverLanguage.g:5394:2: ( ruleVariable )
16525 {
16526 // InternalSolverLanguage.g:5394:2: ( ruleVariable )
16527 // InternalSolverLanguage.g:5395:3: ruleVariable
16528 {
16529 before(grammarAccess.getParameterAccess().getVariableVariableParserRuleCall_0_0());
16530 pushFollow(FOLLOW_2);
16531 ruleVariable();
16532
16533 state._fsp--;
16534
16535 after(grammarAccess.getParameterAccess().getVariableVariableParserRuleCall_0_0());
16536
16537 }
16538
16539
16540 }
16541
16542 }
16543 catch (RecognitionException re) {
16544 reportError(re);
16545 recover(input,re);
16546 }
16547 finally {
16548
16549 restoreStackSize(stackSize);
16550
16551 }
16552 return ;
16553 }
16554 // $ANTLR end "rule__Parameter__VariableAssignment_0"
16555
16556
16557 // $ANTLR start "rule__Parameter__TypeAssignment_1_1"
16558 // InternalSolverLanguage.g:5404:1: rule__Parameter__TypeAssignment_1_1 : ( ruleSymbol ) ;
16559 public final void rule__Parameter__TypeAssignment_1_1() throws RecognitionException {
16560
16561 int stackSize = keepStackSize();
16562
16563 try {
16564 // InternalSolverLanguage.g:5408:1: ( ( ruleSymbol ) )
16565 // InternalSolverLanguage.g:5409:2: ( ruleSymbol )
16566 {
16567 // InternalSolverLanguage.g:5409:2: ( ruleSymbol )
16568 // InternalSolverLanguage.g:5410:3: ruleSymbol
16569 {
16570 before(grammarAccess.getParameterAccess().getTypeSymbolParserRuleCall_1_1_0());
16571 pushFollow(FOLLOW_2);
16572 ruleSymbol();
16573
16574 state._fsp--;
16575
16576 after(grammarAccess.getParameterAccess().getTypeSymbolParserRuleCall_1_1_0());
16577
16578 }
16579
16580
16581 }
16582
16583 }
16584 catch (RecognitionException re) {
16585 reportError(re);
16586 recover(input,re);
16587 }
16588 finally {
16589
16590 restoreStackSize(stackSize);
16591
16592 }
16593 return ;
16594 }
16595 // $ANTLR end "rule__Parameter__TypeAssignment_1_1"
16596
16597
16598 // $ANTLR start "rule__PatternBody__ConstraintsAssignment_1_1"
16599 // InternalSolverLanguage.g:5419:1: rule__PatternBody__ConstraintsAssignment_1_1 : ( ruleConstraint ) ;
16600 public final void rule__PatternBody__ConstraintsAssignment_1_1() throws RecognitionException {
16601
16602 int stackSize = keepStackSize();
16603
16604 try {
16605 // InternalSolverLanguage.g:5423:1: ( ( ruleConstraint ) )
16606 // InternalSolverLanguage.g:5424:2: ( ruleConstraint )
16607 {
16608 // InternalSolverLanguage.g:5424:2: ( ruleConstraint )
16609 // InternalSolverLanguage.g:5425:3: ruleConstraint
16610 {
16611 before(grammarAccess.getPatternBodyAccess().getConstraintsConstraintParserRuleCall_1_1_0());
16612 pushFollow(FOLLOW_2);
16613 ruleConstraint();
16614
16615 state._fsp--;
16616
16617 after(grammarAccess.getPatternBodyAccess().getConstraintsConstraintParserRuleCall_1_1_0());
16618
16619 }
16620
16621
16622 }
16623
16624 }
16625 catch (RecognitionException re) {
16626 reportError(re);
16627 recover(input,re);
16628 }
16629 finally {
16630
16631 restoreStackSize(stackSize);
16632
16633 }
16634 return ;
16635 }
16636 // $ANTLR end "rule__PatternBody__ConstraintsAssignment_1_1"
16637
16638
16639 // $ANTLR start "rule__Constraint__PolarityAssignment_0"
16640 // InternalSolverLanguage.g:5434:1: rule__Constraint__PolarityAssignment_0 : ( rulePolarity ) ;
16641 public final void rule__Constraint__PolarityAssignment_0() throws RecognitionException {
16642
16643 int stackSize = keepStackSize();
16644
16645 try {
16646 // InternalSolverLanguage.g:5438:1: ( ( rulePolarity ) )
16647 // InternalSolverLanguage.g:5439:2: ( rulePolarity )
16648 {
16649 // InternalSolverLanguage.g:5439:2: ( rulePolarity )
16650 // InternalSolverLanguage.g:5440:3: rulePolarity
16651 {
16652 before(grammarAccess.getConstraintAccess().getPolarityPolarityParserRuleCall_0_0());
16653 pushFollow(FOLLOW_2);
16654 rulePolarity();
16655
16656 state._fsp--;
16657
16658 after(grammarAccess.getConstraintAccess().getPolarityPolarityParserRuleCall_0_0());
16659
16660 }
16661
16662
16663 }
16664
16665 }
16666 catch (RecognitionException re) {
16667 reportError(re);
16668 recover(input,re);
16669 }
16670 finally {
16671
16672 restoreStackSize(stackSize);
16673
16674 }
16675 return ;
16676 }
16677 // $ANTLR end "rule__Constraint__PolarityAssignment_0"
16678
16679
16680 // $ANTLR start "rule__Constraint__SymbolAssignment_1"
16681 // InternalSolverLanguage.g:5449:1: rule__Constraint__SymbolAssignment_1 : ( ruleModelSymbol ) ;
16682 public final void rule__Constraint__SymbolAssignment_1() throws RecognitionException {
16683
16684 int stackSize = keepStackSize();
16685
16686 try {
16687 // InternalSolverLanguage.g:5453:1: ( ( ruleModelSymbol ) )
16688 // InternalSolverLanguage.g:5454:2: ( ruleModelSymbol )
16689 {
16690 // InternalSolverLanguage.g:5454:2: ( ruleModelSymbol )
16691 // InternalSolverLanguage.g:5455:3: ruleModelSymbol
16692 {
16693 before(grammarAccess.getConstraintAccess().getSymbolModelSymbolParserRuleCall_1_0());
16694 pushFollow(FOLLOW_2);
16695 ruleModelSymbol();
16696
16697 state._fsp--;
16698
16699 after(grammarAccess.getConstraintAccess().getSymbolModelSymbolParserRuleCall_1_0());
16700
16701 }
16702
16703
16704 }
16705
16706 }
16707 catch (RecognitionException re) {
16708 reportError(re);
16709 recover(input,re);
16710 }
16711 finally {
16712
16713 restoreStackSize(stackSize);
16714
16715 }
16716 return ;
16717 }
16718 // $ANTLR end "rule__Constraint__SymbolAssignment_1"
16719
16720
16721 // $ANTLR start "rule__Constraint__ParamsAssignment_2_0_1"
16722 // InternalSolverLanguage.g:5464:1: rule__Constraint__ParamsAssignment_2_0_1 : ( ruleLiteral ) ;
16723 public final void rule__Constraint__ParamsAssignment_2_0_1() throws RecognitionException {
16724
16725 int stackSize = keepStackSize();
16726
16727 try {
16728 // InternalSolverLanguage.g:5468:1: ( ( ruleLiteral ) )
16729 // InternalSolverLanguage.g:5469:2: ( ruleLiteral )
16730 {
16731 // InternalSolverLanguage.g:5469:2: ( ruleLiteral )
16732 // InternalSolverLanguage.g:5470:3: ruleLiteral
16733 {
16734 before(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_0_1_0());
16735 pushFollow(FOLLOW_2);
16736 ruleLiteral();
16737
16738 state._fsp--;
16739
16740 after(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_0_1_0());
16741
16742 }
16743
16744
16745 }
16746
16747 }
16748 catch (RecognitionException re) {
16749 reportError(re);
16750 recover(input,re);
16751 }
16752 finally {
16753
16754 restoreStackSize(stackSize);
16755
16756 }
16757 return ;
16758 }
16759 // $ANTLR end "rule__Constraint__ParamsAssignment_2_0_1"
16760
16761
16762 // $ANTLR start "rule__Constraint__ClosureTypeAssignment_2_1_0"
16763 // InternalSolverLanguage.g:5479:1: rule__Constraint__ClosureTypeAssignment_2_1_0 : ( ruleClosureType ) ;
16764 public final void rule__Constraint__ClosureTypeAssignment_2_1_0() throws RecognitionException {
16765
16766 int stackSize = keepStackSize();
16767
16768 try {
16769 // InternalSolverLanguage.g:5483:1: ( ( ruleClosureType ) )
16770 // InternalSolverLanguage.g:5484:2: ( ruleClosureType )
16771 {
16772 // InternalSolverLanguage.g:5484:2: ( ruleClosureType )
16773 // InternalSolverLanguage.g:5485:3: ruleClosureType
16774 {
16775 before(grammarAccess.getConstraintAccess().getClosureTypeClosureTypeParserRuleCall_2_1_0_0());
16776 pushFollow(FOLLOW_2);
16777 ruleClosureType();
16778
16779 state._fsp--;
16780
16781 after(grammarAccess.getConstraintAccess().getClosureTypeClosureTypeParserRuleCall_2_1_0_0());
16782
16783 }
16784
16785
16786 }
16787
16788 }
16789 catch (RecognitionException re) {
16790 reportError(re);
16791 recover(input,re);
16792 }
16793 finally {
16794
16795 restoreStackSize(stackSize);
16796
16797 }
16798 return ;
16799 }
16800 // $ANTLR end "rule__Constraint__ClosureTypeAssignment_2_1_0"
16801
16802
16803 // $ANTLR start "rule__Constraint__ParamsAssignment_2_1_2"
16804 // InternalSolverLanguage.g:5494:1: rule__Constraint__ParamsAssignment_2_1_2 : ( ruleLiteral ) ;
16805 public final void rule__Constraint__ParamsAssignment_2_1_2() throws RecognitionException {
16806
16807 int stackSize = keepStackSize();
16808
16809 try {
16810 // InternalSolverLanguage.g:5498:1: ( ( ruleLiteral ) )
16811 // InternalSolverLanguage.g:5499:2: ( ruleLiteral )
16812 {
16813 // InternalSolverLanguage.g:5499:2: ( ruleLiteral )
16814 // InternalSolverLanguage.g:5500:3: ruleLiteral
16815 {
16816 before(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_2_0());
16817 pushFollow(FOLLOW_2);
16818 ruleLiteral();
16819
16820 state._fsp--;
16821
16822 after(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_2_0());
16823
16824 }
16825
16826
16827 }
16828
16829 }
16830 catch (RecognitionException re) {
16831 reportError(re);
16832 recover(input,re);
16833 }
16834 finally {
16835
16836 restoreStackSize(stackSize);
16837
16838 }
16839 return ;
16840 }
16841 // $ANTLR end "rule__Constraint__ParamsAssignment_2_1_2"
16842
16843
16844 // $ANTLR start "rule__Constraint__ParamsAssignment_2_1_3"
16845 // InternalSolverLanguage.g:5509:1: rule__Constraint__ParamsAssignment_2_1_3 : ( ruleLiteral ) ;
16846 public final void rule__Constraint__ParamsAssignment_2_1_3() throws RecognitionException {
16847
16848 int stackSize = keepStackSize();
16849
16850 try {
16851 // InternalSolverLanguage.g:5513:1: ( ( ruleLiteral ) )
16852 // InternalSolverLanguage.g:5514:2: ( ruleLiteral )
16853 {
16854 // InternalSolverLanguage.g:5514:2: ( ruleLiteral )
16855 // InternalSolverLanguage.g:5515:3: ruleLiteral
16856 {
16857 before(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_3_0());
16858 pushFollow(FOLLOW_2);
16859 ruleLiteral();
16860
16861 state._fsp--;
16862
16863 after(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_3_0());
16864
16865 }
16866
16867
16868 }
16869
16870 }
16871 catch (RecognitionException re) {
16872 reportError(re);
16873 recover(input,re);
16874 }
16875 finally {
16876
16877 restoreStackSize(stackSize);
16878
16879 }
16880 return ;
16881 }
16882 // $ANTLR end "rule__Constraint__ParamsAssignment_2_1_3"
16883
16884
16885 // $ANTLR start "rule__Variable__NameAssignment"
16886 // InternalSolverLanguage.g:5524:1: rule__Variable__NameAssignment : ( RULE_ID ) ;
16887 public final void rule__Variable__NameAssignment() throws RecognitionException {
16888
16889 int stackSize = keepStackSize();
16890
16891 try {
16892 // InternalSolverLanguage.g:5528:1: ( ( RULE_ID ) )
16893 // InternalSolverLanguage.g:5529:2: ( RULE_ID )
16894 {
16895 // InternalSolverLanguage.g:5529:2: ( RULE_ID )
16896 // InternalSolverLanguage.g:5530:3: RULE_ID
16897 {
16898 before(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0());
16899 match(input,RULE_ID,FOLLOW_2);
16900 after(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0());
16901
16902 }
16903
16904
16905 }
16906
16907 }
16908 catch (RecognitionException re) {
16909 reportError(re);
16910 recover(input,re);
16911 }
16912 finally {
16913
16914 restoreStackSize(stackSize);
16915
16916 }
16917 return ;
16918 }
16919 // $ANTLR end "rule__Variable__NameAssignment"
16920
16921
16922 // $ANTLR start "rule__AllInstances__SymbolAssignment_1"
16923 // InternalSolverLanguage.g:5539:1: rule__AllInstances__SymbolAssignment_1 : ( ruleSymbol ) ;
16924 public final void rule__AllInstances__SymbolAssignment_1() throws RecognitionException {
16925
16926 int stackSize = keepStackSize();
16927
16928 try {
16929 // InternalSolverLanguage.g:5543:1: ( ( ruleSymbol ) )
16930 // InternalSolverLanguage.g:5544:2: ( ruleSymbol )
16931 {
16932 // InternalSolverLanguage.g:5544:2: ( ruleSymbol )
16933 // InternalSolverLanguage.g:5545:3: ruleSymbol
16934 {
16935 before(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0());
16936 pushFollow(FOLLOW_2);
16937 ruleSymbol();
16938
16939 state._fsp--;
16940
16941 after(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0());
16942
16943 }
16944
16945
16946 }
16947
16948 }
16949 catch (RecognitionException re) {
16950 reportError(re);
16951 recover(input,re);
16952 }
16953 finally {
16954
16955 restoreStackSize(stackSize);
16956
16957 }
16958 return ;
16959 }
16960 // $ANTLR end "rule__AllInstances__SymbolAssignment_1"
16961
16962
16963 // $ANTLR start "rule__DefaultInterpretation__InterpretationAssignment_1"
16964 // InternalSolverLanguage.g:5554:1: rule__DefaultInterpretation__InterpretationAssignment_1 : ( ruleBasicInterpretation ) ;
16965 public final void rule__DefaultInterpretation__InterpretationAssignment_1() throws RecognitionException {
16966
16967 int stackSize = keepStackSize();
16968
16969 try {
16970 // InternalSolverLanguage.g:5558:1: ( ( ruleBasicInterpretation ) )
16971 // InternalSolverLanguage.g:5559:2: ( ruleBasicInterpretation )
16972 {
16973 // InternalSolverLanguage.g:5559:2: ( ruleBasicInterpretation )
16974 // InternalSolverLanguage.g:5560:3: ruleBasicInterpretation
16975 {
16976 before(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0());
16977 pushFollow(FOLLOW_2);
16978 ruleBasicInterpretation();
16979
16980 state._fsp--;
16981
16982 after(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0());
16983
16984 }
16985
16986
16987 }
16988
16989 }
16990 catch (RecognitionException re) {
16991 reportError(re);
16992 recover(input,re);
16993 }
16994 finally {
16995
16996 restoreStackSize(stackSize);
16997
16998 }
16999 return ;
17000 }
17001 // $ANTLR end "rule__DefaultInterpretation__InterpretationAssignment_1"
17002
17003
17004 // $ANTLR start "rule__ClassInterpretation__AbstractAssignment_0"
17005 // InternalSolverLanguage.g:5569:1: rule__ClassInterpretation__AbstractAssignment_0 : ( ( 'abstract' ) ) ;
17006 public final void rule__ClassInterpretation__AbstractAssignment_0() throws RecognitionException {
17007
17008 int stackSize = keepStackSize();
17009
17010 try {
17011 // InternalSolverLanguage.g:5573:1: ( ( ( 'abstract' ) ) )
17012 // InternalSolverLanguage.g:5574:2: ( ( 'abstract' ) )
17013 {
17014 // InternalSolverLanguage.g:5574:2: ( ( 'abstract' ) )
17015 // InternalSolverLanguage.g:5575:3: ( 'abstract' )
17016 {
17017 before(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0());
17018 // InternalSolverLanguage.g:5576:3: ( 'abstract' )
17019 // InternalSolverLanguage.g:5577:4: 'abstract'
17020 {
17021 before(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0());
17022 match(input,39,FOLLOW_2);
17023 after(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0());
17024
17025 }
17026
17027 after(grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0());
17028
17029 }
17030
17031
17032 }
17033
17034 }
17035 catch (RecognitionException re) {
17036 reportError(re);
17037 recover(input,re);
17038 }
17039 finally {
17040
17041 restoreStackSize(stackSize);
17042
17043 }
17044 return ;
17045 }
17046 // $ANTLR end "rule__ClassInterpretation__AbstractAssignment_0"
17047
17048
17049 // $ANTLR start "rule__ClassInterpretation__SymbolAssignment_2"
17050 // InternalSolverLanguage.g:5588:1: rule__ClassInterpretation__SymbolAssignment_2 : ( ruleModelSymbol ) ;
17051 public final void rule__ClassInterpretation__SymbolAssignment_2() throws RecognitionException {
17052
17053 int stackSize = keepStackSize();
17054
17055 try {
17056 // InternalSolverLanguage.g:5592:1: ( ( ruleModelSymbol ) )
17057 // InternalSolverLanguage.g:5593:2: ( ruleModelSymbol )
17058 {
17059 // InternalSolverLanguage.g:5593:2: ( ruleModelSymbol )
17060 // InternalSolverLanguage.g:5594:3: ruleModelSymbol
17061 {
17062 before(grammarAccess.getClassInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
17063 pushFollow(FOLLOW_2);
17064 ruleModelSymbol();
17065
17066 state._fsp--;
17067
17068 after(grammarAccess.getClassInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
17069
17070 }
17071
17072
17073 }
17074
17075 }
17076 catch (RecognitionException re) {
17077 reportError(re);
17078 recover(input,re);
17079 }
17080 finally {
17081
17082 restoreStackSize(stackSize);
17083
17084 }
17085 return ;
17086 }
17087 // $ANTLR end "rule__ClassInterpretation__SymbolAssignment_2"
17088
17089
17090 // $ANTLR start "rule__ClassInterpretation__SupertypesAssignment_3_1"
17091 // InternalSolverLanguage.g:5603:1: rule__ClassInterpretation__SupertypesAssignment_3_1 : ( ruleModelSymbol ) ;
17092 public final void rule__ClassInterpretation__SupertypesAssignment_3_1() throws RecognitionException {
17093
17094 int stackSize = keepStackSize();
17095
17096 try {
17097 // InternalSolverLanguage.g:5607:1: ( ( ruleModelSymbol ) )
17098 // InternalSolverLanguage.g:5608:2: ( ruleModelSymbol )
17099 {
17100 // InternalSolverLanguage.g:5608:2: ( ruleModelSymbol )
17101 // InternalSolverLanguage.g:5609:3: ruleModelSymbol
17102 {
17103 before(grammarAccess.getClassInterpretationAccess().getSupertypesModelSymbolParserRuleCall_3_1_0());
17104 pushFollow(FOLLOW_2);
17105 ruleModelSymbol();
17106
17107 state._fsp--;
17108
17109 after(grammarAccess.getClassInterpretationAccess().getSupertypesModelSymbolParserRuleCall_3_1_0());
17110
17111 }
17112
17113
17114 }
17115
17116 }
17117 catch (RecognitionException re) {
17118 reportError(re);
17119 recover(input,re);
17120 }
17121 finally {
17122
17123 restoreStackSize(stackSize);
17124
17125 }
17126 return ;
17127 }
17128 // $ANTLR end "rule__ClassInterpretation__SupertypesAssignment_3_1"
17129
17130
17131 // $ANTLR start "rule__ClassInterpretation__FieltAssignment_5"
17132 // InternalSolverLanguage.g:5618:1: rule__ClassInterpretation__FieltAssignment_5 : ( ruleFieldRelationInterpretation ) ;
17133 public final void rule__ClassInterpretation__FieltAssignment_5() throws RecognitionException {
17134
17135 int stackSize = keepStackSize();
17136
17137 try {
17138 // InternalSolverLanguage.g:5622:1: ( ( ruleFieldRelationInterpretation ) )
17139 // InternalSolverLanguage.g:5623:2: ( ruleFieldRelationInterpretation )
17140 {
17141 // InternalSolverLanguage.g:5623:2: ( ruleFieldRelationInterpretation )
17142 // InternalSolverLanguage.g:5624:3: ruleFieldRelationInterpretation
17143 {
17144 before(grammarAccess.getClassInterpretationAccess().getFieltFieldRelationInterpretationParserRuleCall_5_0());
17145 pushFollow(FOLLOW_2);
17146 ruleFieldRelationInterpretation();
17147
17148 state._fsp--;
17149
17150 after(grammarAccess.getClassInterpretationAccess().getFieltFieldRelationInterpretationParserRuleCall_5_0());
17151
17152 }
17153
17154
17155 }
17156
17157 }
17158 catch (RecognitionException re) {
17159 reportError(re);
17160 recover(input,re);
17161 }
17162 finally {
17163
17164 restoreStackSize(stackSize);
17165
17166 }
17167 return ;
17168 }
17169 // $ANTLR end "rule__ClassInterpretation__FieltAssignment_5"
17170
17171
17172 // $ANTLR start "rule__EnumInterpretation__SymbolAssignment_1"
17173 // InternalSolverLanguage.g:5633:1: rule__EnumInterpretation__SymbolAssignment_1 : ( ruleModelSymbol ) ;
17174 public final void rule__EnumInterpretation__SymbolAssignment_1() throws RecognitionException {
17175
17176 int stackSize = keepStackSize();
17177
17178 try {
17179 // InternalSolverLanguage.g:5637:1: ( ( ruleModelSymbol ) )
17180 // InternalSolverLanguage.g:5638:2: ( ruleModelSymbol )
17181 {
17182 // InternalSolverLanguage.g:5638:2: ( ruleModelSymbol )
17183 // InternalSolverLanguage.g:5639:3: ruleModelSymbol
17184 {
17185 before(grammarAccess.getEnumInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
17186 pushFollow(FOLLOW_2);
17187 ruleModelSymbol();
17188
17189 state._fsp--;
17190
17191 after(grammarAccess.getEnumInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
17192
17193 }
17194
17195
17196 }
17197
17198 }
17199 catch (RecognitionException re) {
17200 reportError(re);
17201 recover(input,re);
17202 }
17203 finally {
17204
17205 restoreStackSize(stackSize);
17206
17207 }
17208 return ;
17209 }
17210 // $ANTLR end "rule__EnumInterpretation__SymbolAssignment_1"
17211
17212
17213 // $ANTLR start "rule__EnumInterpretation__ObjectsAssignment_3"
17214 // InternalSolverLanguage.g:5648:1: rule__EnumInterpretation__ObjectsAssignment_3 : ( ruleNamedObject ) ;
17215 public final void rule__EnumInterpretation__ObjectsAssignment_3() throws RecognitionException {
17216
17217 int stackSize = keepStackSize();
17218
17219 try {
17220 // InternalSolverLanguage.g:5652:1: ( ( ruleNamedObject ) )
17221 // InternalSolverLanguage.g:5653:2: ( ruleNamedObject )
17222 {
17223 // InternalSolverLanguage.g:5653:2: ( ruleNamedObject )
17224 // InternalSolverLanguage.g:5654:3: ruleNamedObject
17225 {
17226 before(grammarAccess.getEnumInterpretationAccess().getObjectsNamedObjectParserRuleCall_3_0());
17227 pushFollow(FOLLOW_2);
17228 ruleNamedObject();
17229
17230 state._fsp--;
17231
17232 after(grammarAccess.getEnumInterpretationAccess().getObjectsNamedObjectParserRuleCall_3_0());
17233
17234 }
17235
17236
17237 }
17238
17239 }
17240 catch (RecognitionException re) {
17241 reportError(re);
17242 recover(input,re);
17243 }
17244 finally {
17245
17246 restoreStackSize(stackSize);
17247
17248 }
17249 return ;
17250 }
17251 // $ANTLR end "rule__EnumInterpretation__ObjectsAssignment_3"
17252
17253
17254 // $ANTLR start "rule__FieldRelationInterpretation__ContainmentAssignment_0"
17255 // InternalSolverLanguage.g:5663:1: rule__FieldRelationInterpretation__ContainmentAssignment_0 : ( ( 'containment' ) ) ;
17256 public final void rule__FieldRelationInterpretation__ContainmentAssignment_0() throws RecognitionException {
17257
17258 int stackSize = keepStackSize();
17259
17260 try {
17261 // InternalSolverLanguage.g:5667:1: ( ( ( 'containment' ) ) )
17262 // InternalSolverLanguage.g:5668:2: ( ( 'containment' ) )
17263 {
17264 // InternalSolverLanguage.g:5668:2: ( ( 'containment' ) )
17265 // InternalSolverLanguage.g:5669:3: ( 'containment' )
17266 {
17267 before(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17268 // InternalSolverLanguage.g:5670:3: ( 'containment' )
17269 // InternalSolverLanguage.g:5671:4: 'containment'
17270 {
17271 before(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17272 match(input,40,FOLLOW_2);
17273 after(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17274
17275 }
17276
17277 after(grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17278
17279 }
17280
17281
17282 }
17283
17284 }
17285 catch (RecognitionException re) {
17286 reportError(re);
17287 recover(input,re);
17288 }
17289 finally {
17290
17291 restoreStackSize(stackSize);
17292
17293 }
17294 return ;
17295 }
17296 // $ANTLR end "rule__FieldRelationInterpretation__ContainmentAssignment_0"
17297
17298
17299 // $ANTLR start "rule__FieldRelationInterpretation__SymbolAssignment_1"
17300 // InternalSolverLanguage.g:5682:1: rule__FieldRelationInterpretation__SymbolAssignment_1 : ( ruleModelSymbol ) ;
17301 public final void rule__FieldRelationInterpretation__SymbolAssignment_1() throws RecognitionException {
17302
17303 int stackSize = keepStackSize();
17304
17305 try {
17306 // InternalSolverLanguage.g:5686:1: ( ( ruleModelSymbol ) )
17307 // InternalSolverLanguage.g:5687:2: ( ruleModelSymbol )
17308 {
17309 // InternalSolverLanguage.g:5687:2: ( ruleModelSymbol )
17310 // InternalSolverLanguage.g:5688:3: ruleModelSymbol
17311 {
17312 before(grammarAccess.getFieldRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
17313 pushFollow(FOLLOW_2);
17314 ruleModelSymbol();
17315
17316 state._fsp--;
17317
17318 after(grammarAccess.getFieldRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
17319
17320 }
17321
17322
17323 }
17324
17325 }
17326 catch (RecognitionException re) {
17327 reportError(re);
17328 recover(input,re);
17329 }
17330 finally {
17331
17332 restoreStackSize(stackSize);
17333
17334 }
17335 return ;
17336 }
17337 // $ANTLR end "rule__FieldRelationInterpretation__SymbolAssignment_1"
17338
17339
17340 // $ANTLR start "rule__FieldRelationInterpretation__MultiplicityAssignment_3"
17341 // InternalSolverLanguage.g:5697:1: rule__FieldRelationInterpretation__MultiplicityAssignment_3 : ( ruleMultiplicityDefinition ) ;
17342 public final void rule__FieldRelationInterpretation__MultiplicityAssignment_3() throws RecognitionException {
17343
17344 int stackSize = keepStackSize();
17345
17346 try {
17347 // InternalSolverLanguage.g:5701:1: ( ( ruleMultiplicityDefinition ) )
17348 // InternalSolverLanguage.g:5702:2: ( ruleMultiplicityDefinition )
17349 {
17350 // InternalSolverLanguage.g:5702:2: ( ruleMultiplicityDefinition )
17351 // InternalSolverLanguage.g:5703:3: ruleMultiplicityDefinition
17352 {
17353 before(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityMultiplicityDefinitionParserRuleCall_3_0());
17354 pushFollow(FOLLOW_2);
17355 ruleMultiplicityDefinition();
17356
17357 state._fsp--;
17358
17359 after(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityMultiplicityDefinitionParserRuleCall_3_0());
17360
17361 }
17362
17363
17364 }
17365
17366 }
17367 catch (RecognitionException re) {
17368 reportError(re);
17369 recover(input,re);
17370 }
17371 finally {
17372
17373 restoreStackSize(stackSize);
17374
17375 }
17376 return ;
17377 }
17378 // $ANTLR end "rule__FieldRelationInterpretation__MultiplicityAssignment_3"
17379
17380
17381 // $ANTLR start "rule__FieldRelationInterpretation__TargetAssignment_4"
17382 // InternalSolverLanguage.g:5712:1: rule__FieldRelationInterpretation__TargetAssignment_4 : ( ruleSymbol ) ;
17383 public final void rule__FieldRelationInterpretation__TargetAssignment_4() throws RecognitionException {
17384
17385 int stackSize = keepStackSize();
17386
17387 try {
17388 // InternalSolverLanguage.g:5716:1: ( ( ruleSymbol ) )
17389 // InternalSolverLanguage.g:5717:2: ( ruleSymbol )
17390 {
17391 // InternalSolverLanguage.g:5717:2: ( ruleSymbol )
17392 // InternalSolverLanguage.g:5718:3: ruleSymbol
17393 {
17394 before(grammarAccess.getFieldRelationInterpretationAccess().getTargetSymbolParserRuleCall_4_0());
17395 pushFollow(FOLLOW_2);
17396 ruleSymbol();
17397
17398 state._fsp--;
17399
17400 after(grammarAccess.getFieldRelationInterpretationAccess().getTargetSymbolParserRuleCall_4_0());
17401
17402 }
17403
17404
17405 }
17406
17407 }
17408 catch (RecognitionException re) {
17409 reportError(re);
17410 recover(input,re);
17411 }
17412 finally {
17413
17414 restoreStackSize(stackSize);
17415
17416 }
17417 return ;
17418 }
17419 // $ANTLR end "rule__FieldRelationInterpretation__TargetAssignment_4"
17420
17421
17422 // $ANTLR start "rule__GlobalRelationInterpretation__ContainmentAssignment_0"
17423 // InternalSolverLanguage.g:5727:1: rule__GlobalRelationInterpretation__ContainmentAssignment_0 : ( ( 'containment' ) ) ;
17424 public final void rule__GlobalRelationInterpretation__ContainmentAssignment_0() throws RecognitionException {
17425
17426 int stackSize = keepStackSize();
17427
17428 try {
17429 // InternalSolverLanguage.g:5731:1: ( ( ( 'containment' ) ) )
17430 // InternalSolverLanguage.g:5732:2: ( ( 'containment' ) )
17431 {
17432 // InternalSolverLanguage.g:5732:2: ( ( 'containment' ) )
17433 // InternalSolverLanguage.g:5733:3: ( 'containment' )
17434 {
17435 before(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17436 // InternalSolverLanguage.g:5734:3: ( 'containment' )
17437 // InternalSolverLanguage.g:5735:4: 'containment'
17438 {
17439 before(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17440 match(input,40,FOLLOW_2);
17441 after(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17442
17443 }
17444
17445 after(grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
17446
17447 }
17448
17449
17450 }
17451
17452 }
17453 catch (RecognitionException re) {
17454 reportError(re);
17455 recover(input,re);
17456 }
17457 finally {
17458
17459 restoreStackSize(stackSize);
17460
17461 }
17462 return ;
17463 }
17464 // $ANTLR end "rule__GlobalRelationInterpretation__ContainmentAssignment_0"
17465
17466
17467 // $ANTLR start "rule__GlobalRelationInterpretation__SymbolAssignment_2"
17468 // InternalSolverLanguage.g:5746:1: rule__GlobalRelationInterpretation__SymbolAssignment_2 : ( ruleModelSymbol ) ;
17469 public final void rule__GlobalRelationInterpretation__SymbolAssignment_2() throws RecognitionException {
17470
17471 int stackSize = keepStackSize();
17472
17473 try {
17474 // InternalSolverLanguage.g:5750:1: ( ( ruleModelSymbol ) )
17475 // InternalSolverLanguage.g:5751:2: ( ruleModelSymbol )
17476 {
17477 // InternalSolverLanguage.g:5751:2: ( ruleModelSymbol )
17478 // InternalSolverLanguage.g:5752:3: ruleModelSymbol
17479 {
17480 before(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
17481 pushFollow(FOLLOW_2);
17482 ruleModelSymbol();
17483
17484 state._fsp--;
17485
17486 after(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
17487
17488 }
17489
17490
17491 }
17492
17493 }
17494 catch (RecognitionException re) {
17495 reportError(re);
17496 recover(input,re);
17497 }
17498 finally {
17499
17500 restoreStackSize(stackSize);
17501
17502 }
17503 return ;
17504 }
17505 // $ANTLR end "rule__GlobalRelationInterpretation__SymbolAssignment_2"
17506
17507
17508 // $ANTLR start "rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4"
17509 // InternalSolverLanguage.g:5761:1: rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4 : ( ruleMultiplicityDefinition ) ;
17510 public final void rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4() throws RecognitionException {
17511
17512 int stackSize = keepStackSize();
17513
17514 try {
17515 // InternalSolverLanguage.g:5765:1: ( ( ruleMultiplicityDefinition ) )
17516 // InternalSolverLanguage.g:5766:2: ( ruleMultiplicityDefinition )
17517 {
17518 // InternalSolverLanguage.g:5766:2: ( ruleMultiplicityDefinition )
17519 // InternalSolverLanguage.g:5767:3: ruleMultiplicityDefinition
17520 {
17521 before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0());
17522 pushFollow(FOLLOW_2);
17523 ruleMultiplicityDefinition();
17524
17525 state._fsp--;
17526
17527 after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0());
17528
17529 }
17530
17531
17532 }
17533
17534 }
17535 catch (RecognitionException re) {
17536 reportError(re);
17537 recover(input,re);
17538 }
17539 finally {
17540
17541 restoreStackSize(stackSize);
17542
17543 }
17544 return ;
17545 }
17546 // $ANTLR end "rule__GlobalRelationInterpretation__SourceMultiplicityAssignment_4"
17547
17548
17549 // $ANTLR start "rule__GlobalRelationInterpretation__SourceAssignment_5"
17550 // InternalSolverLanguage.g:5776:1: rule__GlobalRelationInterpretation__SourceAssignment_5 : ( ruleSymbol ) ;
17551 public final void rule__GlobalRelationInterpretation__SourceAssignment_5() throws RecognitionException {
17552
17553 int stackSize = keepStackSize();
17554
17555 try {
17556 // InternalSolverLanguage.g:5780:1: ( ( ruleSymbol ) )
17557 // InternalSolverLanguage.g:5781:2: ( ruleSymbol )
17558 {
17559 // InternalSolverLanguage.g:5781:2: ( ruleSymbol )
17560 // InternalSolverLanguage.g:5782:3: ruleSymbol
17561 {
17562 before(grammarAccess.getGlobalRelationInterpretationAccess().getSourceSymbolParserRuleCall_5_0());
17563 pushFollow(FOLLOW_2);
17564 ruleSymbol();
17565
17566 state._fsp--;
17567
17568 after(grammarAccess.getGlobalRelationInterpretationAccess().getSourceSymbolParserRuleCall_5_0());
17569
17570 }
17571
17572
17573 }
17574
17575 }
17576 catch (RecognitionException re) {
17577 reportError(re);
17578 recover(input,re);
17579 }
17580 finally {
17581
17582 restoreStackSize(stackSize);
17583
17584 }
17585 return ;
17586 }
17587 // $ANTLR end "rule__GlobalRelationInterpretation__SourceAssignment_5"
17588
17589
17590 // $ANTLR start "rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6"
17591 // InternalSolverLanguage.g:5791:1: rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6 : ( ruleMultiplicityDefinition ) ;
17592 public final void rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6() throws RecognitionException {
17593
17594 int stackSize = keepStackSize();
17595
17596 try {
17597 // InternalSolverLanguage.g:5795:1: ( ( ruleMultiplicityDefinition ) )
17598 // InternalSolverLanguage.g:5796:2: ( ruleMultiplicityDefinition )
17599 {
17600 // InternalSolverLanguage.g:5796:2: ( ruleMultiplicityDefinition )
17601 // InternalSolverLanguage.g:5797:3: ruleMultiplicityDefinition
17602 {
17603 before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0());
17604 pushFollow(FOLLOW_2);
17605 ruleMultiplicityDefinition();
17606
17607 state._fsp--;
17608
17609 after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0());
17610
17611 }
17612
17613
17614 }
17615
17616 }
17617 catch (RecognitionException re) {
17618 reportError(re);
17619 recover(input,re);
17620 }
17621 finally {
17622
17623 restoreStackSize(stackSize);
17624
17625 }
17626 return ;
17627 }
17628 // $ANTLR end "rule__GlobalRelationInterpretation__TargetMultiplicityAssignment_6"
17629
17630
17631 // $ANTLR start "rule__GlobalRelationInterpretation__TargetAssignment_7"
17632 // InternalSolverLanguage.g:5806:1: rule__GlobalRelationInterpretation__TargetAssignment_7 : ( ruleSymbol ) ;
17633 public final void rule__GlobalRelationInterpretation__TargetAssignment_7() throws RecognitionException {
17634
17635 int stackSize = keepStackSize();
17636
17637 try {
17638 // InternalSolverLanguage.g:5810:1: ( ( ruleSymbol ) )
17639 // InternalSolverLanguage.g:5811:2: ( ruleSymbol )
17640 {
17641 // InternalSolverLanguage.g:5811:2: ( ruleSymbol )
17642 // InternalSolverLanguage.g:5812:3: ruleSymbol
17643 {
17644 before(grammarAccess.getGlobalRelationInterpretationAccess().getTargetSymbolParserRuleCall_7_0());
17645 pushFollow(FOLLOW_2);
17646 ruleSymbol();
17647
17648 state._fsp--;
17649
17650 after(grammarAccess.getGlobalRelationInterpretationAccess().getTargetSymbolParserRuleCall_7_0());
17651
17652 }
17653
17654
17655 }
17656
17657 }
17658 catch (RecognitionException re) {
17659 reportError(re);
17660 recover(input,re);
17661 }
17662 finally {
17663
17664 restoreStackSize(stackSize);
17665
17666 }
17667 return ;
17668 }
17669 // $ANTLR end "rule__GlobalRelationInterpretation__TargetAssignment_7"
17670
17671
17672 // $ANTLR start "rule__MultiplicityDefinition__LowerAssignment_0"
17673 // InternalSolverLanguage.g:5821:1: rule__MultiplicityDefinition__LowerAssignment_0 : ( RULE_INT ) ;
17674 public final void rule__MultiplicityDefinition__LowerAssignment_0() throws RecognitionException {
17675
17676 int stackSize = keepStackSize();
17677
17678 try {
17679 // InternalSolverLanguage.g:5825:1: ( ( RULE_INT ) )
17680 // InternalSolverLanguage.g:5826:2: ( RULE_INT )
17681 {
17682 // InternalSolverLanguage.g:5826:2: ( RULE_INT )
17683 // InternalSolverLanguage.g:5827:3: RULE_INT
17684 {
17685 before(grammarAccess.getMultiplicityDefinitionAccess().getLowerINTTerminalRuleCall_0_0());
17686 match(input,RULE_INT,FOLLOW_2);
17687 after(grammarAccess.getMultiplicityDefinitionAccess().getLowerINTTerminalRuleCall_0_0());
17688
17689 }
17690
17691
17692 }
17693
17694 }
17695 catch (RecognitionException re) {
17696 reportError(re);
17697 recover(input,re);
17698 }
17699 finally {
17700
17701 restoreStackSize(stackSize);
17702
17703 }
17704 return ;
17705 }
17706 // $ANTLR end "rule__MultiplicityDefinition__LowerAssignment_0"
17707
17708
17709 // $ANTLR start "rule__MultiplicityDefinition__UpperAssignment_2_0"
17710 // InternalSolverLanguage.g:5836:1: rule__MultiplicityDefinition__UpperAssignment_2_0 : ( RULE_INT ) ;
17711 public final void rule__MultiplicityDefinition__UpperAssignment_2_0() throws RecognitionException {
17712
17713 int stackSize = keepStackSize();
17714
17715 try {
17716 // InternalSolverLanguage.g:5840:1: ( ( RULE_INT ) )
17717 // InternalSolverLanguage.g:5841:2: ( RULE_INT )
17718 {
17719 // InternalSolverLanguage.g:5841:2: ( RULE_INT )
17720 // InternalSolverLanguage.g:5842:3: RULE_INT
17721 {
17722 before(grammarAccess.getMultiplicityDefinitionAccess().getUpperINTTerminalRuleCall_2_0_0());
17723 match(input,RULE_INT,FOLLOW_2);
17724 after(grammarAccess.getMultiplicityDefinitionAccess().getUpperINTTerminalRuleCall_2_0_0());
17725
17726 }
17727
17728
17729 }
17730
17731 }
17732 catch (RecognitionException re) {
17733 reportError(re);
17734 recover(input,re);
17735 }
17736 finally {
17737
17738 restoreStackSize(stackSize);
17739
17740 }
17741 return ;
17742 }
17743 // $ANTLR end "rule__MultiplicityDefinition__UpperAssignment_2_0"
17744
17745
17746 // $ANTLR start "rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1"
17747 // InternalSolverLanguage.g:5851:1: rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1 : ( ( '*' ) ) ;
17748 public final void rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1() throws RecognitionException {
17749
17750 int stackSize = keepStackSize();
17751
17752 try {
17753 // InternalSolverLanguage.g:5855:1: ( ( ( '*' ) ) )
17754 // InternalSolverLanguage.g:5856:2: ( ( '*' ) )
17755 {
17756 // InternalSolverLanguage.g:5856:2: ( ( '*' ) )
17757 // InternalSolverLanguage.g:5857:3: ( '*' )
17758 {
17759 before(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0());
17760 // InternalSolverLanguage.g:5858:3: ( '*' )
17761 // InternalSolverLanguage.g:5859:4: '*'
17762 {
17763 before(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0());
17764 match(input,30,FOLLOW_2);
17765 after(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0());
17766
17767 }
17768
17769 after(grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0());
17770
17771 }
17772
17773
17774 }
17775
17776 }
17777 catch (RecognitionException re) {
17778 reportError(re);
17779 recover(input,re);
17780 }
17781 finally {
17782
17783 restoreStackSize(stackSize);
17784
17785 }
17786 return ;
17787 }
17788 // $ANTLR end "rule__MultiplicityDefinition__UnlimitedUpperAssignment_2_1"
17789
17790 // Delegated rules
17791
17792
17793
17794
17795 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
17796 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
17797 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x000001908BF10022L});
17798 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000020002022L});
17799 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000000010L});
17800 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000004000L});
17801 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000001000L});
17802 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000800L});
17803 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000008000L});
17804 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000010000L});
17805 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000020000L});
17806 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x00000000440C3870L});
17807 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000044083872L});
17808 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000080000L});
17809 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000019800L});
17810 public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000000020L});
17811 public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000004000000L});
17812 public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000040020L});
17813 public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000000022L});
17814 public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000020003820L});
17815 public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000010000000L});
17816 public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000010000002L});
17817 public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x000001908BF10020L});
17818 public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000000020020L});
17819 public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000003F00020L});
17820 public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000020000000L});
17821 public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000020002000L});
17822 public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000020002020L});
17823 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000060020000L});
17824 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000004043870L});
17825 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000004003872L});
17826 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000004003870L});
17827 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000040000L});
17828 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000040000000L});
17829 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000044083870L});
17830 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000100000000L});
17831 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000A00000000L});
17832 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000010400000000L});
17833 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000010000000002L});
17834 public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0000000200000000L});
17835 public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000000400000000L});
17836 public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000000004000002L});
17837 public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000003F00030L});
17838 public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0000002000000000L});
17839 public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0000004000000000L});
17840 public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000000040000010L});
17841
17842} \ No newline at end of file
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeModule.xtend b/Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeModule.xtend
new file mode 100644
index 00000000..b251a682
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeModule.xtend
@@ -0,0 +1,11 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ide
5
6
7/**
8 * Use this class to register ide components.
9 */
10class SolverLanguageIdeModule extends AbstractSolverLanguageIdeModule {
11}
diff --git a/Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeSetup.xtend b/Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeSetup.xtend
new file mode 100644
index 00000000..e62468d1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/src/org/eclipse/viatra/solver/language/ide/SolverLanguageIdeSetup.xtend
@@ -0,0 +1,20 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ide
5
6import com.google.inject.Guice
7import org.eclipse.viatra.solver.language.SolverLanguageRuntimeModule
8import org.eclipse.viatra.solver.language.SolverLanguageStandaloneSetup
9import org.eclipse.xtext.util.Modules2
10
11/**
12 * Initialization support for running Xtext languages as language servers.
13 */
14class SolverLanguageIdeSetup extends SolverLanguageStandaloneSetup {
15
16 override createInjector() {
17 Guice.createInjector(Modules2.mixin(new SolverLanguageRuntimeModule, new SolverLanguageIdeModule))
18 }
19
20}
diff --git a/Application/org.eclipse.viatra.solver.language.ide/xtend-gen/org/eclipse/viatra/solver/language/ide/.gitignore b/Application/org.eclipse.viatra.solver.language.ide/xtend-gen/org/eclipse/viatra/solver/language/ide/.gitignore
new file mode 100644
index 00000000..b11ea6c0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ide/xtend-gen/org/eclipse/viatra/solver/language/ide/.gitignore
@@ -0,0 +1,6 @@
1/.SolverLanguageIdeModule.java._trace
2/.SolverLanguageIdeModule.xtendbin
3/.SolverLanguageIdeSetup.java._trace
4/.SolverLanguageIdeSetup.xtendbin
5/SolverLanguageIdeModule.java
6/SolverLanguageIdeSetup.java
diff --git a/Application/org.eclipse.viatra.solver.language.tests/.classpath b/Application/org.eclipse.viatra.solver.language.tests/.classpath
new file mode 100644
index 00000000..5c07a9f3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/.classpath
@@ -0,0 +1,26 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" output="test-bin" path="src">
4 <attributes>
5 <attribute name="test" value="true"/>
6 </attributes>
7 </classpathentry>
8 <classpathentry kind="src" output="test-bin" path="src-gen">
9 <attributes>
10 <attribute name="test" value="true"/>
11 </attributes>
12 </classpathentry>
13 <classpathentry kind="src" output="test-bin" path="xtend-gen">
14 <attributes>
15 <attribute name="test" value="true"/>
16 </attributes>
17 </classpathentry>
18 <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/5">
19 <attributes>
20 <attribute name="test" value="true"/>
21 </attributes>
22 </classpathentry>
23 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
24 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
25 <classpathentry kind="output" path="bin"/>
26</classpath>
diff --git a/Application/org.eclipse.viatra.solver.language.tests/.gitignore b/Application/org.eclipse.viatra.solver.language.tests/.gitignore
new file mode 100644
index 00000000..e75a396d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/.gitignore
@@ -0,0 +1 @@
/test-bin/
diff --git a/Application/org.eclipse.viatra.solver.language.tests/.project b/Application/org.eclipse.viatra.solver.language.tests/.project
new file mode 100644
index 00000000..2b8c0538
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/.project
@@ -0,0 +1,34 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>org.eclipse.viatra.solver.language.tests</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.jdt.core.javabuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.pde.ManifestBuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.SchemaBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 </buildSpec>
29 <natures>
30 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
31 <nature>org.eclipse.jdt.core.javanature</nature>
32 <nature>org.eclipse.pde.PluginNature</nature>
33 </natures>
34</projectDescription>
diff --git a/Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.core.resources.prefs b/Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000..4824b802
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
1eclipse.preferences.version=1
2encoding/<project>=UTF-8
diff --git a/Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.jdt.core.prefs b/Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Application/org.eclipse.viatra.solver.language.tests/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language.tests/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..5fff5688
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
1Manifest-Version: 1.0
2Automatic-Module-Name: org.eclipse.viatra.solver.language.tests
3Bundle-ManifestVersion: 2
4Bundle-Name: org.eclipse.viatra.solver.language.tests
5Bundle-Vendor: My Company
6Bundle-Version: 1.0.0.qualifier
7Bundle-SymbolicName: org.eclipse.viatra.solver.language.tests; singleton:=true
8Bundle-ActivationPolicy: lazy
9Require-Bundle: org.eclipse.viatra.solver.language,
10 org.junit.jupiter.api;bundle-version="[5.0.0,6.0.0)",
11 org.eclipse.xtext.testing,
12 org.eclipse.xtext.xbase.testing,
13 org.eclipse.xtext.xbase.lib;bundle-version="2.14.0"
14Bundle-RequiredExecutionEnvironment: JavaSE-1.8
15Export-Package: org.eclipse.viatra.solver.language.tests;x-internal=true
diff --git a/Application/org.eclipse.viatra.solver.language.tests/build.properties b/Application/org.eclipse.viatra.solver.language.tests/build.properties
new file mode 100644
index 00000000..4c654e9b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/build.properties
@@ -0,0 +1,6 @@
1source.. = src/,\
2 src-gen/,\
3 xtend-gen/
4bin.includes = .,\
5 META-INF/
6bin.excludes = **/*.xtend
diff --git a/Application/org.eclipse.viatra.solver.language.tests/src-gen/org/eclipse/viatra/solver/language/tests/SolverLanguageInjectorProvider.java b/Application/org.eclipse.viatra.solver.language.tests/src-gen/org/eclipse/viatra/solver/language/tests/SolverLanguageInjectorProvider.java
new file mode 100644
index 00000000..f6f7cc26
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/src-gen/org/eclipse/viatra/solver/language/tests/SolverLanguageInjectorProvider.java
@@ -0,0 +1,69 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.tests;
5
6import com.google.inject.Guice;
7import com.google.inject.Injector;
8import org.eclipse.viatra.solver.language.SolverLanguageRuntimeModule;
9import org.eclipse.viatra.solver.language.SolverLanguageStandaloneSetup;
10import org.eclipse.xtext.testing.GlobalRegistries;
11import org.eclipse.xtext.testing.GlobalRegistries.GlobalStateMemento;
12import org.eclipse.xtext.testing.IInjectorProvider;
13import org.eclipse.xtext.testing.IRegistryConfigurator;
14
15public class SolverLanguageInjectorProvider implements IInjectorProvider, IRegistryConfigurator {
16
17 protected GlobalStateMemento stateBeforeInjectorCreation;
18 protected GlobalStateMemento stateAfterInjectorCreation;
19 protected Injector injector;
20
21 static {
22 GlobalRegistries.initializeDefaults();
23 }
24
25 @Override
26 public Injector getInjector() {
27 if (injector == null) {
28 this.injector = internalCreateInjector();
29 stateAfterInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
30 }
31 return injector;
32 }
33
34 protected Injector internalCreateInjector() {
35 return new SolverLanguageStandaloneSetup() {
36 @Override
37 public Injector createInjector() {
38 return Guice.createInjector(createRuntimeModule());
39 }
40 }.createInjectorAndDoEMFRegistration();
41 }
42
43 protected SolverLanguageRuntimeModule createRuntimeModule() {
44 // make it work also with Maven/Tycho and OSGI
45 // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=493672
46 return new SolverLanguageRuntimeModule() {
47 @Override
48 public ClassLoader bindClassLoaderToInstance() {
49 return SolverLanguageInjectorProvider.class
50 .getClassLoader();
51 }
52 };
53 }
54
55 @Override
56 public void restoreRegistry() {
57 stateBeforeInjectorCreation.restoreGlobalState();
58 stateBeforeInjectorCreation = null;
59 }
60
61 @Override
62 public void setupRegistry() {
63 stateBeforeInjectorCreation = GlobalRegistries.makeCopyOfGlobalState();
64 if (injector == null) {
65 getInjector();
66 }
67 stateAfterInjectorCreation.restoreGlobalState();
68 }
69}
diff --git a/Application/org.eclipse.viatra.solver.language.tests/src/org/eclipse/viatra/solver/language/tests/SolverLanguageParsingTest.xtend b/Application/org.eclipse.viatra.solver.language.tests/src/org/eclipse/viatra/solver/language/tests/SolverLanguageParsingTest.xtend
new file mode 100644
index 00000000..eb90bf67
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/src/org/eclipse/viatra/solver/language/tests/SolverLanguageParsingTest.xtend
@@ -0,0 +1,30 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.tests
5
6import com.google.inject.Inject
7import org.eclipse.viatra.solver.language.solverLanguage.Problem
8import org.eclipse.xtext.testing.InjectWith
9import org.eclipse.xtext.testing.extensions.InjectionExtension
10import org.eclipse.xtext.testing.util.ParseHelper
11import org.junit.jupiter.api.Assertions
12import org.junit.jupiter.api.Test
13import org.junit.jupiter.api.^extension.ExtendWith
14
15@ExtendWith(InjectionExtension)
16@InjectWith(SolverLanguageInjectorProvider)
17class SolverLanguageParsingTest {
18 @Inject
19 ParseHelper<Problem> parseHelper
20
21 @Test
22 def void loadModel() {
23 val result = parseHelper.parse('''
24 Hello Xtext!
25 ''')
26 Assertions.assertNotNull(result)
27 val errors = result.eResource.errors
28 Assertions.assertTrue(errors.isEmpty, '''Unexpected errors: «errors.join(", ")»''')
29 }
30}
diff --git a/Application/org.eclipse.viatra.solver.language.tests/xtend-gen/org/eclipse/viatra/solver/language/tests/.gitignore b/Application/org.eclipse.viatra.solver.language.tests/xtend-gen/org/eclipse/viatra/solver/language/tests/.gitignore
new file mode 100644
index 00000000..57fc9539
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.tests/xtend-gen/org/eclipse/viatra/solver/language/tests/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageParsingTest.java._trace
2/.SolverLanguageParsingTest.xtendbin
3/SolverLanguageParsingTest.java
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/.classpath b/Application/org.eclipse.viatra.solver.language.ui.tests/.classpath
new file mode 100644
index 00000000..5c07a9f3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/.classpath
@@ -0,0 +1,26 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" output="test-bin" path="src">
4 <attributes>
5 <attribute name="test" value="true"/>
6 </attributes>
7 </classpathentry>
8 <classpathentry kind="src" output="test-bin" path="src-gen">
9 <attributes>
10 <attribute name="test" value="true"/>
11 </attributes>
12 </classpathentry>
13 <classpathentry kind="src" output="test-bin" path="xtend-gen">
14 <attributes>
15 <attribute name="test" value="true"/>
16 </attributes>
17 </classpathentry>
18 <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/5">
19 <attributes>
20 <attribute name="test" value="true"/>
21 </attributes>
22 </classpathentry>
23 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
24 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
25 <classpathentry kind="output" path="bin"/>
26</classpath>
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/.gitignore b/Application/org.eclipse.viatra.solver.language.ui.tests/.gitignore
new file mode 100644
index 00000000..e75a396d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/.gitignore
@@ -0,0 +1 @@
/test-bin/
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/.project b/Application/org.eclipse.viatra.solver.language.ui.tests/.project
new file mode 100644
index 00000000..8b8929b2
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/.project
@@ -0,0 +1,34 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>org.eclipse.viatra.solver.language.ui.tests</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.jdt.core.javabuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.pde.ManifestBuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.SchemaBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 </buildSpec>
29 <natures>
30 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
31 <nature>org.eclipse.jdt.core.javanature</nature>
32 <nature>org.eclipse.pde.PluginNature</nature>
33 </natures>
34</projectDescription>
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.core.resources.prefs b/Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000..4824b802
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
1eclipse.preferences.version=1
2encoding/<project>=UTF-8
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.jdt.core.prefs b/Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language.ui.tests/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..c95da7ee
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,18 @@
1Manifest-Version: 1.0
2Automatic-Module-Name: org.eclipse.viatra.solver.language.ui.tests
3Bundle-ManifestVersion: 2
4Bundle-Name: org.eclipse.viatra.solver.language.ui.tests
5Bundle-Vendor: My Company
6Bundle-Version: 1.0.0.qualifier
7Bundle-SymbolicName: org.eclipse.viatra.solver.language.ui.tests; singleton:=true
8Bundle-ActivationPolicy: lazy
9Require-Bundle: org.eclipse.viatra.solver.language.ui,
10 org.junit.jupiter.api;bundle-version="[5.0.0,6.0.0)",
11 org.eclipse.xtext.testing,
12 org.eclipse.xtext.xbase.testing,
13 org.eclipse.xtext.junit4,
14 org.eclipse.xtext.xbase.junit,
15 org.eclipse.core.runtime,
16 org.eclipse.ui.workbench;resolution:=optional
17Bundle-RequiredExecutionEnvironment: JavaSE-1.8
18Export-Package: org.eclipse.viatra.solver.language.ui.tests;x-internal=true
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/build.properties b/Application/org.eclipse.viatra.solver.language.ui.tests/build.properties
new file mode 100644
index 00000000..4c654e9b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/build.properties
@@ -0,0 +1,6 @@
1source.. = src/,\
2 src-gen/,\
3 xtend-gen/
4bin.includes = .,\
5 META-INF/
6bin.excludes = **/*.xtend
diff --git a/Application/org.eclipse.viatra.solver.language.ui.tests/src-gen/org/eclipse/viatra/solver/language/ui/tests/SolverLanguageUiInjectorProvider.java b/Application/org.eclipse.viatra.solver.language.ui.tests/src-gen/org/eclipse/viatra/solver/language/ui/tests/SolverLanguageUiInjectorProvider.java
new file mode 100644
index 00000000..189af4be
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui.tests/src-gen/org/eclipse/viatra/solver/language/ui/tests/SolverLanguageUiInjectorProvider.java
@@ -0,0 +1,17 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.tests;
5
6import com.google.inject.Injector;
7import org.eclipse.viatra.solver.language.ui.internal.LanguageActivator;
8import org.eclipse.xtext.testing.IInjectorProvider;
9
10public class SolverLanguageUiInjectorProvider implements IInjectorProvider {
11
12 @Override
13 public Injector getInjector() {
14 return LanguageActivator.getInstance().getInjector("org.eclipse.viatra.solver.language.SolverLanguage");
15 }
16
17}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/.classpath b/Application/org.eclipse.viatra.solver.language.ui/.classpath
new file mode 100644
index 00000000..1287f96c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/.classpath
@@ -0,0 +1,9 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" path="src"/>
4 <classpathentry kind="src" path="src-gen"/>
5 <classpathentry kind="src" path="xtend-gen"/>
6 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
7 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
8 <classpathentry kind="output" path="bin"/>
9</classpath>
diff --git a/Application/org.eclipse.viatra.solver.language.ui/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/.gitignore
new file mode 100644
index 00000000..ae3c1726
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/.gitignore
@@ -0,0 +1 @@
/bin/
diff --git a/Application/org.eclipse.viatra.solver.language.ui/.project b/Application/org.eclipse.viatra.solver.language.ui/.project
new file mode 100644
index 00000000..559df66a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/.project
@@ -0,0 +1,34 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>org.eclipse.viatra.solver.language.ui</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.jdt.core.javabuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.pde.ManifestBuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.SchemaBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 </buildSpec>
29 <natures>
30 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
31 <nature>org.eclipse.jdt.core.javanature</nature>
32 <nature>org.eclipse.pde.PluginNature</nature>
33 </natures>
34</projectDescription>
diff --git a/Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.core.resources.prefs b/Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000..4824b802
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
1eclipse.preferences.version=1
2encoding/<project>=UTF-8
diff --git a/Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.jdt.core.prefs b/Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Application/org.eclipse.viatra.solver.language.ui/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..95a8bf0f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,26 @@
1Manifest-Version: 1.0
2Automatic-Module-Name: org.eclipse.viatra.solver.language.ui
3Bundle-ManifestVersion: 2
4Bundle-Name: org.eclipse.viatra.solver.language.ui
5Bundle-Vendor: My Company
6Bundle-Version: 1.0.0.qualifier
7Bundle-SymbolicName: org.eclipse.viatra.solver.language.ui; singleton:=true
8Bundle-ActivationPolicy: lazy
9Require-Bundle: org.eclipse.viatra.solver.language,
10 org.eclipse.viatra.solver.language.ide,
11 org.eclipse.xtext.ui,
12 org.eclipse.xtext.ui.shared,
13 org.eclipse.xtext.ui.codetemplates.ui,
14 org.eclipse.ui.editors;bundle-version="3.5.0",
15 org.eclipse.ui.ide;bundle-version="3.5.0",
16 org.eclipse.ui,
17 org.eclipse.compare,
18 org.eclipse.xtext.builder,
19 org.eclipse.xtext.xbase.lib;bundle-version="2.14.0",
20 org.eclipse.xtend.lib;bundle-version="2.14.0";resolution:=optional
21Import-Package: org.apache.log4j
22Bundle-RequiredExecutionEnvironment: JavaSE-1.8
23Export-Package: org.eclipse.viatra.solver.language.ui.quickfix,
24 org.eclipse.viatra.solver.language.ui.contentassist,
25 org.eclipse.viatra.solver.language.ui.internal
26Bundle-Activator: org.eclipse.viatra.solver.language.ui.internal.LanguageActivator
diff --git a/Application/org.eclipse.viatra.solver.language.ui/build.properties b/Application/org.eclipse.viatra.solver.language.ui/build.properties
new file mode 100644
index 00000000..4b1fa503
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/build.properties
@@ -0,0 +1,7 @@
1source.. = src/,\
2 src-gen/,\
3 xtend-gen/
4bin.includes = .,\
5 META-INF/,\
6 plugin.xml
7bin.excludes = **/*.xtend
diff --git a/Application/org.eclipse.viatra.solver.language.ui/plugin.xml b/Application/org.eclipse.viatra.solver.language.ui/plugin.xml
new file mode 100644
index 00000000..116798d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/plugin.xml
@@ -0,0 +1,434 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<?eclipse version="3.0"?>
3<plugin>
4 <extension
5 point="org.eclipse.ui.editors">
6 <editor
7 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
8 contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
9 default="true"
10 extensions="vsc"
11 id="org.eclipse.viatra.solver.language.SolverLanguage"
12 name="SolverLanguage Editor">
13 </editor>
14 </extension>
15 <extension
16 point="org.eclipse.ui.handlers">
17 <handler
18 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
19 commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
20 <activeWhen>
21 <reference
22 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
23 </reference>
24 </activeWhen>
25 </handler>
26 <handler
27 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
28 commandId="org.eclipse.viatra.solver.language.SolverLanguage.validate">
29 <activeWhen>
30 <reference
31 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
32 </reference>
33 </activeWhen>
34 </handler>
35 <!-- copy qualified name -->
36 <handler
37 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
38 commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
39 <activeWhen>
40 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened" />
41 </activeWhen>
42 </handler>
43 <handler
44 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
45 commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
46 <activeWhen>
47 <and>
48 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.XtextEditor.opened" />
49 <iterate>
50 <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
51 </iterate>
52 </and>
53 </activeWhen>
54 </handler>
55 </extension>
56 <extension point="org.eclipse.core.expressions.definitions">
57 <definition id="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
58 <and>
59 <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
60 <with variable="activeEditor">
61 <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
62 value="org.eclipse.viatra.solver.language.SolverLanguage"
63 forcePluginActivation="true"/>
64 </with>
65 </and>
66 </definition>
67 <definition id="org.eclipse.viatra.solver.language.SolverLanguage.XtextEditor.opened">
68 <and>
69 <reference definitionId="isXtextEditorActive"/>
70 <with variable="activeEditor">
71 <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName"
72 value="org.eclipse.viatra.solver.language.SolverLanguage"
73 forcePluginActivation="true"/>
74 </with>
75 </and>
76 </definition>
77 </extension>
78 <extension
79 point="org.eclipse.ui.preferencePages">
80 <page
81 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
82 id="org.eclipse.viatra.solver.language.SolverLanguage"
83 name="SolverLanguage">
84 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
85 </page>
86 <page
87 category="org.eclipse.viatra.solver.language.SolverLanguage"
88 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
89 id="org.eclipse.viatra.solver.language.SolverLanguage.coloring"
90 name="Syntax Coloring">
91 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
92 </page>
93 <page
94 category="org.eclipse.viatra.solver.language.SolverLanguage"
95 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
96 id="org.eclipse.viatra.solver.language.SolverLanguage.templates"
97 name="Templates">
98 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
99 </page>
100 </extension>
101 <extension
102 point="org.eclipse.ui.propertyPages">
103 <page
104 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
105 id="org.eclipse.viatra.solver.language.SolverLanguage"
106 name="SolverLanguage">
107 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
108 <enabledWhen>
109 <adapt type="org.eclipse.core.resources.IProject"/>
110 </enabledWhen>
111 <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
112 </page>
113 </extension>
114 <extension
115 point="org.eclipse.ui.keywords">
116 <keyword
117 id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"
118 label="SolverLanguage"/>
119 </extension>
120 <extension
121 point="org.eclipse.ui.commands">
122 <command
123 description="Trigger expensive validation"
124 id="org.eclipse.viatra.solver.language.SolverLanguage.validate"
125 name="Validate">
126 </command>
127 <!-- copy qualified name -->
128 <command
129 id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
130 categoryId="org.eclipse.ui.category.edit"
131 description="Copy the qualified name for the selected element"
132 name="Copy Qualified Name">
133 </command>
134 <command
135 id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
136 categoryId="org.eclipse.ui.category.edit"
137 description="Copy the qualified name for the selected element"
138 name="Copy Qualified Name">
139 </command>
140 </extension>
141 <extension point="org.eclipse.ui.menus">
142 <menuContribution
143 locationURI="popup:#TextEditorContext?after=group.edit">
144 <command
145 commandId="org.eclipse.viatra.solver.language.SolverLanguage.validate"
146 style="push"
147 tooltip="Trigger expensive validation">
148 <visibleWhen checkEnabled="false">
149 <reference
150 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
151 </reference>
152 </visibleWhen>
153 </command>
154 </menuContribution>
155 <!-- copy qualified name -->
156 <menuContribution locationURI="popup:#TextEditorContext?after=copy">
157 <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
158 style="push" tooltip="Copy Qualified Name">
159 <visibleWhen checkEnabled="false">
160 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened" />
161 </visibleWhen>
162 </command>
163 </menuContribution>
164 <menuContribution locationURI="menu:edit?after=copy">
165 <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
166 style="push" tooltip="Copy Qualified Name">
167 <visibleWhen checkEnabled="false">
168 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened" />
169 </visibleWhen>
170 </command>
171 </menuContribution>
172 <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
173 <command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
174 style="push" tooltip="Copy Qualified Name">
175 <visibleWhen checkEnabled="false">
176 <and>
177 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.XtextEditor.opened" />
178 <iterate>
179 <adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
180 </iterate>
181 </and>
182 </visibleWhen>
183 </command>
184 </menuContribution>
185 </extension>
186 <extension point="org.eclipse.ui.menus">
187 <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
188 <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
189 <visibleWhen checkEnabled="false">
190 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
191 </reference>
192 </visibleWhen>
193 </command>
194 </menuContribution>
195 </extension>
196 <extension point="org.eclipse.ui.handlers">
197 <handler
198 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
199 commandId="org.eclipse.xtext.ui.editor.FindReferences">
200 <activeWhen>
201 <reference
202 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
203 </reference>
204 </activeWhen>
205 </handler>
206 </extension>
207 <extension point="org.eclipse.core.contenttype.contentTypes">
208 <content-type
209 base-type="org.eclipse.core.runtime.text"
210 file-extensions="vsc"
211 id="org.eclipse.viatra.solver.language.SolverLanguage.contenttype"
212 name="SolverLanguage File"
213 priority="normal">
214 </content-type>
215 </extension>
216 <!-- adding resource factories -->
217 <extension
218 point="org.eclipse.emf.ecore.extension_parser">
219 <parser
220 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
221 type="vsc">
222 </parser>
223 </extension>
224 <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
225 <resourceServiceProvider
226 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
227 uriExtension="vsc">
228 </resourceServiceProvider>
229 </extension>
230 <!-- marker definitions for org.eclipse.viatra.solver.language.SolverLanguage -->
231 <extension
232 id="solverlanguage.check.fast"
233 name="SolverLanguage Problem"
234 point="org.eclipse.core.resources.markers">
235 <super type="org.eclipse.xtext.ui.check.fast"/>
236 <persistent value="true"/>
237 </extension>
238 <extension
239 id="solverlanguage.check.normal"
240 name="SolverLanguage Problem"
241 point="org.eclipse.core.resources.markers">
242 <super type="org.eclipse.xtext.ui.check.normal"/>
243 <persistent value="true"/>
244 </extension>
245 <extension
246 id="solverlanguage.check.expensive"
247 name="SolverLanguage Problem"
248 point="org.eclipse.core.resources.markers">
249 <super type="org.eclipse.xtext.ui.check.expensive"/>
250 <persistent value="true"/>
251 </extension>
252 <extension point="org.eclipse.ui.preferencePages">
253 <page
254 category="org.eclipse.viatra.solver.language.SolverLanguage"
255 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.validation.ValidatorPreferencePage"
256 id="org.eclipse.viatra.solver.language.SolverLanguage.validator.preferencePage"
257 name="Errors/Warnings">
258 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
259 </page>
260 </extension>
261 <extension point="org.eclipse.xtext.builder.participant">
262 <participant
263 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant"
264 fileExtensions="vsc"/>
265 </extension>
266 <extension point="org.eclipse.ui.preferencePages">
267 <page
268 category="org.eclipse.viatra.solver.language.SolverLanguage"
269 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
270 id="org.eclipse.viatra.solver.language.SolverLanguage.compiler.preferencePage"
271 name="Compiler">
272 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
273 </page>
274 </extension>
275 <extension point="org.eclipse.ui.propertyPages">
276 <page
277 category="org.eclipse.viatra.solver.language.SolverLanguage"
278 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
279 id="org.eclipse.viatra.solver.language.SolverLanguage.compiler.propertyPage"
280 name="Compiler">
281 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
282 <enabledWhen>
283 <adapt type="org.eclipse.core.resources.IProject"/>
284 </enabledWhen>
285 <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
286 </page>
287 </extension>
288 <extension point="org.eclipse.ui.menus">
289 <menuContribution locationURI="popup:#TextEditorContext?after=xtext.ui.openDeclaration">
290 <command
291 commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand"
292 id="org.eclipse.viatra.solver.language.SolverLanguage.OpenGeneratedCode"
293 style="push">
294 <visibleWhen checkEnabled="false">
295 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened" />
296 </visibleWhen>
297 </command>
298 </menuContribution>
299 </extension>
300 <extension point="org.eclipse.ui.handlers">
301 <handler
302 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.generator.trace.OpenGeneratedFileHandler"
303 commandId="org.eclipse.xtext.ui.OpenGeneratedFileCommand">
304 <activeWhen>
305 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened" />
306 </activeWhen>
307 </handler>
308 </extension>
309 <!-- Quick Outline -->
310 <extension
311 point="org.eclipse.ui.handlers">
312 <handler
313 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
314 commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
315 <activeWhen>
316 <reference
317 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
318 </reference>
319 </activeWhen>
320 </handler>
321 </extension>
322 <extension
323 point="org.eclipse.ui.commands">
324 <command
325 description="Open the quick outline."
326 id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
327 name="Quick Outline">
328 </command>
329 </extension>
330 <extension point="org.eclipse.ui.menus">
331 <menuContribution
332 locationURI="popup:#TextEditorContext?after=group.open">
333 <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
334 style="push"
335 tooltip="Open Quick Outline">
336 <visibleWhen checkEnabled="false">
337 <reference definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened"/>
338 </visibleWhen>
339 </command>
340 </menuContribution>
341 </extension>
342 <!-- quickfix marker resolution generator for org.eclipse.viatra.solver.language.SolverLanguage -->
343 <extension
344 point="org.eclipse.ui.ide.markerResolution">
345 <markerResolutionGenerator
346 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
347 markerType="org.eclipse.viatra.solver.language.ui.solverlanguage.check.fast">
348 <attribute
349 name="FIXABLE_KEY"
350 value="true">
351 </attribute>
352 </markerResolutionGenerator>
353 <markerResolutionGenerator
354 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
355 markerType="org.eclipse.viatra.solver.language.ui.solverlanguage.check.normal">
356 <attribute
357 name="FIXABLE_KEY"
358 value="true">
359 </attribute>
360 </markerResolutionGenerator>
361 <markerResolutionGenerator
362 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
363 markerType="org.eclipse.viatra.solver.language.ui.solverlanguage.check.expensive">
364 <attribute
365 name="FIXABLE_KEY"
366 value="true">
367 </attribute>
368 </markerResolutionGenerator>
369 </extension>
370 <!-- Rename Refactoring -->
371 <extension point="org.eclipse.ui.handlers">
372 <handler
373 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
374 commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
375 <activeWhen>
376 <reference
377 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
378 </reference>
379 </activeWhen>
380 </handler>
381 </extension>
382 <extension point="org.eclipse.ui.menus">
383 <menuContribution
384 locationURI="popup:#TextEditorContext?after=group.edit">
385 <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
386 style="push">
387 <visibleWhen checkEnabled="false">
388 <reference
389 definitionId="org.eclipse.viatra.solver.language.SolverLanguage.Editor.opened">
390 </reference>
391 </visibleWhen>
392 </command>
393 </menuContribution>
394 </extension>
395 <extension point="org.eclipse.ui.preferencePages">
396 <page
397 category="org.eclipse.viatra.solver.language.SolverLanguage"
398 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
399 id="org.eclipse.viatra.solver.language.SolverLanguage.refactoring"
400 name="Refactoring">
401 <keywordReference id="org.eclipse.viatra.solver.language.ui.keyword_SolverLanguage"/>
402 </page>
403 </extension>
404 <extension point="org.eclipse.compare.contentViewers">
405 <viewer id="org.eclipse.viatra.solver.language.SolverLanguage.compare.contentViewers"
406 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
407 extensions="vsc">
408 </viewer>
409 <contentTypeBinding
410 contentTypeId="org.eclipse.viatra.solver.language.SolverLanguage.contenttype"
411 contentViewerId="org.eclipse.viatra.solver.language.SolverLanguage.compare.contentViewers" />
412 </extension>
413 <extension point="org.eclipse.compare.contentMergeViewers">
414 <viewer id="org.eclipse.viatra.solver.language.SolverLanguage.compare.contentMergeViewers"
415 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
416 extensions="vsc" label="SolverLanguage Compare">
417 </viewer>
418 <contentTypeBinding
419 contentTypeId="org.eclipse.viatra.solver.language.SolverLanguage.contenttype"
420 contentMergeViewerId="org.eclipse.viatra.solver.language.SolverLanguage.compare.contentMergeViewers" />
421 </extension>
422 <extension point="org.eclipse.ui.editors.documentProviders">
423 <provider id="org.eclipse.viatra.solver.language.SolverLanguage.editors.documentProviders"
424 class="org.eclipse.viatra.solver.language.ui.SolverLanguageExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
425 extensions="vsc">
426 </provider>
427 </extension>
428 <extension point="org.eclipse.team.core.fileTypes">
429 <fileTypes
430 extension="vsc"
431 type="text">
432 </fileTypes>
433 </extension>
434</plugin>
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/AbstractSolverLanguageUiModule.java b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/AbstractSolverLanguageUiModule.java
new file mode 100644
index 00000000..cff29f76
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/AbstractSolverLanguageUiModule.java
@@ -0,0 +1,293 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui;
5
6import com.google.inject.Binder;
7import com.google.inject.Provider;
8import com.google.inject.name.Names;
9import org.eclipse.compare.IViewerCreator;
10import org.eclipse.core.resources.IWorkspaceRoot;
11import org.eclipse.core.resources.ResourcesPlugin;
12import org.eclipse.jface.viewers.ILabelProvider;
13import org.eclipse.ui.plugin.AbstractUIPlugin;
14import org.eclipse.viatra.solver.language.ide.contentassist.antlr.PartialSolverLanguageContentAssistParser;
15import org.eclipse.viatra.solver.language.ide.contentassist.antlr.SolverLanguageParser;
16import org.eclipse.viatra.solver.language.ide.contentassist.antlr.internal.InternalSolverLanguageLexer;
17import org.eclipse.viatra.solver.language.ui.contentassist.SolverLanguageProposalProvider;
18import org.eclipse.viatra.solver.language.ui.labeling.SolverLanguageDescriptionLabelProvider;
19import org.eclipse.viatra.solver.language.ui.labeling.SolverLanguageLabelProvider;
20import org.eclipse.viatra.solver.language.ui.outline.SolverLanguageOutlineTreeProvider;
21import org.eclipse.viatra.solver.language.ui.quickfix.SolverLanguageQuickfixProvider;
22import org.eclipse.viatra.solver.language.validation.SolverLanguageValidatorConfigurationBlock;
23import org.eclipse.xtext.builder.BuilderParticipant;
24import org.eclipse.xtext.builder.EclipseOutputConfigurationProvider;
25import org.eclipse.xtext.builder.IXtextBuilderParticipant;
26import org.eclipse.xtext.builder.builderState.IBuilderState;
27import org.eclipse.xtext.builder.clustering.CurrentDescriptions;
28import org.eclipse.xtext.builder.impl.PersistentDataAwareDirtyResource;
29import org.eclipse.xtext.builder.nature.NatureAddingEditorCallback;
30import org.eclipse.xtext.builder.preferences.BuilderPreferenceAccess;
31import org.eclipse.xtext.generator.IContextualOutputConfigurationProvider;
32import org.eclipse.xtext.ide.LexerIdeBindings;
33import org.eclipse.xtext.ide.editor.contentassist.antlr.IContentAssistParser;
34import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer;
35import org.eclipse.xtext.ide.editor.partialEditing.IPartialEditingContentAssistParser;
36import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider;
37import org.eclipse.xtext.parser.antlr.ITokenDefProvider;
38import org.eclipse.xtext.parser.antlr.LexerProvider;
39import org.eclipse.xtext.resource.IResourceDescriptions;
40import org.eclipse.xtext.resource.containers.IAllContainersState;
41import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider;
42import org.eclipse.xtext.service.SingletonBinding;
43import org.eclipse.xtext.ui.DefaultUiModule;
44import org.eclipse.xtext.ui.UIBindings;
45import org.eclipse.xtext.ui.codetemplates.ui.AccessibleCodetemplatesActivator;
46import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.IPartialEditingContentAssistContextFactory;
47import org.eclipse.xtext.ui.codetemplates.ui.partialEditing.PartialEditingContentAssistContextFactory;
48import org.eclipse.xtext.ui.codetemplates.ui.preferences.AdvancedTemplatesPreferencePage;
49import org.eclipse.xtext.ui.codetemplates.ui.preferences.TemplatesLanguageConfiguration;
50import org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistrar;
51import org.eclipse.xtext.ui.codetemplates.ui.registry.LanguageRegistry;
52import org.eclipse.xtext.ui.compare.DefaultViewerCreator;
53import org.eclipse.xtext.ui.editor.DocumentBasedDirtyResource;
54import org.eclipse.xtext.ui.editor.IXtextEditorCallback;
55import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext;
56import org.eclipse.xtext.ui.editor.contentassist.FQNPrefixMatcher;
57import org.eclipse.xtext.ui.editor.contentassist.IContentProposalProvider;
58import org.eclipse.xtext.ui.editor.contentassist.IProposalConflictHelper;
59import org.eclipse.xtext.ui.editor.contentassist.PrefixMatcher;
60import org.eclipse.xtext.ui.editor.contentassist.antlr.AntlrProposalConflictHelper;
61import org.eclipse.xtext.ui.editor.contentassist.antlr.DelegatingContentAssistContextFactory;
62import org.eclipse.xtext.ui.editor.outline.IOutlineTreeProvider;
63import org.eclipse.xtext.ui.editor.outline.impl.IOutlineTreeStructureProvider;
64import org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreInitializer;
65import org.eclipse.xtext.ui.editor.quickfix.IssueResolutionProvider;
66import org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage;
67import org.eclipse.xtext.ui.refactoring.IDependentElementsCalculator;
68import org.eclipse.xtext.ui.refactoring.IReferenceUpdater;
69import org.eclipse.xtext.ui.refactoring.IRenameRefactoringProvider;
70import org.eclipse.xtext.ui.refactoring.IRenameStrategy;
71import org.eclipse.xtext.ui.refactoring.impl.DefaultDependentElementsCalculator;
72import org.eclipse.xtext.ui.refactoring.impl.DefaultReferenceUpdater;
73import org.eclipse.xtext.ui.refactoring.impl.DefaultRenameRefactoringProvider;
74import org.eclipse.xtext.ui.refactoring.impl.DefaultRenameStrategy;
75import org.eclipse.xtext.ui.refactoring.ui.DefaultRenameSupport;
76import org.eclipse.xtext.ui.refactoring.ui.IRenameSupport;
77import org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferences;
78import org.eclipse.xtext.ui.resource.ResourceServiceDescriptionLabelProvider;
79import org.eclipse.xtext.ui.shared.Access;
80import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock;
81
82/**
83 * Manual modifications go to {@link SolverLanguageUiModule}.
84 */
85@SuppressWarnings("all")
86public abstract class AbstractSolverLanguageUiModule extends DefaultUiModule {
87
88 public AbstractSolverLanguageUiModule(AbstractUIPlugin plugin) {
89 super(plugin);
90 }
91
92 // contributed by org.eclipse.xtext.xtext.generator.ImplicitFragment
93 public Provider<? extends IAllContainersState> provideIAllContainersState() {
94 return Access.getJavaProjectsState();
95 }
96
97 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
98 public Class<? extends IProposalConflictHelper> bindIProposalConflictHelper() {
99 return AntlrProposalConflictHelper.class;
100 }
101
102 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
103 public void configureContentAssistLexer(Binder binder) {
104 binder.bind(Lexer.class)
105 .annotatedWith(Names.named(LexerIdeBindings.CONTENT_ASSIST))
106 .to(InternalSolverLanguageLexer.class);
107 }
108
109 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
110 public void configureHighlightingLexer(Binder binder) {
111 binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class)
112 .annotatedWith(Names.named(LexerIdeBindings.HIGHLIGHTING))
113 .to(org.eclipse.viatra.solver.language.parser.antlr.internal.InternalSolverLanguageLexer.class);
114 }
115
116 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
117 public void configureHighlightingTokenDefProvider(Binder binder) {
118 binder.bind(ITokenDefProvider.class)
119 .annotatedWith(Names.named(LexerIdeBindings.HIGHLIGHTING))
120 .to(AntlrTokenDefProvider.class);
121 }
122
123 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
124 public Class<? extends ContentAssistContext.Factory> bindContentAssistContext$Factory() {
125 return DelegatingContentAssistContextFactory.class;
126 }
127
128 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
129 public Class<? extends IContentAssistParser> bindIContentAssistParser() {
130 return SolverLanguageParser.class;
131 }
132
133 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
134 public void configureContentAssistLexerProvider(Binder binder) {
135 binder.bind(InternalSolverLanguageLexer.class).toProvider(LexerProvider.create(InternalSolverLanguageLexer.class));
136 }
137
138 // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
139 public Class<? extends AbstractValidatorConfigurationBlock> bindAbstractValidatorConfigurationBlock() {
140 return SolverLanguageValidatorConfigurationBlock.class;
141 }
142
143 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
144 public Class<? extends PrefixMatcher> bindPrefixMatcher() {
145 return FQNPrefixMatcher.class;
146 }
147
148 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
149 public Class<? extends IDependentElementsCalculator> bindIDependentElementsCalculator() {
150 return DefaultDependentElementsCalculator.class;
151 }
152
153 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
154 public void configureIResourceDescriptionsBuilderScope(Binder binder) {
155 binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.NAMED_BUILDER_SCOPE)).to(CurrentDescriptions.ResourceSetAware.class);
156 }
157
158 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
159 public Class<? extends IXtextEditorCallback> bindIXtextEditorCallback() {
160 return NatureAddingEditorCallback.class;
161 }
162
163 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
164 public Class<? extends IContextualOutputConfigurationProvider> bindIContextualOutputConfigurationProvider() {
165 return EclipseOutputConfigurationProvider.class;
166 }
167
168 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
169 public void configureIResourceDescriptionsPersisted(Binder binder) {
170 binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(IBuilderState.class);
171 }
172
173 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
174 public Class<? extends DocumentBasedDirtyResource> bindDocumentBasedDirtyResource() {
175 return PersistentDataAwareDirtyResource.class;
176 }
177
178 // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
179 public Class<? extends IXtextBuilderParticipant> bindIXtextBuilderParticipant() {
180 return BuilderParticipant.class;
181 }
182
183 // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
184 public IWorkspaceRoot bindIWorkspaceRootToInstance() {
185 return ResourcesPlugin.getWorkspace().getRoot();
186 }
187
188 // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
189 public void configureBuilderPreferenceStoreInitializer(Binder binder) {
190 binder.bind(IPreferenceStoreInitializer.class)
191 .annotatedWith(Names.named("builderPreferenceInitializer"))
192 .to(BuilderPreferenceAccess.Initializer.class);
193 }
194
195 // contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2
196 public Class<? extends ILabelProvider> bindILabelProvider() {
197 return SolverLanguageLabelProvider.class;
198 }
199
200 // contributed by org.eclipse.xtext.xtext.generator.ui.labeling.LabelProviderFragment2
201 public void configureResourceUIServiceLabelProvider(Binder binder) {
202 binder.bind(ILabelProvider.class).annotatedWith(ResourceServiceDescriptionLabelProvider.class).to(SolverLanguageDescriptionLabelProvider.class);
203 }
204
205 // contributed by org.eclipse.xtext.xtext.generator.ui.outline.OutlineTreeProviderFragment2
206 public Class<? extends IOutlineTreeProvider> bindIOutlineTreeProvider() {
207 return SolverLanguageOutlineTreeProvider.class;
208 }
209
210 // contributed by org.eclipse.xtext.xtext.generator.ui.outline.OutlineTreeProviderFragment2
211 public Class<? extends IOutlineTreeStructureProvider> bindIOutlineTreeStructureProvider() {
212 return SolverLanguageOutlineTreeProvider.class;
213 }
214
215 // contributed by org.eclipse.xtext.xtext.generator.ui.quickfix.QuickfixProviderFragment2
216 public Class<? extends IssueResolutionProvider> bindIssueResolutionProvider() {
217 return SolverLanguageQuickfixProvider.class;
218 }
219
220 // contributed by org.eclipse.xtext.xtext.generator.ui.contentAssist.ContentAssistFragment2
221 public Class<? extends IContentProposalProvider> bindIContentProposalProvider() {
222 return SolverLanguageProposalProvider.class;
223 }
224
225 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
226 public void configureIPreferenceStoreInitializer(Binder binder) {
227 binder.bind(IPreferenceStoreInitializer.class)
228 .annotatedWith(Names.named("RefactoringPreferences"))
229 .to(RefactoringPreferences.Initializer.class);
230 }
231
232 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
233 public Class<? extends IRenameStrategy> bindIRenameStrategy() {
234 return DefaultRenameStrategy.class;
235 }
236
237 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
238 public Class<? extends IReferenceUpdater> bindIReferenceUpdater() {
239 return DefaultReferenceUpdater.class;
240 }
241
242 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
243 public Class<? extends IRenameRefactoringProvider> bindIRenameRefactoringProvider() {
244 return DefaultRenameRefactoringProvider.class;
245 }
246
247 // contributed by org.eclipse.xtext.xtext.generator.ui.refactoring.RefactorElementNameFragment2
248 public Class<? extends IRenameSupport.Factory> bindIRenameSupport$Factory() {
249 return DefaultRenameSupport.Factory.class;
250 }
251
252 // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
253 public Provider<? extends TemplatesLanguageConfiguration> provideTemplatesLanguageConfiguration() {
254 return AccessibleCodetemplatesActivator.getTemplatesLanguageConfigurationProvider();
255 }
256
257 // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
258 public Provider<? extends LanguageRegistry> provideLanguageRegistry() {
259 return AccessibleCodetemplatesActivator.getLanguageRegistry();
260 }
261
262 // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
263 @SingletonBinding(eager=true)
264 public Class<? extends LanguageRegistrar> bindLanguageRegistrar() {
265 return LanguageRegistrar.class;
266 }
267
268 // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
269 public Class<? extends XtextTemplatePreferencePage> bindXtextTemplatePreferencePage() {
270 return AdvancedTemplatesPreferencePage.class;
271 }
272
273 // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
274 public Class<? extends IPartialEditingContentAssistParser> bindIPartialEditingContentAssistParser() {
275 return PartialSolverLanguageContentAssistParser.class;
276 }
277
278 // contributed by org.eclipse.xtext.xtext.generator.ui.templates.CodetemplatesGeneratorFragment2
279 public Class<? extends IPartialEditingContentAssistContextFactory> bindIPartialEditingContentAssistContextFactory() {
280 return PartialEditingContentAssistContextFactory.class;
281 }
282
283 // contributed by org.eclipse.xtext.xtext.generator.ui.compare.CompareFragment2
284 public Class<? extends IViewerCreator> bindIViewerCreator() {
285 return DefaultViewerCreator.class;
286 }
287
288 // contributed by org.eclipse.xtext.xtext.generator.ui.compare.CompareFragment2
289 public void configureCompareViewerTitle(Binder binder) {
290 binder.bind(String.class).annotatedWith(Names.named(UIBindings.COMPARE_VIEWER_TITLE)).toInstance("SolverLanguage Compare");
291 }
292
293}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/SolverLanguageExecutableExtensionFactory.java b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/SolverLanguageExecutableExtensionFactory.java
new file mode 100644
index 00000000..b86c5864
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/SolverLanguageExecutableExtensionFactory.java
@@ -0,0 +1,29 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui;
5
6import com.google.inject.Injector;
7import org.eclipse.core.runtime.Platform;
8import org.eclipse.viatra.solver.language.ui.internal.LanguageActivator;
9import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory;
10import org.osgi.framework.Bundle;
11
12/**
13 * This class was generated. Customizations should only happen in a newly
14 * introduced subclass.
15 */
16public class SolverLanguageExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory {
17
18 @Override
19 protected Bundle getBundle() {
20 return Platform.getBundle(LanguageActivator.PLUGIN_ID);
21 }
22
23 @Override
24 protected Injector getInjector() {
25 LanguageActivator activator = LanguageActivator.getInstance();
26 return activator != null ? activator.getInjector(LanguageActivator.ORG_ECLIPSE_VIATRA_SOLVER_LANGUAGE_SOLVERLANGUAGE) : null;
27 }
28
29}
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
new file mode 100644
index 00000000..ce4d4468
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/contentassist/AbstractSolverLanguageProposalProvider.java
@@ -0,0 +1,300 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.contentassist;
5
6import org.eclipse.emf.ecore.EObject;
7import org.eclipse.xtext.Assignment;
8import org.eclipse.xtext.RuleCall;
9import org.eclipse.xtext.common.ui.contentassist.TerminalsProposalProvider;
10import org.eclipse.xtext.ui.editor.contentassist.ContentAssistContext;
11import org.eclipse.xtext.ui.editor.contentassist.ICompletionProposalAcceptor;
12
13/**
14 * Represents a generated, default implementation of superclass {@link TerminalsProposalProvider}.
15 * Methods are dynamically dispatched on the first parameter, i.e., you can override them
16 * with a more concrete subtype.
17 */
18public abstract class AbstractSolverLanguageProposalProvider extends TerminalsProposalProvider {
19
20 public void completeProblem_Statements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
21 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
22 }
23 public void completeBasicInterpretation_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
24 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
25 }
26 public void completeBasicInterpretation_Objects(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
27 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
28 }
29 public void completeBasicInterpretation_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
30 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
31 }
32 public void completeModelSymbol_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
33 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
34 }
35 public void completeNamedObject_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
36 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
37 }
38 public void completeUnnamedObject_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
39 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
40 }
41 public void completeBooleanObject_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
42 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
43 }
44 public void completeIntObject_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
45 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
46 }
47 public void completeRealObject_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
48 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
49 }
50 public void completeStringObject_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
51 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
52 }
53 public void completePredicateSymbol_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
54 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
55 }
56 public void completePredicateSymbol_Parameters(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
57 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
58 }
59 public void completePredicateSymbol_Bodies(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
60 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
61 }
62 public void completeErrorPredicate_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
63 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
64 }
65 public void completeErrorPredicate_Parameters(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
66 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
67 }
68 public void completeErrorPredicate_Bodies(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
69 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
70 }
71 public void completeParameter_Variable(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
72 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
73 }
74 public void completeParameter_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
75 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
76 }
77 public void completePatternBody_Constraints(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
78 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
79 }
80 public void completeConstraint_Polarity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
81 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
82 }
83 public void completeConstraint_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
84 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
85 }
86 public void completeConstraint_Params(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
87 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
88 }
89 public void completeConstraint_ClosureType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
90 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
91 }
92 public void completeVariable_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
93 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
94 }
95 public void completeAllInstances_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
96 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
97 }
98 public void completeDefaultInterpretation_Interpretation(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
99 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
100 }
101 public void completeClassInterpretation_Abstract(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
102 // subclasses may override
103 }
104 public void completeClassInterpretation_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
105 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
106 }
107 public void completeClassInterpretation_Supertypes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
108 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
109 }
110 public void completeClassInterpretation_Fielt(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
111 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
112 }
113 public void completeEnumInterpretation_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
114 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
115 }
116 public void completeEnumInterpretation_Objects(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
117 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
118 }
119 public void completeFieldRelationInterpretation_Containment(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
120 // subclasses may override
121 }
122 public void completeFieldRelationInterpretation_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
123 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
124 }
125 public void completeFieldRelationInterpretation_Multiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
126 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
127 }
128 public void completeFieldRelationInterpretation_Target(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
129 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
130 }
131 public void completeGlobalRelationInterpretation_Containment(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
132 // subclasses may override
133 }
134 public void completeGlobalRelationInterpretation_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
135 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
136 }
137 public void completeGlobalRelationInterpretation_SourceMultiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
138 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
139 }
140 public void completeGlobalRelationInterpretation_Source(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
141 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
142 }
143 public void completeGlobalRelationInterpretation_TargetMultiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
144 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
145 }
146 public void completeGlobalRelationInterpretation_Target(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
147 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
148 }
149 public void completeMultiplicityDefinition_Lower(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
150 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
151 }
152 public void completeMultiplicityDefinition_Upper(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
153 completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
154 }
155 public void completeMultiplicityDefinition_UnlimitedUpper(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
156 // subclasses may override
157 }
158
159 public void complete_Problem(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
160 // subclasses may override
161 }
162 public void complete_Statement(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
163 // subclasses may override
164 }
165 public void complete_STRING(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
166 // subclasses may override
167 }
168 public void complete_REALLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
169 // subclasses may override
170 }
171 public void complete_INTLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
172 // subclasses may override
173 }
174 public void complete_BooleanValue(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
175 // subclasses may override
176 }
177 public void complete_TruthValue(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
178 // subclasses may override
179 }
180 public void complete_Interpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
181 // subclasses may override
182 }
183 public void complete_BasicInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
184 // subclasses may override
185 }
186 public void complete_Symbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
187 // subclasses may override
188 }
189 public void complete_ModelSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
190 // subclasses may override
191 }
192 public void complete_PartialitySymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
193 // subclasses may override
194 }
195 public void complete_ExistSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
196 // subclasses may override
197 }
198 public void complete_EqualsSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
199 // subclasses may override
200 }
201 public void complete_DataSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
202 // subclasses may override
203 }
204 public void complete_BooleanSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
205 // subclasses may override
206 }
207 public void complete_IntegerSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
208 // subclasses may override
209 }
210 public void complete_RealSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
211 // subclasses may override
212 }
213 public void complete_StringSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
214 // subclasses may override
215 }
216 public void complete_ComplexObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
217 // subclasses may override
218 }
219 public void complete_Object(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
220 // subclasses may override
221 }
222 public void complete_NamedObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
223 // subclasses may override
224 }
225 public void complete_UnnamedObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
226 // subclasses may override
227 }
228 public void complete_DataObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
229 // subclasses may override
230 }
231 public void complete_BooleanObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
232 // subclasses may override
233 }
234 public void complete_IntObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
235 // subclasses may override
236 }
237 public void complete_RealObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
238 // subclasses may override
239 }
240 public void complete_StringObject(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
241 // subclasses may override
242 }
243 public void complete_Predicate(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
244 // subclasses may override
245 }
246 public void complete_PredicateSymbol(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
247 // subclasses may override
248 }
249 public void complete_ErrorPredicate(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
250 // subclasses may override
251 }
252 public void complete_Parameter(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
253 // subclasses may override
254 }
255 public void complete_PatternBody(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
256 // subclasses may override
257 }
258 public void complete_Polarity(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
259 // subclasses may override
260 }
261 public void complete_Constraint(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
262 // subclasses may override
263 }
264 public void complete_ClosureType(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
265 // subclasses may override
266 }
267 public void complete_Literal(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
268 // subclasses may override
269 }
270 public void complete_Variable(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
271 // subclasses may override
272 }
273 public void complete_AllInstances(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
274 // subclasses may override
275 }
276 public void complete_AllObjects(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
277 // subclasses may override
278 }
279 public void complete_DefaultInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
280 // subclasses may override
281 }
282 public void complete_CDInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
283 // subclasses may override
284 }
285 public void complete_ClassInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
286 // subclasses may override
287 }
288 public void complete_EnumInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
289 // subclasses may override
290 }
291 public void complete_FieldRelationInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
292 // subclasses may override
293 }
294 public void complete_GlobalRelationInterpretation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
295 // subclasses may override
296 }
297 public void complete_MultiplicityDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
298 // subclasses may override
299 }
300}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/internal/LanguageActivator.java b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/internal/LanguageActivator.java
new file mode 100644
index 00000000..327cfff1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/internal/LanguageActivator.java
@@ -0,0 +1,94 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.internal;
5
6import com.google.common.collect.Maps;
7import com.google.inject.Guice;
8import com.google.inject.Injector;
9import java.util.Collections;
10import java.util.Map;
11import org.apache.log4j.Logger;
12import org.eclipse.ui.plugin.AbstractUIPlugin;
13import org.eclipse.viatra.solver.language.SolverLanguageRuntimeModule;
14import org.eclipse.viatra.solver.language.ui.SolverLanguageUiModule;
15import org.eclipse.xtext.ui.shared.SharedStateModule;
16import org.eclipse.xtext.util.Modules2;
17import org.osgi.framework.BundleContext;
18
19/**
20 * This class was generated. Customizations should only happen in a newly
21 * introduced subclass.
22 */
23public class LanguageActivator extends AbstractUIPlugin {
24
25 public static final String PLUGIN_ID = "org.eclipse.viatra.solver.language.ui";
26 public static final String ORG_ECLIPSE_VIATRA_SOLVER_LANGUAGE_SOLVERLANGUAGE = "org.eclipse.viatra.solver.language.SolverLanguage";
27
28 private static final Logger logger = Logger.getLogger(LanguageActivator.class);
29
30 private static LanguageActivator INSTANCE;
31
32 private Map<String, Injector> injectors = Collections.synchronizedMap(Maps.<String, Injector> newHashMapWithExpectedSize(1));
33
34 @Override
35 public void start(BundleContext context) throws Exception {
36 super.start(context);
37 INSTANCE = this;
38 }
39
40 @Override
41 public void stop(BundleContext context) throws Exception {
42 injectors.clear();
43 INSTANCE = null;
44 super.stop(context);
45 }
46
47 public static LanguageActivator getInstance() {
48 return INSTANCE;
49 }
50
51 public Injector getInjector(String language) {
52 synchronized (injectors) {
53 Injector injector = injectors.get(language);
54 if (injector == null) {
55 injectors.put(language, injector = createInjector(language));
56 }
57 return injector;
58 }
59 }
60
61 protected Injector createInjector(String language) {
62 try {
63 com.google.inject.Module runtimeModule = getRuntimeModule(language);
64 com.google.inject.Module sharedStateModule = getSharedStateModule();
65 com.google.inject.Module uiModule = getUiModule(language);
66 com.google.inject.Module mergedModule = Modules2.mixin(runtimeModule, sharedStateModule, uiModule);
67 return Guice.createInjector(mergedModule);
68 } catch (Exception e) {
69 logger.error("Failed to create injector for " + language);
70 logger.error(e.getMessage(), e);
71 throw new RuntimeException("Failed to create injector for " + language, e);
72 }
73 }
74
75 protected com.google.inject.Module getRuntimeModule(String grammar) {
76 if (ORG_ECLIPSE_VIATRA_SOLVER_LANGUAGE_SOLVERLANGUAGE.equals(grammar)) {
77 return new SolverLanguageRuntimeModule();
78 }
79 throw new IllegalArgumentException(grammar);
80 }
81
82 protected com.google.inject.Module getUiModule(String grammar) {
83 if (ORG_ECLIPSE_VIATRA_SOLVER_LANGUAGE_SOLVERLANGUAGE.equals(grammar)) {
84 return new SolverLanguageUiModule(this);
85 }
86 throw new IllegalArgumentException(grammar);
87 }
88
89 protected com.google.inject.Module getSharedStateModule() {
90 return new SharedStateModule();
91 }
92
93
94}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageValidatorConfigurationBlock.java b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageValidatorConfigurationBlock.java
new file mode 100644
index 00000000..ad6c3a18
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageValidatorConfigurationBlock.java
@@ -0,0 +1,35 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.validation;
5
6import org.eclipse.jface.dialogs.IDialogSettings;
7import org.eclipse.swt.widgets.Composite;
8import org.eclipse.xtext.ui.validation.AbstractValidatorConfigurationBlock;
9
10@SuppressWarnings("restriction")
11public class SolverLanguageValidatorConfigurationBlock extends AbstractValidatorConfigurationBlock {
12
13 protected static final String SETTINGS_SECTION_NAME = "SolverLanguage";
14
15 @Override
16 protected void fillSettingsPage(Composite composite, int nColumns, int defaultIndent) {
17 addComboBox(SolverLanguageConfigurableIssueCodesProvider.DEPRECATED_MODEL_PART, "Deprecated Model Part", composite, defaultIndent);
18 }
19
20 @Override
21 public void dispose() {
22 storeSectionExpansionStates(getDialogSettings());
23 super.dispose();
24 }
25
26 @Override
27 protected IDialogSettings getDialogSettings() {
28 IDialogSettings dialogSettings = super.getDialogSettings();
29 IDialogSettings section = dialogSettings.getSection(SETTINGS_SECTION_NAME);
30 if (section == null) {
31 return dialogSettings.addNewSection(SETTINGS_SECTION_NAME);
32 }
33 return section;
34 }
35}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/SolverLanguageUiModule.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/SolverLanguageUiModule.xtend
new file mode 100644
index 00000000..1c165a0a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/SolverLanguageUiModule.xtend
@@ -0,0 +1,24 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui
5
6import org.eclipse.xtend.lib.annotations.FinalFieldsConstructor
7import org.eclipse.xtext.ide.editor.syntaxcoloring.ISemanticHighlightingCalculator
8import org.eclipse.xtext.ui.editor.syntaxcoloring.ITextAttributeProvider
9import org.eclipse.viatra.solver.language.ui.highlight.SolverSemanticHighlightCalculator
10import org.eclipse.viatra.solver.language.ui.highlight.SolverSemanticTextAttributeProvider
11
12/**
13 * Use this class to register components to be used within the Eclipse IDE.
14 */
15@FinalFieldsConstructor
16class SolverLanguageUiModule extends AbstractSolverLanguageUiModule {
17 def Class<? extends ISemanticHighlightingCalculator> bindISemanticHighlightingCalculator() {
18 SolverSemanticHighlightCalculator
19 }
20
21 def Class<? extends ITextAttributeProvider> bindITextAttributeProvider() {
22 SolverSemanticTextAttributeProvider
23 }
24}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/contentassist/SolverLanguageProposalProvider.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/contentassist/SolverLanguageProposalProvider.xtend
new file mode 100644
index 00000000..9b6ab0fc
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/contentassist/SolverLanguageProposalProvider.xtend
@@ -0,0 +1,12 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.contentassist
5
6
7/**
8 * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#content-assist
9 * on how to customize the content assistant.
10 */
11class SolverLanguageProposalProvider extends AbstractSolverLanguageProposalProvider {
12}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticHighlightCalculator.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticHighlightCalculator.xtend
new file mode 100644
index 00000000..c9ceb36a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticHighlightCalculator.xtend
@@ -0,0 +1,58 @@
1package org.eclipse.viatra.solver.language.ui.highlight
2
3import java.util.Random
4import java.util.WeakHashMap
5import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol
6import org.eclipse.xtext.ide.editor.syntaxcoloring.DefaultSemanticHighlightingCalculator
7import org.eclipse.xtext.ide.editor.syntaxcoloring.IHighlightedPositionAcceptor
8import org.eclipse.xtext.nodemodel.util.NodeModelUtils
9import org.eclipse.xtext.resource.XtextResource
10import org.eclipse.xtext.util.CancelIndicator
11
12class SolverSemanticHighlightCalculator extends DefaultSemanticHighlightingCalculator {
13 public static val SmybolCode = "SymbolCode"
14
15 val symbolName2ID = new WeakHashMap<String,String>
16
17 override provideHighlightingFor(XtextResource resource, IHighlightedPositionAcceptor acceptor, CancelIndicator cancelIndicator) {
18 if (resource === null || resource.getParseResult() === null) {
19 return
20 } else {
21 val modelSymbols = resource.allContents.filter(ModelSymbol)
22 while(modelSymbols.hasNext) {
23 val symbolElement = modelSymbols.next
24 val node = NodeModelUtils::getNode(symbolElement)
25 acceptor.addPosition(
26 node.getOffset(),
27 node.getLength(),
28 getSymbolCode(symbolElement.name)
29 )
30 }
31 }
32 }
33
34 def getSymbolCode(String name) {
35 if(symbolName2ID.containsKey(name)) {
36 return symbolName2ID.get(name)
37 } else {
38 val id = calculateSymbolCode(name)
39 symbolName2ID.put(name,id)
40 return id
41 }
42 }
43
44 def String calculateSymbolCode(String name) {
45 val Random random = new Random(name.hashCode)
46 val hue = huePick(random.nextFloat)
47 val saturation = 0.1+random.nextFloat*0.2
48 val brightness = random.nextFloat/4+0.7f
49 return '''«SmybolCode» «hue» «saturation» «brightness»'''
50 }
51 private def huePick(float random) {
52 val pink = 300
53 val tolerance = 10
54 val degree = random*(360-2*tolerance)
55 if(degree<pink-tolerance) return degree
56 else return degree+2*tolerance
57 }
58} \ No newline at end of file
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticTextAttributeProvider.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticTextAttributeProvider.xtend
new file mode 100644
index 00000000..4eed59ce
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/highlight/SolverSemanticTextAttributeProvider.xtend
@@ -0,0 +1,57 @@
1package org.eclipse.viatra.solver.language.ui.highlight
2
3import com.google.inject.Inject
4import java.util.WeakHashMap
5import org.eclipse.jface.text.TextAttribute
6import org.eclipse.swt.graphics.RGB
7import org.eclipse.xtext.ui.editor.preferences.IPreferenceStoreAccess
8import org.eclipse.xtext.ui.editor.syntaxcoloring.IHighlightingConfiguration
9import org.eclipse.xtext.ui.editor.syntaxcoloring.PreferenceStoreAccessor
10import org.eclipse.xtext.ui.editor.syntaxcoloring.TextAttributeProvider
11import org.eclipse.xtext.ui.editor.utils.EditorUtils
12import org.eclipse.xtext.ui.editor.utils.TextStyle
13
14class SolverSemanticTextAttributeProvider extends TextAttributeProvider {
15
16 val defaultTextStyle = new TextStyle
17 val colorID2TextAttribute = new WeakHashMap<String,TextAttribute>
18
19 @Inject
20 new(IHighlightingConfiguration highlightingConfig, IPreferenceStoreAccess preferenceStoreAccess, PreferenceStoreAccessor prefStoreAccessor) {
21 super(highlightingConfig, preferenceStoreAccess, prefStoreAccessor)
22 }
23
24
25 override getAttribute(String id) {
26 if(isMetamodelElementColorID(id)) {
27 if(colorID2TextAttribute.containsKey(id)) {
28 return colorID2TextAttribute.get(id)
29 } else {
30 val style = metamodelElementTextStyle(id)
31 colorID2TextAttribute.put(id,style)
32 return style
33 }
34 } else {
35 super.getAttribute(id)
36 }
37 }
38
39 private def isMetamodelElementColorID(String id) {
40 id.startsWith(SolverSemanticHighlightCalculator::SmybolCode)
41 }
42
43 private def TextAttribute metamodelElementTextStyle(String id) {
44 val texts = id.split(' ')
45 val backgroundColor = new RGB(
46 Float.parseFloat(texts.get(1)),
47 Float.parseFloat(texts.get(2)),
48 Float.parseFloat(texts.get(3))
49 )
50 return new TextAttribute(
51 EditorUtils.colorFromRGB(defaultTextStyle.color),
52 EditorUtils.colorFromRGB(backgroundColor),
53 defaultTextStyle.style,
54 EditorUtils.fontFromFontData(defaultTextStyle.getFontData()));
55 }
56
57} \ No newline at end of file
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageDescriptionLabelProvider.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageDescriptionLabelProvider.xtend
new file mode 100644
index 00000000..32f81edc
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageDescriptionLabelProvider.xtend
@@ -0,0 +1,24 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.labeling
5
6import org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider
7
8/**
9 * Provides labels for IEObjectDescriptions and IResourceDescriptions.
10 *
11 * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#label-provider
12 */
13class SolverLanguageDescriptionLabelProvider extends DefaultDescriptionLabelProvider {
14
15 // Labels and icons can be computed like this:
16
17// override text(IEObjectDescription ele) {
18// ele.name.toString
19// }
20//
21// override image(IEObjectDescription ele) {
22// ele.EClass.name + '.gif'
23// }
24}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageLabelProvider.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageLabelProvider.xtend
new file mode 100644
index 00000000..c2d8ac75
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/labeling/SolverLanguageLabelProvider.xtend
@@ -0,0 +1,31 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.labeling
5
6import com.google.inject.Inject
7import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider
8import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider
9
10/**
11 * Provides labels for EObjects.
12 *
13 * See https://www.eclipse.org/Xtext/documentation/304_ide_concepts.html#label-provider
14 */
15class SolverLanguageLabelProvider extends DefaultEObjectLabelProvider {
16
17 @Inject
18 new(AdapterFactoryLabelProvider delegate) {
19 super(delegate);
20 }
21
22 // Labels and icons can be computed like this:
23
24// def text(Greeting ele) {
25// 'A greeting to ' + ele.name
26// }
27//
28// def image(Greeting ele) {
29// 'Greeting.gif'
30// }
31}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/outline/SolverLanguageOutlineTreeProvider.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/outline/SolverLanguageOutlineTreeProvider.xtend
new file mode 100644
index 00000000..abd2855c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/outline/SolverLanguageOutlineTreeProvider.xtend
@@ -0,0 +1,15 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.outline
5
6import org.eclipse.xtext.ui.editor.outline.impl.DefaultOutlineTreeProvider
7
8/**
9 * Customization of the default outline structure.
10 *
11 * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#outline
12 */
13class SolverLanguageOutlineTreeProvider extends DefaultOutlineTreeProvider {
14
15}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/quickfix/SolverLanguageQuickfixProvider.xtend b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/quickfix/SolverLanguageQuickfixProvider.xtend
new file mode 100644
index 00000000..42f81255
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/src/org/eclipse/viatra/solver/language/ui/quickfix/SolverLanguageQuickfixProvider.xtend
@@ -0,0 +1,24 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.ui.quickfix
5
6import org.eclipse.xtext.ui.editor.quickfix.DefaultQuickfixProvider
7
8/**
9 * Custom quickfixes.
10 *
11 * See https://www.eclipse.org/Xtext/documentation/310_eclipse_support.html#quick-fixes
12 */
13class SolverLanguageQuickfixProvider extends DefaultQuickfixProvider {
14
15// @Fix(SolverLanguageValidator.INVALID_NAME)
16// def capitalizeName(Issue issue, IssueResolutionAcceptor acceptor) {
17// acceptor.accept(issue, 'Capitalize name', 'Capitalize the name.', 'upcase.png') [
18// context |
19// val xtextDocument = context.xtextDocument
20// val firstLetter = xtextDocument.get(issue.offset, 1)
21// xtextDocument.replace(issue.offset, 1, firstLetter.toUpperCase)
22// ]
23// }
24}
diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/.gitignore
new file mode 100644
index 00000000..54297e9d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageUiModule.java._trace
2/.SolverLanguageUiModule.xtendbin
3/SolverLanguageUiModule.java
diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/contentassist/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/contentassist/.gitignore
new file mode 100644
index 00000000..7bf487b6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/contentassist/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageProposalProvider.java._trace
2/.SolverLanguageProposalProvider.xtendbin
3/SolverLanguageProposalProvider.java
diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/highlight/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/highlight/.gitignore
new file mode 100644
index 00000000..682fd167
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/highlight/.gitignore
@@ -0,0 +1,6 @@
1/.SolverSemanticHighlightCalculator.java._trace
2/.SolverSemanticHighlightCalculator.xtendbin
3/.SolverSemanticTextAttributeProvider.java._trace
4/.SolverSemanticTextAttributeProvider.xtendbin
5/SolverSemanticHighlightCalculator.java
6/SolverSemanticTextAttributeProvider.java
diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/labeling/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/labeling/.gitignore
new file mode 100644
index 00000000..4f407d4c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/labeling/.gitignore
@@ -0,0 +1,6 @@
1/.SolverLanguageDescriptionLabelProvider.java._trace
2/.SolverLanguageDescriptionLabelProvider.xtendbin
3/.SolverLanguageLabelProvider.java._trace
4/.SolverLanguageLabelProvider.xtendbin
5/SolverLanguageDescriptionLabelProvider.java
6/SolverLanguageLabelProvider.java
diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/outline/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/outline/.gitignore
new file mode 100644
index 00000000..63ce4740
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/outline/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageOutlineTreeProvider.java._trace
2/.SolverLanguageOutlineTreeProvider.xtendbin
3/SolverLanguageOutlineTreeProvider.java
diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/quickfix/.gitignore b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/quickfix/.gitignore
new file mode 100644
index 00000000..37dbeadb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/quickfix/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageQuickfixProvider.java._trace
2/.SolverLanguageQuickfixProvider.xtendbin
3/SolverLanguageQuickfixProvider.java
diff --git a/Application/org.eclipse.viatra.solver.language/.classpath b/Application/org.eclipse.viatra.solver.language/.classpath
new file mode 100644
index 00000000..1287f96c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.classpath
@@ -0,0 +1,9 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" path="src"/>
4 <classpathentry kind="src" path="src-gen"/>
5 <classpathentry kind="src" path="xtend-gen"/>
6 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
7 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
8 <classpathentry kind="output" path="bin"/>
9</classpath>
diff --git a/Application/org.eclipse.viatra.solver.language/.gitignore b/Application/org.eclipse.viatra.solver.language/.gitignore
new file mode 100644
index 00000000..ae3c1726
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.gitignore
@@ -0,0 +1 @@
/bin/
diff --git a/Application/org.eclipse.viatra.solver.language/.launch/Generate SolverLanguage (vsc) Language Infrastructure.launch b/Application/org.eclipse.viatra.solver.language/.launch/Generate SolverLanguage (vsc) Language Infrastructure.launch
new file mode 100644
index 00000000..84e7be08
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.launch/Generate SolverLanguage (vsc) Language Infrastructure.launch
@@ -0,0 +1,18 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<launchConfiguration type="org.eclipse.emf.mwe2.launch.Mwe2LaunchConfigurationType">
3<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4<listEntry value="/org.eclipse.viatra.solver.language"/>
5</listAttribute>
6<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7<listEntry value="4"/>
8</listAttribute>
9<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
10<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
11<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
12</listAttribute>
13<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${working_set:&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;resources&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language&quot; type=&quot;4&quot;/&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language.ide&quot; type=&quot;4&quot;/&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language.ui&quot; type=&quot;4&quot;/&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language.tests&quot; type=&quot;4&quot;/&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language.ui.tests&quot; type=&quot;4&quot;/&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language.tests&quot; type=&quot;4&quot;/&gt;&#10;&lt;item path=&quot;/org.eclipse.viatra.solver.language.ui.tests&quot; type=&quot;4&quot;/&gt;&#10;;&lt;/resources&gt;}"/>
14<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher"/>
15<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="org.eclipse.viatra.solver.language.GenerateSolverLanguage"/>
16<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.viatra.solver.language"/>
17<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m"/>
18</launchConfiguration>
diff --git a/Application/org.eclipse.viatra.solver.language/.launch/Launch Runtime Eclipse.launch b/Application/org.eclipse.viatra.solver.language/.launch/Launch Runtime Eclipse.launch
new file mode 100644
index 00000000..c50bf17e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.launch/Launch Runtime Eclipse.launch
@@ -0,0 +1,34 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<launchConfiguration type="org.eclipse.pde.ui.RuntimeWorkbench">
3<booleanAttribute key="append.args" value="true"/>
4<booleanAttribute key="askclear" value="true"/>
5<booleanAttribute key="automaticAdd" value="true"/>
6<booleanAttribute key="automaticValidate" value="false"/>
7<stringAttribute key="bad_container_name" value="/org.eclipse.viatra.solver.language/.launch/"/>
8<stringAttribute key="bootstrap" value=""/>
9<stringAttribute key="checked" value="[NONE]"/>
10<booleanAttribute key="clearConfig" value="false"/>
11<booleanAttribute key="clearws" value="false"/>
12<booleanAttribute key="clearwslog" value="false"/>
13<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/Launch Runtime Eclipse"/>
14<booleanAttribute key="default" value="true"/>
15<booleanAttribute key="includeOptional" value="true"/>
16<stringAttribute key="location" value="${workspace_loc}/../runtime-EclipseXtext"/>
17<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
18<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
19<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
20</listAttribute>
21<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
22<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl}"/>
23<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
24<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms40m -Xmx512m"/>
25<stringAttribute key="pde.version" value="3.3"/>
26<stringAttribute key="product" value="org.eclipse.platform.ide"/>
27<booleanAttribute key="show_selected_only" value="false"/>
28<stringAttribute key="templateConfig" value="${target_home}/configuration/config.ini"/>
29<booleanAttribute key="tracing" value="false"/>
30<booleanAttribute key="useDefaultConfig" value="true"/>
31<booleanAttribute key="useDefaultConfigArea" value="true"/>
32<booleanAttribute key="useProduct" value="true"/>
33<booleanAttribute key="usefeatures" value="false"/>
34</launchConfiguration>
diff --git a/Application/org.eclipse.viatra.solver.language/.project b/Application/org.eclipse.viatra.solver.language/.project
new file mode 100644
index 00000000..406b0bc8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.project
@@ -0,0 +1,34 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>org.eclipse.viatra.solver.language</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.jdt.core.javabuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.pde.ManifestBuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.SchemaBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 </buildSpec>
29 <natures>
30 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
31 <nature>org.eclipse.jdt.core.javanature</nature>
32 <nature>org.eclipse.pde.PluginNature</nature>
33 </natures>
34</projectDescription>
diff --git a/Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.core.resources.prefs b/Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000..4824b802
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
1eclipse.preferences.version=1
2encoding/<project>=UTF-8
diff --git a/Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.jdt.core.prefs b/Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..9513cba4
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF
@@ -0,0 +1,30 @@
1Manifest-Version: 1.0
2Automatic-Module-Name: org.eclipse.viatra.solver.language
3Bundle-ManifestVersion: 2
4Bundle-Name: org.eclipse.viatra.solver.language
5Bundle-Vendor: My Company
6Bundle-Version: 1.0.0.qualifier
7Bundle-SymbolicName: org.eclipse.viatra.solver.language; singleton:=true
8Bundle-ActivationPolicy: lazy
9Require-Bundle: org.eclipse.xtext,
10 org.eclipse.xtext.xbase,
11 org.eclipse.equinox.common;bundle-version="3.5.0",
12 org.eclipse.emf.ecore,
13 org.eclipse.xtext.xbase.lib;bundle-version="2.14.0",
14 org.eclipse.xtext.util,
15 org.eclipse.emf.common,
16 org.eclipse.xtend.lib;bundle-version="2.14.0",
17 org.antlr.runtime;bundle-version="[3.2.0,3.2.1)"
18Bundle-RequiredExecutionEnvironment: JavaSE-1.8
19Export-Package: org.eclipse.viatra.solver.language.validation,
20 org.eclipse.viatra.solver.language,
21 org.eclipse.viatra.solver.language.generator,
22 org.eclipse.viatra.solver.language.services,
23 org.eclipse.viatra.solver.language.solverLanguage.impl,
24 org.eclipse.viatra.solver.language.parser.antlr.internal,
25 org.eclipse.viatra.solver.language.parser.antlr,
26 org.eclipse.viatra.solver.language.serializer,
27 org.eclipse.viatra.solver.language.solverLanguage,
28 org.eclipse.viatra.solver.language.solverLanguage.util,
29 org.eclipse.viatra.solver.language.scoping
30Import-Package: org.apache.log4j
diff --git a/Application/org.eclipse.viatra.solver.language/build.properties b/Application/org.eclipse.viatra.solver.language/build.properties
new file mode 100644
index 00000000..aa338a94
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/build.properties
@@ -0,0 +1,20 @@
1source.. = src/,\
2 src-gen/,\
3 xtend-gen/
4bin.includes = model/generated/,\
5 .,\
6 META-INF/,\
7 plugin.xml
8bin.excludes = **/*.mwe2,\
9 **/*.xtend
10additional.bundles = org.eclipse.xtext.xbase,\
11 org.eclipse.xtext.common.types,\
12 org.eclipse.xtext.xtext.generator,\
13 org.eclipse.emf.codegen.ecore,\
14 org.eclipse.emf.mwe.utils,\
15 org.eclipse.emf.mwe2.launch,\
16 org.eclipse.emf.mwe2.lib,\
17 org.objectweb.asm,\
18 org.apache.commons.logging,\
19 org.apache.log4j,\
20 com.ibm.icu
diff --git a/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore b/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore
new file mode 100644
index 00000000..9b26faa3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.ecore
@@ -0,0 +1,156 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="solverLanguage" nsURI="http://www.eclipse.org/viatra/solver/language/SolverLanguage"
4 nsPrefix="solverLanguage">
5 <eClassifiers xsi:type="ecore:EClass" name="Problem">
6 <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1"
7 eType="#//Statement" containment="true"/>
8 </eClassifiers>
9 <eClassifiers xsi:type="ecore:EClass" name="Statement"/>
10 <eClassifiers xsi:type="ecore:EClass" name="BooleanValue"/>
11 <eClassifiers xsi:type="ecore:EClass" name="TruthValue"/>
12 <eClassifiers xsi:type="ecore:EClass" name="Interpretation" eSuperTypes="#//Statement"/>
13 <eClassifiers xsi:type="ecore:EClass" name="BasicInterpretation" eSuperTypes="#//Interpretation">
14 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//Symbol"
15 containment="true"/>
16 <eStructuralFeatures xsi:type="ecore:EReference" name="objects" upperBound="-1"
17 eType="#//ComplexObject" containment="true"/>
18 <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//TruthValue"
19 containment="true"/>
20 </eClassifiers>
21 <eClassifiers xsi:type="ecore:EClass" name="Symbol"/>
22 <eClassifiers xsi:type="ecore:EClass" name="ModelSymbol" eSuperTypes="#//Symbol">
23 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
24 </eClassifiers>
25 <eClassifiers xsi:type="ecore:EClass" name="PartialitySymbol" eSuperTypes="#//Symbol"/>
26 <eClassifiers xsi:type="ecore:EClass" name="ExistSymbol" eSuperTypes="#//PartialitySymbol"/>
27 <eClassifiers xsi:type="ecore:EClass" name="EqualsSymbol" eSuperTypes="#//PartialitySymbol"/>
28 <eClassifiers xsi:type="ecore:EClass" name="DataSymbol" eSuperTypes="#//Symbol"/>
29 <eClassifiers xsi:type="ecore:EClass" name="BooleanSymbol" eSuperTypes="#//DataSymbol"/>
30 <eClassifiers xsi:type="ecore:EClass" name="IntegerSymbol" eSuperTypes="#//DataSymbol"/>
31 <eClassifiers xsi:type="ecore:EClass" name="RealSymbol" eSuperTypes="#//DataSymbol"/>
32 <eClassifiers xsi:type="ecore:EClass" name="StringSymbol" eSuperTypes="#//DataSymbol"/>
33 <eClassifiers xsi:type="ecore:EClass" name="ComplexObject"/>
34 <eClassifiers xsi:type="ecore:EClass" name="Object" eSuperTypes="#//ComplexObject"/>
35 <eClassifiers xsi:type="ecore:EClass" name="NamedObject" eSuperTypes="#//Object">
36 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
37 </eClassifiers>
38 <eClassifiers xsi:type="ecore:EClass" name="UnnamedObject" eSuperTypes="#//Object">
39 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
40 </eClassifiers>
41 <eClassifiers xsi:type="ecore:EClass" name="DataObject" eSuperTypes="#//Object #//Literal"/>
42 <eClassifiers xsi:type="ecore:EClass" name="BooleanObject" eSuperTypes="#//DataObject">
43 <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//BooleanValue"
44 containment="true"/>
45 </eClassifiers>
46 <eClassifiers xsi:type="ecore:EClass" name="IntObject" eSuperTypes="#//DataObject">
47 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
48 </eClassifiers>
49 <eClassifiers xsi:type="ecore:EClass" name="RealObject" eSuperTypes="#//DataObject">
50 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"/>
51 </eClassifiers>
52 <eClassifiers xsi:type="ecore:EClass" name="StringObject" eSuperTypes="#//DataObject">
53 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
54 </eClassifiers>
55 <eClassifiers xsi:type="ecore:EClass" name="Predicate" eSuperTypes="#//Statement">
56 <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
57 eType="#//Parameter" containment="true"/>
58 <eStructuralFeatures xsi:type="ecore:EReference" name="bodies" upperBound="-1"
59 eType="#//PatternBody" containment="true"/>
60 </eClassifiers>
61 <eClassifiers xsi:type="ecore:EClass" name="PredicateSymbol" eSuperTypes="#//Predicate">
62 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol"
63 containment="true"/>
64 </eClassifiers>
65 <eClassifiers xsi:type="ecore:EClass" name="ErrorPredicate" eSuperTypes="#//Predicate">
66 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
67 </eClassifiers>
68 <eClassifiers xsi:type="ecore:EClass" name="Parameter">
69 <eStructuralFeatures xsi:type="ecore:EReference" name="variable" eType="#//Variable"
70 containment="true"/>
71 <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//Symbol"
72 containment="true"/>
73 </eClassifiers>
74 <eClassifiers xsi:type="ecore:EClass" name="PatternBody">
75 <eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1"
76 eType="#//Constraint" containment="true"/>
77 </eClassifiers>
78 <eClassifiers xsi:type="ecore:EClass" name="Polarity"/>
79 <eClassifiers xsi:type="ecore:EClass" name="Constraint">
80 <eStructuralFeatures xsi:type="ecore:EReference" name="polarity" eType="#//Polarity"
81 containment="true"/>
82 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol"
83 containment="true"/>
84 <eStructuralFeatures xsi:type="ecore:EReference" name="params" upperBound="-1"
85 eType="#//Literal" containment="true"/>
86 <eStructuralFeatures xsi:type="ecore:EReference" name="closureType" eType="#//ClosureType"
87 containment="true"/>
88 </eClassifiers>
89 <eClassifiers xsi:type="ecore:EClass" name="ClosureType"/>
90 <eClassifiers xsi:type="ecore:EClass" name="Literal"/>
91 <eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//Literal">
92 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
93 </eClassifiers>
94 <eClassifiers xsi:type="ecore:EClass" name="AllInstances" eSuperTypes="#//ComplexObject">
95 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//Symbol"
96 containment="true"/>
97 </eClassifiers>
98 <eClassifiers xsi:type="ecore:EClass" name="AllObjects" eSuperTypes="#//ComplexObject"/>
99 <eClassifiers xsi:type="ecore:EClass" name="DefaultInterpretation" eSuperTypes="#//Interpretation">
100 <eStructuralFeatures xsi:type="ecore:EReference" name="interpretation" eType="#//BasicInterpretation"
101 containment="true"/>
102 </eClassifiers>
103 <eClassifiers xsi:type="ecore:EClass" name="CDInterpretation" eSuperTypes="#//Interpretation"/>
104 <eClassifiers xsi:type="ecore:EClass" name="ClassInterpretation" eSuperTypes="#//CDInterpretation">
105 <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
106 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol"
107 containment="true"/>
108 <eStructuralFeatures xsi:type="ecore:EReference" name="supertypes" upperBound="-1"
109 eType="#//ModelSymbol" containment="true"/>
110 <eStructuralFeatures xsi:type="ecore:EReference" name="fielt" upperBound="-1"
111 eType="#//FieldRelationInterpretation" containment="true"/>
112 </eClassifiers>
113 <eClassifiers xsi:type="ecore:EClass" name="EnumInterpretation" eSuperTypes="#//CDInterpretation">
114 <eStructuralFeatures xsi:type="ecore:EReference" name="Symbol" eType="#//ModelSymbol"
115 containment="true"/>
116 <eStructuralFeatures xsi:type="ecore:EReference" name="objects" upperBound="-1"
117 eType="#//NamedObject" containment="true"/>
118 </eClassifiers>
119 <eClassifiers xsi:type="ecore:EClass" name="FieldRelationInterpretation">
120 <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
121 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol"
122 containment="true"/>
123 <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//MultiplicityDefinition"
124 containment="true"/>
125 <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//Symbol"
126 containment="true"/>
127 </eClassifiers>
128 <eClassifiers xsi:type="ecore:EClass" name="GlobalRelationInterpretation" eSuperTypes="#//CDInterpretation">
129 <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
130 <eStructuralFeatures xsi:type="ecore:EReference" name="symbol" eType="#//ModelSymbol"
131 containment="true"/>
132 <eStructuralFeatures xsi:type="ecore:EReference" name="sourceMultiplicity" eType="#//MultiplicityDefinition"
133 containment="true"/>
134 <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//Symbol"
135 containment="true"/>
136 <eStructuralFeatures xsi:type="ecore:EReference" name="targetMultiplicity" eType="#//MultiplicityDefinition"
137 containment="true"/>
138 <eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//Symbol"
139 containment="true"/>
140 </eClassifiers>
141 <eClassifiers xsi:type="ecore:EClass" name="MultiplicityDefinition">
142 <eStructuralFeatures xsi:type="ecore:EAttribute" name="lower" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
143 <eStructuralFeatures xsi:type="ecore:EAttribute" name="upper" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
144 <eStructuralFeatures xsi:type="ecore:EAttribute" name="unlimitedUpper" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
145 </eClassifiers>
146 <eClassifiers xsi:type="ecore:EClass" name="BooleanTrue" eSuperTypes="#//BooleanValue"/>
147 <eClassifiers xsi:type="ecore:EClass" name="BooleanFalse" eSuperTypes="#//BooleanValue"/>
148 <eClassifiers xsi:type="ecore:EClass" name="True" eSuperTypes="#//TruthValue"/>
149 <eClassifiers xsi:type="ecore:EClass" name="False" eSuperTypes="#//TruthValue"/>
150 <eClassifiers xsi:type="ecore:EClass" name="Unknown" eSuperTypes="#//TruthValue"/>
151 <eClassifiers xsi:type="ecore:EClass" name="Error" eSuperTypes="#//TruthValue"/>
152 <eClassifiers xsi:type="ecore:EClass" name="Positive" eSuperTypes="#//Polarity"/>
153 <eClassifiers xsi:type="ecore:EClass" name="Negative" eSuperTypes="#//Polarity"/>
154 <eClassifiers xsi:type="ecore:EClass" name="ReflexiveClosure" eSuperTypes="#//ClosureType"/>
155 <eClassifiers xsi:type="ecore:EClass" name="IrreflexiveClosure" eSuperTypes="#//ClosureType"/>
156</ecore:EPackage>
diff --git a/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.genmodel b/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.genmodel
new file mode 100644
index 00000000..c593e886
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/model/generated/SolverLanguage.genmodel
@@ -0,0 +1,131 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
3 xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext 2.18.0.M3" modelDirectory="/org.eclipse.viatra.solver.language/src-gen"
4 modelPluginID="org.eclipse.viatra.solver.language" forceOverwrite="true" modelName="SolverLanguage"
5 updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
6 complianceLevel="6.0" copyrightFields="false" runtimeVersion="2.18">
7 <genPackages prefix="SolverLanguage" basePackage="org.eclipse.viatra.solver.language"
8 disposableProviderFactory="true" fileExtensions="vsc" ecorePackage="SolverLanguage.ecore#/">
9 <genClasses ecoreClass="SolverLanguage.ecore#//Problem">
10 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Problem/statements"/>
11 </genClasses>
12 <genClasses ecoreClass="SolverLanguage.ecore#//Statement"/>
13 <genClasses ecoreClass="SolverLanguage.ecore#//BooleanValue"/>
14 <genClasses ecoreClass="SolverLanguage.ecore#//TruthValue"/>
15 <genClasses ecoreClass="SolverLanguage.ecore#//Interpretation"/>
16 <genClasses ecoreClass="SolverLanguage.ecore#//BasicInterpretation">
17 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//BasicInterpretation/symbol"/>
18 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//BasicInterpretation/objects"/>
19 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//BasicInterpretation/value"/>
20 </genClasses>
21 <genClasses ecoreClass="SolverLanguage.ecore#//Symbol"/>
22 <genClasses ecoreClass="SolverLanguage.ecore#//ModelSymbol">
23 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ModelSymbol/name"/>
24 </genClasses>
25 <genClasses ecoreClass="SolverLanguage.ecore#//PartialitySymbol"/>
26 <genClasses ecoreClass="SolverLanguage.ecore#//ExistSymbol"/>
27 <genClasses ecoreClass="SolverLanguage.ecore#//EqualsSymbol"/>
28 <genClasses ecoreClass="SolverLanguage.ecore#//DataSymbol"/>
29 <genClasses ecoreClass="SolverLanguage.ecore#//BooleanSymbol"/>
30 <genClasses ecoreClass="SolverLanguage.ecore#//IntegerSymbol"/>
31 <genClasses ecoreClass="SolverLanguage.ecore#//RealSymbol"/>
32 <genClasses ecoreClass="SolverLanguage.ecore#//StringSymbol"/>
33 <genClasses ecoreClass="SolverLanguage.ecore#//ComplexObject"/>
34 <genClasses ecoreClass="SolverLanguage.ecore#//Object"/>
35 <genClasses ecoreClass="SolverLanguage.ecore#//NamedObject">
36 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//NamedObject/name"/>
37 </genClasses>
38 <genClasses ecoreClass="SolverLanguage.ecore#//UnnamedObject">
39 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//UnnamedObject/name"/>
40 </genClasses>
41 <genClasses ecoreClass="SolverLanguage.ecore#//DataObject"/>
42 <genClasses ecoreClass="SolverLanguage.ecore#//BooleanObject">
43 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//BooleanObject/value"/>
44 </genClasses>
45 <genClasses ecoreClass="SolverLanguage.ecore#//IntObject">
46 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//IntObject/value"/>
47 </genClasses>
48 <genClasses ecoreClass="SolverLanguage.ecore#//RealObject">
49 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//RealObject/value"/>
50 </genClasses>
51 <genClasses ecoreClass="SolverLanguage.ecore#//StringObject">
52 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//StringObject/value"/>
53 </genClasses>
54 <genClasses ecoreClass="SolverLanguage.ecore#//Predicate">
55 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Predicate/parameters"/>
56 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Predicate/bodies"/>
57 </genClasses>
58 <genClasses ecoreClass="SolverLanguage.ecore#//PredicateSymbol">
59 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//PredicateSymbol/symbol"/>
60 </genClasses>
61 <genClasses ecoreClass="SolverLanguage.ecore#//ErrorPredicate">
62 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ErrorPredicate/name"/>
63 </genClasses>
64 <genClasses ecoreClass="SolverLanguage.ecore#//Parameter">
65 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Parameter/variable"/>
66 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Parameter/type"/>
67 </genClasses>
68 <genClasses ecoreClass="SolverLanguage.ecore#//PatternBody">
69 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//PatternBody/constraints"/>
70 </genClasses>
71 <genClasses ecoreClass="SolverLanguage.ecore#//Polarity"/>
72 <genClasses ecoreClass="SolverLanguage.ecore#//Constraint">
73 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Constraint/polarity"/>
74 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Constraint/symbol"/>
75 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Constraint/params"/>
76 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Constraint/closureType"/>
77 </genClasses>
78 <genClasses ecoreClass="SolverLanguage.ecore#//ClosureType"/>
79 <genClasses ecoreClass="SolverLanguage.ecore#//Literal"/>
80 <genClasses ecoreClass="SolverLanguage.ecore#//Variable">
81 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//Variable/name"/>
82 </genClasses>
83 <genClasses ecoreClass="SolverLanguage.ecore#//AllInstances">
84 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//AllInstances/symbol"/>
85 </genClasses>
86 <genClasses ecoreClass="SolverLanguage.ecore#//AllObjects"/>
87 <genClasses ecoreClass="SolverLanguage.ecore#//DefaultInterpretation">
88 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//DefaultInterpretation/interpretation"/>
89 </genClasses>
90 <genClasses ecoreClass="SolverLanguage.ecore#//CDInterpretation"/>
91 <genClasses ecoreClass="SolverLanguage.ecore#//ClassInterpretation">
92 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ClassInterpretation/abstract"/>
93 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ClassInterpretation/symbol"/>
94 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ClassInterpretation/supertypes"/>
95 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ClassInterpretation/fielt"/>
96 </genClasses>
97 <genClasses ecoreClass="SolverLanguage.ecore#//EnumInterpretation">
98 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//EnumInterpretation/Symbol"/>
99 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//EnumInterpretation/objects"/>
100 </genClasses>
101 <genClasses ecoreClass="SolverLanguage.ecore#//FieldRelationInterpretation">
102 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//FieldRelationInterpretation/containment"/>
103 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//FieldRelationInterpretation/symbol"/>
104 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//FieldRelationInterpretation/multiplicity"/>
105 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//FieldRelationInterpretation/target"/>
106 </genClasses>
107 <genClasses ecoreClass="SolverLanguage.ecore#//GlobalRelationInterpretation">
108 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//GlobalRelationInterpretation/containment"/>
109 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//GlobalRelationInterpretation/symbol"/>
110 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//GlobalRelationInterpretation/sourceMultiplicity"/>
111 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//GlobalRelationInterpretation/source"/>
112 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//GlobalRelationInterpretation/targetMultiplicity"/>
113 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//GlobalRelationInterpretation/target"/>
114 </genClasses>
115 <genClasses ecoreClass="SolverLanguage.ecore#//MultiplicityDefinition">
116 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//MultiplicityDefinition/lower"/>
117 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//MultiplicityDefinition/upper"/>
118 <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//MultiplicityDefinition/unlimitedUpper"/>
119 </genClasses>
120 <genClasses ecoreClass="SolverLanguage.ecore#//BooleanTrue"/>
121 <genClasses ecoreClass="SolverLanguage.ecore#//BooleanFalse"/>
122 <genClasses ecoreClass="SolverLanguage.ecore#//True"/>
123 <genClasses ecoreClass="SolverLanguage.ecore#//False"/>
124 <genClasses ecoreClass="SolverLanguage.ecore#//Unknown"/>
125 <genClasses ecoreClass="SolverLanguage.ecore#//Error"/>
126 <genClasses ecoreClass="SolverLanguage.ecore#//Positive"/>
127 <genClasses ecoreClass="SolverLanguage.ecore#//Negative"/>
128 <genClasses ecoreClass="SolverLanguage.ecore#//ReflexiveClosure"/>
129 <genClasses ecoreClass="SolverLanguage.ecore#//IrreflexiveClosure"/>
130 </genPackages>
131</genmodel:GenModel>
diff --git a/Application/org.eclipse.viatra.solver.language/plugin.xml b/Application/org.eclipse.viatra.solver.language/plugin.xml
new file mode 100644
index 00000000..3e332568
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/plugin.xml
@@ -0,0 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<?eclipse version="3.0"?>
3<plugin>
4 <extension point="org.eclipse.emf.ecore.generated_package">
5 <package
6 uri = "http://www.eclipse.org/viatra/solver/language/SolverLanguage"
7 class = "org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage"
8 genModel = "model/generated/SolverLanguage.genmodel" />
9 </extension>
10</plugin>
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
new file mode 100644
index 00000000..cbf67ff9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/AbstractSolverLanguageRuntimeModule.java
@@ -0,0 +1,201 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language;
5
6import com.google.inject.Binder;
7import com.google.inject.Provider;
8import com.google.inject.name.Names;
9import java.util.Properties;
10import org.eclipse.viatra.solver.language.generator.SolverLanguageGenerator;
11import org.eclipse.viatra.solver.language.parser.antlr.SolverLanguageAntlrTokenFileProvider;
12import org.eclipse.viatra.solver.language.parser.antlr.SolverLanguageParser;
13import org.eclipse.viatra.solver.language.parser.antlr.internal.InternalSolverLanguageLexer;
14import org.eclipse.viatra.solver.language.scoping.SolverLanguageScopeProvider;
15import org.eclipse.viatra.solver.language.serializer.SolverLanguageSemanticSequencer;
16import org.eclipse.viatra.solver.language.serializer.SolverLanguageSyntacticSequencer;
17import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
18import org.eclipse.viatra.solver.language.validation.SolverLanguageConfigurableIssueCodesProvider;
19import org.eclipse.viatra.solver.language.validation.SolverLanguageValidator;
20import org.eclipse.xtext.Constants;
21import org.eclipse.xtext.IGrammarAccess;
22import org.eclipse.xtext.generator.IGenerator2;
23import org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider;
24import org.eclipse.xtext.naming.IQualifiedNameProvider;
25import org.eclipse.xtext.parser.IParser;
26import org.eclipse.xtext.parser.ITokenToStringConverter;
27import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider;
28import org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter;
29import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
30import org.eclipse.xtext.parser.antlr.ITokenDefProvider;
31import org.eclipse.xtext.parser.antlr.Lexer;
32import org.eclipse.xtext.parser.antlr.LexerBindings;
33import org.eclipse.xtext.parser.antlr.LexerProvider;
34import org.eclipse.xtext.resource.IContainer;
35import org.eclipse.xtext.resource.IResourceDescriptions;
36import org.eclipse.xtext.resource.containers.IAllContainersState;
37import org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider;
38import org.eclipse.xtext.resource.containers.StateBasedContainerManager;
39import org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider;
40import org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions;
41import org.eclipse.xtext.scoping.IGlobalScopeProvider;
42import org.eclipse.xtext.scoping.IScopeProvider;
43import org.eclipse.xtext.scoping.IgnoreCaseLinking;
44import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider;
45import org.eclipse.xtext.scoping.impl.DefaultGlobalScopeProvider;
46import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider;
47import org.eclipse.xtext.serializer.ISerializer;
48import org.eclipse.xtext.serializer.impl.Serializer;
49import org.eclipse.xtext.serializer.sequencer.ISemanticSequencer;
50import org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer;
51import org.eclipse.xtext.service.DefaultRuntimeModule;
52import org.eclipse.xtext.service.SingletonBinding;
53import org.eclipse.xtext.validation.ConfigurableIssueCodesProvider;
54
55/**
56 * Manual modifications go to {@link SolverLanguageRuntimeModule}.
57 */
58@SuppressWarnings("all")
59public abstract class AbstractSolverLanguageRuntimeModule extends DefaultRuntimeModule {
60
61 protected Properties properties = null;
62
63 @Override
64 public void configure(Binder binder) {
65 properties = tryBindProperties(binder, "org/eclipse/viatra/solver/language/SolverLanguage.properties");
66 super.configure(binder);
67 }
68
69 public void configureLanguageName(Binder binder) {
70 binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.viatra.solver.language.SolverLanguage");
71 }
72
73 public void configureFileExtensions(Binder binder) {
74 if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null)
75 binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("vsc");
76 }
77
78 // contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
79 public ClassLoader bindClassLoaderToInstance() {
80 return getClass().getClassLoader();
81 }
82
83 // contributed by org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessFragment2
84 public Class<? extends IGrammarAccess> bindIGrammarAccess() {
85 return SolverLanguageGrammarAccess.class;
86 }
87
88 // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
89 public Class<? extends ISemanticSequencer> bindISemanticSequencer() {
90 return SolverLanguageSemanticSequencer.class;
91 }
92
93 // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
94 public Class<? extends ISyntacticSequencer> bindISyntacticSequencer() {
95 return SolverLanguageSyntacticSequencer.class;
96 }
97
98 // contributed by org.eclipse.xtext.xtext.generator.serializer.SerializerFragment2
99 public Class<? extends ISerializer> bindISerializer() {
100 return Serializer.class;
101 }
102
103 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
104 public Class<? extends IParser> bindIParser() {
105 return SolverLanguageParser.class;
106 }
107
108 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
109 public Class<? extends ITokenToStringConverter> bindITokenToStringConverter() {
110 return AntlrTokenToStringConverter.class;
111 }
112
113 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
114 public Class<? extends IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() {
115 return SolverLanguageAntlrTokenFileProvider.class;
116 }
117
118 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
119 public Class<? extends Lexer> bindLexer() {
120 return InternalSolverLanguageLexer.class;
121 }
122
123 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
124 public Class<? extends ITokenDefProvider> bindITokenDefProvider() {
125 return AntlrTokenDefProvider.class;
126 }
127
128 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
129 public Provider<? extends InternalSolverLanguageLexer> provideInternalSolverLanguageLexer() {
130 return LexerProvider.create(InternalSolverLanguageLexer.class);
131 }
132
133 // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2
134 public void configureRuntimeLexer(Binder binder) {
135 binder.bind(Lexer.class)
136 .annotatedWith(Names.named(LexerBindings.RUNTIME))
137 .to(InternalSolverLanguageLexer.class);
138 }
139
140 // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
141 @SingletonBinding(eager=true)
142 public Class<? extends SolverLanguageValidator> bindSolverLanguageValidator() {
143 return SolverLanguageValidator.class;
144 }
145
146 // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2
147 public Class<? extends ConfigurableIssueCodesProvider> bindConfigurableIssueCodesProvider() {
148 return SolverLanguageConfigurableIssueCodesProvider.class;
149 }
150
151 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
152 public Class<? extends IScopeProvider> bindIScopeProvider() {
153 return SolverLanguageScopeProvider.class;
154 }
155
156 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
157 public void configureIScopeProviderDelegate(Binder binder) {
158 binder.bind(IScopeProvider.class).annotatedWith(Names.named(AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(ImportedNamespaceAwareLocalScopeProvider.class);
159 }
160
161 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
162 public Class<? extends IGlobalScopeProvider> bindIGlobalScopeProvider() {
163 return DefaultGlobalScopeProvider.class;
164 }
165
166 // contributed by org.eclipse.xtext.xtext.generator.scoping.ImportNamespacesScopingFragment2
167 public void configureIgnoreCaseLinking(Binder binder) {
168 binder.bindConstant().annotatedWith(IgnoreCaseLinking.class).to(false);
169 }
170
171 // contributed by org.eclipse.xtext.xtext.generator.exporting.QualifiedNamesFragment2
172 public Class<? extends IQualifiedNameProvider> bindIQualifiedNameProvider() {
173 return DefaultDeclarativeQualifiedNameProvider.class;
174 }
175
176 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
177 public Class<? extends IContainer.Manager> bindIContainer$Manager() {
178 return StateBasedContainerManager.class;
179 }
180
181 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
182 public Class<? extends IAllContainersState.Provider> bindIAllContainersState$Provider() {
183 return ResourceSetBasedAllContainersStateProvider.class;
184 }
185
186 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
187 public void configureIResourceDescriptions(Binder binder) {
188 binder.bind(IResourceDescriptions.class).to(ResourceSetBasedResourceDescriptions.class);
189 }
190
191 // contributed by org.eclipse.xtext.xtext.generator.builder.BuilderIntegrationFragment2
192 public void configureIResourceDescriptionsPersisted(Binder binder) {
193 binder.bind(IResourceDescriptions.class).annotatedWith(Names.named(ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(ResourceSetBasedResourceDescriptions.class);
194 }
195
196 // contributed by org.eclipse.xtext.xtext.generator.generator.GeneratorFragment2
197 public Class<? extends IGenerator2> bindIGenerator2() {
198 return SolverLanguageGenerator.class;
199 }
200
201}
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
new file mode 100644
index 00000000..20f3e983
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguage.xtextbin
Binary files differ
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetupGenerated.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetupGenerated.java
new file mode 100644
index 00000000..91347850
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetupGenerated.java
@@ -0,0 +1,42 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language;
5
6import com.google.inject.Guice;
7import com.google.inject.Injector;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.resource.Resource;
10import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
11import org.eclipse.xtext.ISetup;
12import org.eclipse.xtext.common.TerminalsStandaloneSetup;
13import org.eclipse.xtext.resource.IResourceFactory;
14import org.eclipse.xtext.resource.IResourceServiceProvider;
15
16@SuppressWarnings("all")
17public class SolverLanguageStandaloneSetupGenerated implements ISetup {
18
19 @Override
20 public Injector createInjectorAndDoEMFRegistration() {
21 TerminalsStandaloneSetup.doSetup();
22
23 Injector injector = createInjector();
24 register(injector);
25 return injector;
26 }
27
28 public Injector createInjector() {
29 return Guice.createInjector(new SolverLanguageRuntimeModule());
30 }
31
32 public void register(Injector injector) {
33 if (!EPackage.Registry.INSTANCE.containsKey("http://www.eclipse.org/viatra/solver/language/SolverLanguage")) {
34 EPackage.Registry.INSTANCE.put("http://www.eclipse.org/viatra/solver/language/SolverLanguage", SolverLanguagePackage.eINSTANCE);
35 }
36 IResourceFactory resourceFactory = injector.getInstance(IResourceFactory.class);
37 IResourceServiceProvider serviceProvider = injector.getInstance(IResourceServiceProvider.class);
38
39 Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("vsc", resourceFactory);
40 IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("vsc", serviceProvider);
41 }
42}
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageAntlrTokenFileProvider.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageAntlrTokenFileProvider.java
new file mode 100644
index 00000000..059473c8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageAntlrTokenFileProvider.java
@@ -0,0 +1,16 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.parser.antlr;
5
6import java.io.InputStream;
7import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider;
8
9public class SolverLanguageAntlrTokenFileProvider implements IAntlrTokenFileProvider {
10
11 @Override
12 public InputStream getAntlrTokenFile() {
13 ClassLoader classLoader = getClass().getClassLoader();
14 return classLoader.getResourceAsStream("org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.tokens");
15 }
16}
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageParser.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageParser.java
new file mode 100644
index 00000000..7155770e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageParser.java
@@ -0,0 +1,40 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.parser.antlr;
5
6import com.google.inject.Inject;
7import org.eclipse.viatra.solver.language.parser.antlr.internal.InternalSolverLanguageParser;
8import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
9import org.eclipse.xtext.parser.antlr.AbstractAntlrParser;
10import org.eclipse.xtext.parser.antlr.XtextTokenStream;
11
12public class SolverLanguageParser extends AbstractAntlrParser {
13
14 @Inject
15 private SolverLanguageGrammarAccess grammarAccess;
16
17 @Override
18 protected void setInitialHiddenTokens(XtextTokenStream tokenStream) {
19 tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT");
20 }
21
22
23 @Override
24 protected InternalSolverLanguageParser createParser(XtextTokenStream stream) {
25 return new InternalSolverLanguageParser(stream, getGrammarAccess());
26 }
27
28 @Override
29 protected String getDefaultRuleName() {
30 return "Problem";
31 }
32
33 public SolverLanguageGrammarAccess getGrammarAccess() {
34 return this.grammarAccess;
35 }
36
37 public void setGrammarAccess(SolverLanguageGrammarAccess grammarAccess) {
38 this.grammarAccess = grammarAccess;
39 }
40}
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.g b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.g
new file mode 100644
index 00000000..afd73c2d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.g
@@ -0,0 +1,2575 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4grammar InternalSolverLanguage;
5
6options {
7 superClass=AbstractInternalAntlrParser;
8}
9
10@lexer::header {
11package org.eclipse.viatra.solver.language.parser.antlr.internal;
12
13// Hack: Use our own Lexer superclass by means of import.
14// Currently there is no other way to specify the superclass for the lexer.
15import org.eclipse.xtext.parser.antlr.Lexer;
16}
17
18@parser::header {
19package org.eclipse.viatra.solver.language.parser.antlr.internal;
20
21import org.eclipse.xtext.*;
22import org.eclipse.xtext.parser.*;
23import org.eclipse.xtext.parser.impl.*;
24import org.eclipse.emf.ecore.util.EcoreUtil;
25import org.eclipse.emf.ecore.EObject;
26import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
27import org.eclipse.xtext.parser.antlr.XtextTokenStream;
28import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
29import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
30import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
31
32}
33
34@parser::members {
35
36 private SolverLanguageGrammarAccess grammarAccess;
37
38 public InternalSolverLanguageParser(TokenStream input, SolverLanguageGrammarAccess grammarAccess) {
39 this(input);
40 this.grammarAccess = grammarAccess;
41 registerRules(grammarAccess.getGrammar());
42 }
43
44 @Override
45 protected String getFirstRuleName() {
46 return "Problem";
47 }
48
49 @Override
50 protected SolverLanguageGrammarAccess getGrammarAccess() {
51 return grammarAccess;
52 }
53
54}
55
56@rulecatch {
57 catch (RecognitionException re) {
58 recover(input,re);
59 appendSkippedTokens();
60 }
61}
62
63// Entry rule entryRuleProblem
64entryRuleProblem returns [EObject current=null]:
65 { newCompositeNode(grammarAccess.getProblemRule()); }
66 iv_ruleProblem=ruleProblem
67 { $current=$iv_ruleProblem.current; }
68 EOF;
69
70// Rule Problem
71ruleProblem returns [EObject current=null]
72@init {
73 enterRule();
74}
75@after {
76 leaveRule();
77}:
78 (
79 (
80 {
81 newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0());
82 }
83 lv_statements_0_0=ruleStatement
84 {
85 if ($current==null) {
86 $current = createModelElementForParent(grammarAccess.getProblemRule());
87 }
88 add(
89 $current,
90 "statements",
91 lv_statements_0_0,
92 "org.eclipse.viatra.solver.language.SolverLanguage.Statement");
93 afterParserOrEnumRuleCall();
94 }
95 )
96 )*
97;
98
99// Entry rule entryRuleStatement
100entryRuleStatement returns [EObject current=null]:
101 { newCompositeNode(grammarAccess.getStatementRule()); }
102 iv_ruleStatement=ruleStatement
103 { $current=$iv_ruleStatement.current; }
104 EOF;
105
106// Rule Statement
107ruleStatement returns [EObject current=null]
108@init {
109 enterRule();
110}
111@after {
112 leaveRule();
113}:
114 (
115 {
116 newCompositeNode(grammarAccess.getStatementAccess().getInterpretationParserRuleCall_0());
117 }
118 this_Interpretation_0=ruleInterpretation
119 {
120 $current = $this_Interpretation_0.current;
121 afterParserOrEnumRuleCall();
122 }
123 |
124 {
125 newCompositeNode(grammarAccess.getStatementAccess().getPredicateParserRuleCall_1());
126 }
127 this_Predicate_1=rulePredicate
128 {
129 $current = $this_Predicate_1.current;
130 afterParserOrEnumRuleCall();
131 }
132 )
133;
134
135// Entry rule entryRuleREALLiteral
136entryRuleREALLiteral returns [String current=null]:
137 { newCompositeNode(grammarAccess.getREALLiteralRule()); }
138 iv_ruleREALLiteral=ruleREALLiteral
139 { $current=$iv_ruleREALLiteral.current.getText(); }
140 EOF;
141
142// Rule REALLiteral
143ruleREALLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
144@init {
145 enterRule();
146}
147@after {
148 leaveRule();
149}:
150 (
151 (
152 kw='-'
153 {
154 $current.merge(kw);
155 newLeafNode(kw, grammarAccess.getREALLiteralAccess().getHyphenMinusKeyword_0());
156 }
157 )?
158 this_INT_1=RULE_INT
159 {
160 $current.merge(this_INT_1);
161 }
162 {
163 newLeafNode(this_INT_1, grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_1());
164 }
165 kw='.'
166 {
167 $current.merge(kw);
168 newLeafNode(kw, grammarAccess.getREALLiteralAccess().getFullStopKeyword_2());
169 }
170 this_INT_3=RULE_INT
171 {
172 $current.merge(this_INT_3);
173 }
174 {
175 newLeafNode(this_INT_3, grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_3());
176 }
177 )
178;
179
180// Entry rule entryRuleINTLiteral
181entryRuleINTLiteral returns [String current=null]:
182 { newCompositeNode(grammarAccess.getINTLiteralRule()); }
183 iv_ruleINTLiteral=ruleINTLiteral
184 { $current=$iv_ruleINTLiteral.current.getText(); }
185 EOF;
186
187// Rule INTLiteral
188ruleINTLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
189@init {
190 enterRule();
191}
192@after {
193 leaveRule();
194}:
195 (
196 (
197 kw='-'
198 {
199 $current.merge(kw);
200 newLeafNode(kw, grammarAccess.getINTLiteralAccess().getHyphenMinusKeyword_0());
201 }
202 )?
203 this_INT_1=RULE_INT
204 {
205 $current.merge(this_INT_1);
206 }
207 {
208 newLeafNode(this_INT_1, grammarAccess.getINTLiteralAccess().getINTTerminalRuleCall_1());
209 }
210 )
211;
212
213// Entry rule entryRuleBooleanValue
214entryRuleBooleanValue returns [EObject current=null]:
215 { newCompositeNode(grammarAccess.getBooleanValueRule()); }
216 iv_ruleBooleanValue=ruleBooleanValue
217 { $current=$iv_ruleBooleanValue.current; }
218 EOF;
219
220// Rule BooleanValue
221ruleBooleanValue returns [EObject current=null]
222@init {
223 enterRule();
224}
225@after {
226 leaveRule();
227}:
228 (
229 (
230 (
231 {
232 $current = forceCreateModelElement(
233 grammarAccess.getBooleanValueAccess().getBooleanTrueAction_0_0(),
234 $current);
235 }
236 )
237 otherlv_1='true'
238 {
239 newLeafNode(otherlv_1, grammarAccess.getBooleanValueAccess().getTrueKeyword_0_1());
240 }
241 )
242 |
243 (
244 otherlv_2='false'
245 {
246 newLeafNode(otherlv_2, grammarAccess.getBooleanValueAccess().getFalseKeyword_1_0());
247 }
248 (
249 {
250 $current = forceCreateModelElement(
251 grammarAccess.getBooleanValueAccess().getBooleanFalseAction_1_1(),
252 $current);
253 }
254 )
255 )
256 )
257;
258
259// Entry rule entryRuleTruthValue
260entryRuleTruthValue returns [EObject current=null]:
261 { newCompositeNode(grammarAccess.getTruthValueRule()); }
262 iv_ruleTruthValue=ruleTruthValue
263 { $current=$iv_ruleTruthValue.current; }
264 EOF;
265
266// Rule TruthValue
267ruleTruthValue returns [EObject current=null]
268@init {
269 enterRule();
270}
271@after {
272 leaveRule();
273}:
274 (
275 (
276 (
277 {
278 $current = forceCreateModelElement(
279 grammarAccess.getTruthValueAccess().getTrueAction_0_0(),
280 $current);
281 }
282 )
283 otherlv_1='true'
284 {
285 newLeafNode(otherlv_1, grammarAccess.getTruthValueAccess().getTrueKeyword_0_1());
286 }
287 )
288 |
289 (
290 (
291 {
292 $current = forceCreateModelElement(
293 grammarAccess.getTruthValueAccess().getFalseAction_1_0(),
294 $current);
295 }
296 )
297 otherlv_3='false'
298 {
299 newLeafNode(otherlv_3, grammarAccess.getTruthValueAccess().getFalseKeyword_1_1());
300 }
301 )
302 |
303 (
304 (
305 {
306 $current = forceCreateModelElement(
307 grammarAccess.getTruthValueAccess().getUnknownAction_2_0(),
308 $current);
309 }
310 )
311 otherlv_5='unknown'
312 {
313 newLeafNode(otherlv_5, grammarAccess.getTruthValueAccess().getUnknownKeyword_2_1());
314 }
315 )
316 |
317 (
318 (
319 {
320 $current = forceCreateModelElement(
321 grammarAccess.getTruthValueAccess().getErrorAction_3_0(),
322 $current);
323 }
324 )
325 otherlv_7='error'
326 {
327 newLeafNode(otherlv_7, grammarAccess.getTruthValueAccess().getErrorKeyword_3_1());
328 }
329 )
330 )
331;
332
333// Entry rule entryRuleInterpretation
334entryRuleInterpretation returns [EObject current=null]:
335 { newCompositeNode(grammarAccess.getInterpretationRule()); }
336 iv_ruleInterpretation=ruleInterpretation
337 { $current=$iv_ruleInterpretation.current; }
338 EOF;
339
340// Rule Interpretation
341ruleInterpretation returns [EObject current=null]
342@init {
343 enterRule();
344}
345@after {
346 leaveRule();
347}:
348 (
349 {
350 newCompositeNode(grammarAccess.getInterpretationAccess().getBasicInterpretationParserRuleCall_0());
351 }
352 this_BasicInterpretation_0=ruleBasicInterpretation
353 {
354 $current = $this_BasicInterpretation_0.current;
355 afterParserOrEnumRuleCall();
356 }
357 |
358 {
359 newCompositeNode(grammarAccess.getInterpretationAccess().getDefaultInterpretationParserRuleCall_1());
360 }
361 this_DefaultInterpretation_1=ruleDefaultInterpretation
362 {
363 $current = $this_DefaultInterpretation_1.current;
364 afterParserOrEnumRuleCall();
365 }
366 |
367 {
368 newCompositeNode(grammarAccess.getInterpretationAccess().getCDInterpretationParserRuleCall_2());
369 }
370 this_CDInterpretation_2=ruleCDInterpretation
371 {
372 $current = $this_CDInterpretation_2.current;
373 afterParserOrEnumRuleCall();
374 }
375 )
376;
377
378// Entry rule entryRuleBasicInterpretation
379entryRuleBasicInterpretation returns [EObject current=null]:
380 { newCompositeNode(grammarAccess.getBasicInterpretationRule()); }
381 iv_ruleBasicInterpretation=ruleBasicInterpretation
382 { $current=$iv_ruleBasicInterpretation.current; }
383 EOF;
384
385// Rule BasicInterpretation
386ruleBasicInterpretation returns [EObject current=null]
387@init {
388 enterRule();
389}
390@after {
391 leaveRule();
392}:
393 (
394 (
395 (
396 {
397 newCompositeNode(grammarAccess.getBasicInterpretationAccess().getSymbolSymbolParserRuleCall_0_0());
398 }
399 lv_symbol_0_0=ruleSymbol
400 {
401 if ($current==null) {
402 $current = createModelElementForParent(grammarAccess.getBasicInterpretationRule());
403 }
404 set(
405 $current,
406 "symbol",
407 lv_symbol_0_0,
408 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
409 afterParserOrEnumRuleCall();
410 }
411 )
412 )
413 otherlv_1='('
414 {
415 newLeafNode(otherlv_1, grammarAccess.getBasicInterpretationAccess().getLeftParenthesisKeyword_1());
416 }
417 (
418 (
419 {
420 newCompositeNode(grammarAccess.getBasicInterpretationAccess().getObjectsComplexObjectParserRuleCall_2_0());
421 }
422 lv_objects_2_0=ruleComplexObject
423 {
424 if ($current==null) {
425 $current = createModelElementForParent(grammarAccess.getBasicInterpretationRule());
426 }
427 add(
428 $current,
429 "objects",
430 lv_objects_2_0,
431 "org.eclipse.viatra.solver.language.SolverLanguage.ComplexObject");
432 afterParserOrEnumRuleCall();
433 }
434 )
435 )*
436 otherlv_3=')'
437 {
438 newLeafNode(otherlv_3, grammarAccess.getBasicInterpretationAccess().getRightParenthesisKeyword_3());
439 }
440 otherlv_4=':'
441 {
442 newLeafNode(otherlv_4, grammarAccess.getBasicInterpretationAccess().getColonKeyword_4());
443 }
444 (
445 (
446 {
447 newCompositeNode(grammarAccess.getBasicInterpretationAccess().getValueTruthValueParserRuleCall_5_0());
448 }
449 lv_value_5_0=ruleTruthValue
450 {
451 if ($current==null) {
452 $current = createModelElementForParent(grammarAccess.getBasicInterpretationRule());
453 }
454 set(
455 $current,
456 "value",
457 lv_value_5_0,
458 "org.eclipse.viatra.solver.language.SolverLanguage.TruthValue");
459 afterParserOrEnumRuleCall();
460 }
461 )
462 )
463 )
464;
465
466// Entry rule entryRuleSymbol
467entryRuleSymbol returns [EObject current=null]:
468 { newCompositeNode(grammarAccess.getSymbolRule()); }
469 iv_ruleSymbol=ruleSymbol
470 { $current=$iv_ruleSymbol.current; }
471 EOF;
472
473// Rule Symbol
474ruleSymbol returns [EObject current=null]
475@init {
476 enterRule();
477}
478@after {
479 leaveRule();
480}:
481 (
482 {
483 newCompositeNode(grammarAccess.getSymbolAccess().getModelSymbolParserRuleCall_0());
484 }
485 this_ModelSymbol_0=ruleModelSymbol
486 {
487 $current = $this_ModelSymbol_0.current;
488 afterParserOrEnumRuleCall();
489 }
490 |
491 {
492 newCompositeNode(grammarAccess.getSymbolAccess().getPartialitySymbolParserRuleCall_1());
493 }
494 this_PartialitySymbol_1=rulePartialitySymbol
495 {
496 $current = $this_PartialitySymbol_1.current;
497 afterParserOrEnumRuleCall();
498 }
499 |
500 {
501 newCompositeNode(grammarAccess.getSymbolAccess().getDataSymbolParserRuleCall_2());
502 }
503 this_DataSymbol_2=ruleDataSymbol
504 {
505 $current = $this_DataSymbol_2.current;
506 afterParserOrEnumRuleCall();
507 }
508 )
509;
510
511// Entry rule entryRuleModelSymbol
512entryRuleModelSymbol returns [EObject current=null]:
513 { newCompositeNode(grammarAccess.getModelSymbolRule()); }
514 iv_ruleModelSymbol=ruleModelSymbol
515 { $current=$iv_ruleModelSymbol.current; }
516 EOF;
517
518// Rule ModelSymbol
519ruleModelSymbol returns [EObject current=null]
520@init {
521 enterRule();
522}
523@after {
524 leaveRule();
525}:
526 (
527 (
528 lv_name_0_0=RULE_ID
529 {
530 newLeafNode(lv_name_0_0, grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0());
531 }
532 {
533 if ($current==null) {
534 $current = createModelElement(grammarAccess.getModelSymbolRule());
535 }
536 setWithLastConsumed(
537 $current,
538 "name",
539 lv_name_0_0,
540 "org.eclipse.xtext.common.Terminals.ID");
541 }
542 )
543 )
544;
545
546// Entry rule entryRulePartialitySymbol
547entryRulePartialitySymbol returns [EObject current=null]:
548 { newCompositeNode(grammarAccess.getPartialitySymbolRule()); }
549 iv_rulePartialitySymbol=rulePartialitySymbol
550 { $current=$iv_rulePartialitySymbol.current; }
551 EOF;
552
553// Rule PartialitySymbol
554rulePartialitySymbol returns [EObject current=null]
555@init {
556 enterRule();
557}
558@after {
559 leaveRule();
560}:
561 (
562 {
563 newCompositeNode(grammarAccess.getPartialitySymbolAccess().getExistSymbolParserRuleCall_0());
564 }
565 this_ExistSymbol_0=ruleExistSymbol
566 {
567 $current = $this_ExistSymbol_0.current;
568 afterParserOrEnumRuleCall();
569 }
570 |
571 {
572 newCompositeNode(grammarAccess.getPartialitySymbolAccess().getEqualsSymbolParserRuleCall_1());
573 }
574 this_EqualsSymbol_1=ruleEqualsSymbol
575 {
576 $current = $this_EqualsSymbol_1.current;
577 afterParserOrEnumRuleCall();
578 }
579 )
580;
581
582// Entry rule entryRuleExistSymbol
583entryRuleExistSymbol returns [EObject current=null]:
584 { newCompositeNode(grammarAccess.getExistSymbolRule()); }
585 iv_ruleExistSymbol=ruleExistSymbol
586 { $current=$iv_ruleExistSymbol.current; }
587 EOF;
588
589// Rule ExistSymbol
590ruleExistSymbol returns [EObject current=null]
591@init {
592 enterRule();
593}
594@after {
595 leaveRule();
596}:
597 (
598 otherlv_0='exists'
599 {
600 newLeafNode(otherlv_0, grammarAccess.getExistSymbolAccess().getExistsKeyword_0());
601 }
602 (
603 {
604 $current = forceCreateModelElement(
605 grammarAccess.getExistSymbolAccess().getExistSymbolAction_1(),
606 $current);
607 }
608 )
609 )
610;
611
612// Entry rule entryRuleEqualsSymbol
613entryRuleEqualsSymbol returns [EObject current=null]:
614 { newCompositeNode(grammarAccess.getEqualsSymbolRule()); }
615 iv_ruleEqualsSymbol=ruleEqualsSymbol
616 { $current=$iv_ruleEqualsSymbol.current; }
617 EOF;
618
619// Rule EqualsSymbol
620ruleEqualsSymbol returns [EObject current=null]
621@init {
622 enterRule();
623}
624@after {
625 leaveRule();
626}:
627 (
628 otherlv_0='equals'
629 {
630 newLeafNode(otherlv_0, grammarAccess.getEqualsSymbolAccess().getEqualsKeyword_0());
631 }
632 (
633 {
634 $current = forceCreateModelElement(
635 grammarAccess.getEqualsSymbolAccess().getEqualsSymbolAction_1(),
636 $current);
637 }
638 )
639 )
640;
641
642// Entry rule entryRuleDataSymbol
643entryRuleDataSymbol returns [EObject current=null]:
644 { newCompositeNode(grammarAccess.getDataSymbolRule()); }
645 iv_ruleDataSymbol=ruleDataSymbol
646 { $current=$iv_ruleDataSymbol.current; }
647 EOF;
648
649// Rule DataSymbol
650ruleDataSymbol returns [EObject current=null]
651@init {
652 enterRule();
653}
654@after {
655 leaveRule();
656}:
657 (
658 {
659 newCompositeNode(grammarAccess.getDataSymbolAccess().getBooleanSymbolParserRuleCall_0());
660 }
661 this_BooleanSymbol_0=ruleBooleanSymbol
662 {
663 $current = $this_BooleanSymbol_0.current;
664 afterParserOrEnumRuleCall();
665 }
666 |
667 {
668 newCompositeNode(grammarAccess.getDataSymbolAccess().getIntegerSymbolParserRuleCall_1());
669 }
670 this_IntegerSymbol_1=ruleIntegerSymbol
671 {
672 $current = $this_IntegerSymbol_1.current;
673 afterParserOrEnumRuleCall();
674 }
675 |
676 {
677 newCompositeNode(grammarAccess.getDataSymbolAccess().getRealSymbolParserRuleCall_2());
678 }
679 this_RealSymbol_2=ruleRealSymbol
680 {
681 $current = $this_RealSymbol_2.current;
682 afterParserOrEnumRuleCall();
683 }
684 |
685 {
686 newCompositeNode(grammarAccess.getDataSymbolAccess().getStringSymbolParserRuleCall_3());
687 }
688 this_StringSymbol_3=ruleStringSymbol
689 {
690 $current = $this_StringSymbol_3.current;
691 afterParserOrEnumRuleCall();
692 }
693 )
694;
695
696// Entry rule entryRuleBooleanSymbol
697entryRuleBooleanSymbol returns [EObject current=null]:
698 { newCompositeNode(grammarAccess.getBooleanSymbolRule()); }
699 iv_ruleBooleanSymbol=ruleBooleanSymbol
700 { $current=$iv_ruleBooleanSymbol.current; }
701 EOF;
702
703// Rule BooleanSymbol
704ruleBooleanSymbol returns [EObject current=null]
705@init {
706 enterRule();
707}
708@after {
709 leaveRule();
710}:
711 (
712 otherlv_0='bool'
713 {
714 newLeafNode(otherlv_0, grammarAccess.getBooleanSymbolAccess().getBoolKeyword_0());
715 }
716 (
717 {
718 $current = forceCreateModelElement(
719 grammarAccess.getBooleanSymbolAccess().getBooleanSymbolAction_1(),
720 $current);
721 }
722 )
723 )
724;
725
726// Entry rule entryRuleIntegerSymbol
727entryRuleIntegerSymbol returns [EObject current=null]:
728 { newCompositeNode(grammarAccess.getIntegerSymbolRule()); }
729 iv_ruleIntegerSymbol=ruleIntegerSymbol
730 { $current=$iv_ruleIntegerSymbol.current; }
731 EOF;
732
733// Rule IntegerSymbol
734ruleIntegerSymbol returns [EObject current=null]
735@init {
736 enterRule();
737}
738@after {
739 leaveRule();
740}:
741 (
742 otherlv_0='int'
743 {
744 newLeafNode(otherlv_0, grammarAccess.getIntegerSymbolAccess().getIntKeyword_0());
745 }
746 (
747 {
748 $current = forceCreateModelElement(
749 grammarAccess.getIntegerSymbolAccess().getIntegerSymbolAction_1(),
750 $current);
751 }
752 )
753 )
754;
755
756// Entry rule entryRuleRealSymbol
757entryRuleRealSymbol returns [EObject current=null]:
758 { newCompositeNode(grammarAccess.getRealSymbolRule()); }
759 iv_ruleRealSymbol=ruleRealSymbol
760 { $current=$iv_ruleRealSymbol.current; }
761 EOF;
762
763// Rule RealSymbol
764ruleRealSymbol returns [EObject current=null]
765@init {
766 enterRule();
767}
768@after {
769 leaveRule();
770}:
771 (
772 otherlv_0='real'
773 {
774 newLeafNode(otherlv_0, grammarAccess.getRealSymbolAccess().getRealKeyword_0());
775 }
776 (
777 {
778 $current = forceCreateModelElement(
779 grammarAccess.getRealSymbolAccess().getRealSymbolAction_1(),
780 $current);
781 }
782 )
783 )
784;
785
786// Entry rule entryRuleStringSymbol
787entryRuleStringSymbol returns [EObject current=null]:
788 { newCompositeNode(grammarAccess.getStringSymbolRule()); }
789 iv_ruleStringSymbol=ruleStringSymbol
790 { $current=$iv_ruleStringSymbol.current; }
791 EOF;
792
793// Rule StringSymbol
794ruleStringSymbol returns [EObject current=null]
795@init {
796 enterRule();
797}
798@after {
799 leaveRule();
800}:
801 (
802 otherlv_0='string'
803 {
804 newLeafNode(otherlv_0, grammarAccess.getStringSymbolAccess().getStringKeyword_0());
805 }
806 (
807 {
808 $current = forceCreateModelElement(
809 grammarAccess.getStringSymbolAccess().getStringSymbolAction_1(),
810 $current);
811 }
812 )
813 )
814;
815
816// Entry rule entryRuleComplexObject
817entryRuleComplexObject returns [EObject current=null]:
818 { newCompositeNode(grammarAccess.getComplexObjectRule()); }
819 iv_ruleComplexObject=ruleComplexObject
820 { $current=$iv_ruleComplexObject.current; }
821 EOF;
822
823// Rule ComplexObject
824ruleComplexObject returns [EObject current=null]
825@init {
826 enterRule();
827}
828@after {
829 leaveRule();
830}:
831 (
832 {
833 newCompositeNode(grammarAccess.getComplexObjectAccess().getObjectParserRuleCall_0());
834 }
835 this_Object_0=ruleObject
836 {
837 $current = $this_Object_0.current;
838 afterParserOrEnumRuleCall();
839 }
840 |
841 {
842 newCompositeNode(grammarAccess.getComplexObjectAccess().getAllInstancesParserRuleCall_1());
843 }
844 this_AllInstances_1=ruleAllInstances
845 {
846 $current = $this_AllInstances_1.current;
847 afterParserOrEnumRuleCall();
848 }
849 |
850 {
851 newCompositeNode(grammarAccess.getComplexObjectAccess().getAllObjectsParserRuleCall_2());
852 }
853 this_AllObjects_2=ruleAllObjects
854 {
855 $current = $this_AllObjects_2.current;
856 afterParserOrEnumRuleCall();
857 }
858 )
859;
860
861// Entry rule entryRuleObject
862entryRuleObject returns [EObject current=null]:
863 { newCompositeNode(grammarAccess.getObjectRule()); }
864 iv_ruleObject=ruleObject
865 { $current=$iv_ruleObject.current; }
866 EOF;
867
868// Rule Object
869ruleObject returns [EObject current=null]
870@init {
871 enterRule();
872}
873@after {
874 leaveRule();
875}:
876 (
877 {
878 newCompositeNode(grammarAccess.getObjectAccess().getNamedObjectParserRuleCall_0());
879 }
880 this_NamedObject_0=ruleNamedObject
881 {
882 $current = $this_NamedObject_0.current;
883 afterParserOrEnumRuleCall();
884 }
885 |
886 {
887 newCompositeNode(grammarAccess.getObjectAccess().getUnnamedObjectParserRuleCall_1());
888 }
889 this_UnnamedObject_1=ruleUnnamedObject
890 {
891 $current = $this_UnnamedObject_1.current;
892 afterParserOrEnumRuleCall();
893 }
894 |
895 {
896 newCompositeNode(grammarAccess.getObjectAccess().getDataObjectParserRuleCall_2());
897 }
898 this_DataObject_2=ruleDataObject
899 {
900 $current = $this_DataObject_2.current;
901 afterParserOrEnumRuleCall();
902 }
903 )
904;
905
906// Entry rule entryRuleNamedObject
907entryRuleNamedObject returns [EObject current=null]:
908 { newCompositeNode(grammarAccess.getNamedObjectRule()); }
909 iv_ruleNamedObject=ruleNamedObject
910 { $current=$iv_ruleNamedObject.current; }
911 EOF;
912
913// Rule NamedObject
914ruleNamedObject returns [EObject current=null]
915@init {
916 enterRule();
917}
918@after {
919 leaveRule();
920}:
921 (
922 otherlv_0='\''
923 {
924 newLeafNode(otherlv_0, grammarAccess.getNamedObjectAccess().getApostropheKeyword_0());
925 }
926 (
927 (
928 lv_name_1_0=RULE_ID
929 {
930 newLeafNode(lv_name_1_0, grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0());
931 }
932 {
933 if ($current==null) {
934 $current = createModelElement(grammarAccess.getNamedObjectRule());
935 }
936 setWithLastConsumed(
937 $current,
938 "name",
939 lv_name_1_0,
940 "org.eclipse.xtext.common.Terminals.ID");
941 }
942 )
943 )
944 otherlv_2='\''
945 {
946 newLeafNode(otherlv_2, grammarAccess.getNamedObjectAccess().getApostropheKeyword_2());
947 }
948 )
949;
950
951// Entry rule entryRuleUnnamedObject
952entryRuleUnnamedObject returns [EObject current=null]:
953 { newCompositeNode(grammarAccess.getUnnamedObjectRule()); }
954 iv_ruleUnnamedObject=ruleUnnamedObject
955 { $current=$iv_ruleUnnamedObject.current; }
956 EOF;
957
958// Rule UnnamedObject
959ruleUnnamedObject returns [EObject current=null]
960@init {
961 enterRule();
962}
963@after {
964 leaveRule();
965}:
966 (
967 (
968 lv_name_0_0=RULE_ID
969 {
970 newLeafNode(lv_name_0_0, grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0());
971 }
972 {
973 if ($current==null) {
974 $current = createModelElement(grammarAccess.getUnnamedObjectRule());
975 }
976 setWithLastConsumed(
977 $current,
978 "name",
979 lv_name_0_0,
980 "org.eclipse.xtext.common.Terminals.ID");
981 }
982 )
983 )
984;
985
986// Entry rule entryRuleDataObject
987entryRuleDataObject returns [EObject current=null]:
988 { newCompositeNode(grammarAccess.getDataObjectRule()); }
989 iv_ruleDataObject=ruleDataObject
990 { $current=$iv_ruleDataObject.current; }
991 EOF;
992
993// Rule DataObject
994ruleDataObject returns [EObject current=null]
995@init {
996 enterRule();
997}
998@after {
999 leaveRule();
1000}:
1001 (
1002 {
1003 newCompositeNode(grammarAccess.getDataObjectAccess().getBooleanObjectParserRuleCall_0());
1004 }
1005 this_BooleanObject_0=ruleBooleanObject
1006 {
1007 $current = $this_BooleanObject_0.current;
1008 afterParserOrEnumRuleCall();
1009 }
1010 |
1011 {
1012 newCompositeNode(grammarAccess.getDataObjectAccess().getIntObjectParserRuleCall_1());
1013 }
1014 this_IntObject_1=ruleIntObject
1015 {
1016 $current = $this_IntObject_1.current;
1017 afterParserOrEnumRuleCall();
1018 }
1019 |
1020 {
1021 newCompositeNode(grammarAccess.getDataObjectAccess().getRealObjectParserRuleCall_2());
1022 }
1023 this_RealObject_2=ruleRealObject
1024 {
1025 $current = $this_RealObject_2.current;
1026 afterParserOrEnumRuleCall();
1027 }
1028 |
1029 {
1030 newCompositeNode(grammarAccess.getDataObjectAccess().getStringObjectParserRuleCall_3());
1031 }
1032 this_StringObject_3=ruleStringObject
1033 {
1034 $current = $this_StringObject_3.current;
1035 afterParserOrEnumRuleCall();
1036 }
1037 )
1038;
1039
1040// Entry rule entryRuleBooleanObject
1041entryRuleBooleanObject returns [EObject current=null]:
1042 { newCompositeNode(grammarAccess.getBooleanObjectRule()); }
1043 iv_ruleBooleanObject=ruleBooleanObject
1044 { $current=$iv_ruleBooleanObject.current; }
1045 EOF;
1046
1047// Rule BooleanObject
1048ruleBooleanObject returns [EObject current=null]
1049@init {
1050 enterRule();
1051}
1052@after {
1053 leaveRule();
1054}:
1055 (
1056 (
1057 {
1058 newCompositeNode(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0());
1059 }
1060 lv_value_0_0=ruleBooleanValue
1061 {
1062 if ($current==null) {
1063 $current = createModelElementForParent(grammarAccess.getBooleanObjectRule());
1064 }
1065 set(
1066 $current,
1067 "value",
1068 lv_value_0_0,
1069 "org.eclipse.viatra.solver.language.SolverLanguage.BooleanValue");
1070 afterParserOrEnumRuleCall();
1071 }
1072 )
1073 )
1074;
1075
1076// Entry rule entryRuleIntObject
1077entryRuleIntObject returns [EObject current=null]:
1078 { newCompositeNode(grammarAccess.getIntObjectRule()); }
1079 iv_ruleIntObject=ruleIntObject
1080 { $current=$iv_ruleIntObject.current; }
1081 EOF;
1082
1083// Rule IntObject
1084ruleIntObject returns [EObject current=null]
1085@init {
1086 enterRule();
1087}
1088@after {
1089 leaveRule();
1090}:
1091 (
1092 (
1093 {
1094 newCompositeNode(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0());
1095 }
1096 lv_value_0_0=ruleINTLiteral
1097 {
1098 if ($current==null) {
1099 $current = createModelElementForParent(grammarAccess.getIntObjectRule());
1100 }
1101 set(
1102 $current,
1103 "value",
1104 lv_value_0_0,
1105 "org.eclipse.viatra.solver.language.SolverLanguage.INTLiteral");
1106 afterParserOrEnumRuleCall();
1107 }
1108 )
1109 )
1110;
1111
1112// Entry rule entryRuleRealObject
1113entryRuleRealObject returns [EObject current=null]:
1114 { newCompositeNode(grammarAccess.getRealObjectRule()); }
1115 iv_ruleRealObject=ruleRealObject
1116 { $current=$iv_ruleRealObject.current; }
1117 EOF;
1118
1119// Rule RealObject
1120ruleRealObject returns [EObject current=null]
1121@init {
1122 enterRule();
1123}
1124@after {
1125 leaveRule();
1126}:
1127 (
1128 (
1129 {
1130 newCompositeNode(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0());
1131 }
1132 lv_value_0_0=ruleREALLiteral
1133 {
1134 if ($current==null) {
1135 $current = createModelElementForParent(grammarAccess.getRealObjectRule());
1136 }
1137 set(
1138 $current,
1139 "value",
1140 lv_value_0_0,
1141 "org.eclipse.viatra.solver.language.SolverLanguage.REALLiteral");
1142 afterParserOrEnumRuleCall();
1143 }
1144 )
1145 )
1146;
1147
1148// Entry rule entryRuleStringObject
1149entryRuleStringObject returns [EObject current=null]:
1150 { newCompositeNode(grammarAccess.getStringObjectRule()); }
1151 iv_ruleStringObject=ruleStringObject
1152 { $current=$iv_ruleStringObject.current; }
1153 EOF;
1154
1155// Rule StringObject
1156ruleStringObject returns [EObject current=null]
1157@init {
1158 enterRule();
1159}
1160@after {
1161 leaveRule();
1162}:
1163 (
1164 (
1165 lv_value_0_0=RULE_STRING
1166 {
1167 newLeafNode(lv_value_0_0, grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0());
1168 }
1169 {
1170 if ($current==null) {
1171 $current = createModelElement(grammarAccess.getStringObjectRule());
1172 }
1173 setWithLastConsumed(
1174 $current,
1175 "value",
1176 lv_value_0_0,
1177 "org.eclipse.viatra.solver.language.SolverLanguage.STRING");
1178 }
1179 )
1180 )
1181;
1182
1183// Entry rule entryRulePredicate
1184entryRulePredicate returns [EObject current=null]:
1185 { newCompositeNode(grammarAccess.getPredicateRule()); }
1186 iv_rulePredicate=rulePredicate
1187 { $current=$iv_rulePredicate.current; }
1188 EOF;
1189
1190// Rule Predicate
1191rulePredicate returns [EObject current=null]
1192@init {
1193 enterRule();
1194}
1195@after {
1196 leaveRule();
1197}:
1198 (
1199 {
1200 newCompositeNode(grammarAccess.getPredicateAccess().getPredicateSymbolParserRuleCall_0());
1201 }
1202 this_PredicateSymbol_0=rulePredicateSymbol
1203 {
1204 $current = $this_PredicateSymbol_0.current;
1205 afterParserOrEnumRuleCall();
1206 }
1207 |
1208 {
1209 newCompositeNode(grammarAccess.getPredicateAccess().getErrorPredicateParserRuleCall_1());
1210 }
1211 this_ErrorPredicate_1=ruleErrorPredicate
1212 {
1213 $current = $this_ErrorPredicate_1.current;
1214 afterParserOrEnumRuleCall();
1215 }
1216 )
1217;
1218
1219// Entry rule entryRulePredicateSymbol
1220entryRulePredicateSymbol returns [EObject current=null]:
1221 { newCompositeNode(grammarAccess.getPredicateSymbolRule()); }
1222 iv_rulePredicateSymbol=rulePredicateSymbol
1223 { $current=$iv_rulePredicateSymbol.current; }
1224 EOF;
1225
1226// Rule PredicateSymbol
1227rulePredicateSymbol returns [EObject current=null]
1228@init {
1229 enterRule();
1230}
1231@after {
1232 leaveRule();
1233}:
1234 (
1235 otherlv_0='predicate'
1236 {
1237 newLeafNode(otherlv_0, grammarAccess.getPredicateSymbolAccess().getPredicateKeyword_0());
1238 }
1239 (
1240 (
1241 {
1242 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getSymbolModelSymbolParserRuleCall_1_0());
1243 }
1244 lv_symbol_1_0=ruleModelSymbol
1245 {
1246 if ($current==null) {
1247 $current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
1248 }
1249 set(
1250 $current,
1251 "symbol",
1252 lv_symbol_1_0,
1253 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
1254 afterParserOrEnumRuleCall();
1255 }
1256 )
1257 )
1258 otherlv_2='('
1259 {
1260 newLeafNode(otherlv_2, grammarAccess.getPredicateSymbolAccess().getLeftParenthesisKeyword_2());
1261 }
1262 (
1263 (
1264 {
1265 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getParametersParameterParserRuleCall_3_0());
1266 }
1267 lv_parameters_3_0=ruleParameter
1268 {
1269 if ($current==null) {
1270 $current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
1271 }
1272 add(
1273 $current,
1274 "parameters",
1275 lv_parameters_3_0,
1276 "org.eclipse.viatra.solver.language.SolverLanguage.Parameter");
1277 afterParserOrEnumRuleCall();
1278 }
1279 )
1280 )*
1281 otherlv_4=')'
1282 {
1283 newLeafNode(otherlv_4, grammarAccess.getPredicateSymbolAccess().getRightParenthesisKeyword_4());
1284 }
1285 otherlv_5=':'
1286 {
1287 newLeafNode(otherlv_5, grammarAccess.getPredicateSymbolAccess().getColonKeyword_5());
1288 }
1289 (
1290 otherlv_6='false'
1291 {
1292 newLeafNode(otherlv_6, grammarAccess.getPredicateSymbolAccess().getFalseKeyword_6_0());
1293 }
1294 |
1295 (
1296 (
1297 (
1298 {
1299 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_0_0());
1300 }
1301 lv_bodies_7_0=rulePatternBody
1302 {
1303 if ($current==null) {
1304 $current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
1305 }
1306 add(
1307 $current,
1308 "bodies",
1309 lv_bodies_7_0,
1310 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
1311 afterParserOrEnumRuleCall();
1312 }
1313 )
1314 )
1315 (
1316 otherlv_8='|'
1317 {
1318 newLeafNode(otherlv_8, grammarAccess.getPredicateSymbolAccess().getVerticalLineKeyword_6_1_1_0());
1319 }
1320 (
1321 (
1322 {
1323 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_1_1_0());
1324 }
1325 lv_bodies_9_0=rulePatternBody
1326 {
1327 if ($current==null) {
1328 $current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
1329 }
1330 add(
1331 $current,
1332 "bodies",
1333 lv_bodies_9_0,
1334 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
1335 afterParserOrEnumRuleCall();
1336 }
1337 )
1338 )
1339 )*
1340 )
1341 )
1342 otherlv_10='.'
1343 {
1344 newLeafNode(otherlv_10, grammarAccess.getPredicateSymbolAccess().getFullStopKeyword_7());
1345 }
1346 )
1347;
1348
1349// Entry rule entryRuleErrorPredicate
1350entryRuleErrorPredicate returns [EObject current=null]:
1351 { newCompositeNode(grammarAccess.getErrorPredicateRule()); }
1352 iv_ruleErrorPredicate=ruleErrorPredicate
1353 { $current=$iv_ruleErrorPredicate.current; }
1354 EOF;
1355
1356// Rule ErrorPredicate
1357ruleErrorPredicate returns [EObject current=null]
1358@init {
1359 enterRule();
1360}
1361@after {
1362 leaveRule();
1363}:
1364 (
1365 (
1366 {
1367 $current = forceCreateModelElement(
1368 grammarAccess.getErrorPredicateAccess().getErrorPredicateAction_0(),
1369 $current);
1370 }
1371 )
1372 otherlv_1='error'
1373 {
1374 newLeafNode(otherlv_1, grammarAccess.getErrorPredicateAccess().getErrorKeyword_1());
1375 }
1376 (
1377 (
1378 lv_name_2_0=RULE_ID
1379 {
1380 newLeafNode(lv_name_2_0, grammarAccess.getErrorPredicateAccess().getNameIDTerminalRuleCall_2_0());
1381 }
1382 {
1383 if ($current==null) {
1384 $current = createModelElement(grammarAccess.getErrorPredicateRule());
1385 }
1386 setWithLastConsumed(
1387 $current,
1388 "name",
1389 lv_name_2_0,
1390 "org.eclipse.xtext.common.Terminals.ID");
1391 }
1392 )
1393 )?
1394 (
1395 otherlv_3='('
1396 {
1397 newLeafNode(otherlv_3, grammarAccess.getErrorPredicateAccess().getLeftParenthesisKeyword_3_0());
1398 }
1399 (
1400 (
1401 {
1402 newCompositeNode(grammarAccess.getErrorPredicateAccess().getParametersParameterParserRuleCall_3_1_0());
1403 }
1404 lv_parameters_4_0=ruleParameter
1405 {
1406 if ($current==null) {
1407 $current = createModelElementForParent(grammarAccess.getErrorPredicateRule());
1408 }
1409 add(
1410 $current,
1411 "parameters",
1412 lv_parameters_4_0,
1413 "org.eclipse.viatra.solver.language.SolverLanguage.Parameter");
1414 afterParserOrEnumRuleCall();
1415 }
1416 )
1417 )*
1418 otherlv_5=')'
1419 {
1420 newLeafNode(otherlv_5, grammarAccess.getErrorPredicateAccess().getRightParenthesisKeyword_3_2());
1421 }
1422 )
1423 otherlv_6=':'
1424 {
1425 newLeafNode(otherlv_6, grammarAccess.getErrorPredicateAccess().getColonKeyword_4());
1426 }
1427 (
1428 otherlv_7='false'
1429 {
1430 newLeafNode(otherlv_7, grammarAccess.getErrorPredicateAccess().getFalseKeyword_5_0());
1431 }
1432 |
1433 (
1434 (
1435 (
1436 {
1437 newCompositeNode(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_0_0());
1438 }
1439 lv_bodies_8_0=rulePatternBody
1440 {
1441 if ($current==null) {
1442 $current = createModelElementForParent(grammarAccess.getErrorPredicateRule());
1443 }
1444 add(
1445 $current,
1446 "bodies",
1447 lv_bodies_8_0,
1448 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
1449 afterParserOrEnumRuleCall();
1450 }
1451 )
1452 )
1453 (
1454 otherlv_9='|'
1455 {
1456 newLeafNode(otherlv_9, grammarAccess.getErrorPredicateAccess().getVerticalLineKeyword_5_1_1_0());
1457 }
1458 (
1459 (
1460 {
1461 newCompositeNode(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_1_1_0());
1462 }
1463 lv_bodies_10_0=rulePatternBody
1464 {
1465 if ($current==null) {
1466 $current = createModelElementForParent(grammarAccess.getErrorPredicateRule());
1467 }
1468 add(
1469 $current,
1470 "bodies",
1471 lv_bodies_10_0,
1472 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
1473 afterParserOrEnumRuleCall();
1474 }
1475 )
1476 )
1477 )*
1478 )
1479 )
1480 otherlv_11='.'
1481 {
1482 newLeafNode(otherlv_11, grammarAccess.getErrorPredicateAccess().getFullStopKeyword_6());
1483 }
1484 )
1485;
1486
1487// Entry rule entryRuleParameter
1488entryRuleParameter returns [EObject current=null]:
1489 { newCompositeNode(grammarAccess.getParameterRule()); }
1490 iv_ruleParameter=ruleParameter
1491 { $current=$iv_ruleParameter.current; }
1492 EOF;
1493
1494// Rule Parameter
1495ruleParameter returns [EObject current=null]
1496@init {
1497 enterRule();
1498}
1499@after {
1500 leaveRule();
1501}:
1502 (
1503 (
1504 (
1505 {
1506 newCompositeNode(grammarAccess.getParameterAccess().getVariableVariableParserRuleCall_0_0());
1507 }
1508 lv_variable_0_0=ruleVariable
1509 {
1510 if ($current==null) {
1511 $current = createModelElementForParent(grammarAccess.getParameterRule());
1512 }
1513 set(
1514 $current,
1515 "variable",
1516 lv_variable_0_0,
1517 "org.eclipse.viatra.solver.language.SolverLanguage.Variable");
1518 afterParserOrEnumRuleCall();
1519 }
1520 )
1521 )
1522 (
1523 otherlv_1=':'
1524 {
1525 newLeafNode(otherlv_1, grammarAccess.getParameterAccess().getColonKeyword_1_0());
1526 }
1527 (
1528 (
1529 {
1530 newCompositeNode(grammarAccess.getParameterAccess().getTypeSymbolParserRuleCall_1_1_0());
1531 }
1532 lv_type_2_0=ruleSymbol
1533 {
1534 if ($current==null) {
1535 $current = createModelElementForParent(grammarAccess.getParameterRule());
1536 }
1537 set(
1538 $current,
1539 "type",
1540 lv_type_2_0,
1541 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
1542 afterParserOrEnumRuleCall();
1543 }
1544 )
1545 )
1546 )?
1547 )
1548;
1549
1550// Entry rule entryRulePatternBody
1551entryRulePatternBody returns [EObject current=null]:
1552 { newCompositeNode(grammarAccess.getPatternBodyRule()); }
1553 iv_rulePatternBody=rulePatternBody
1554 { $current=$iv_rulePatternBody.current; }
1555 EOF;
1556
1557// Rule PatternBody
1558rulePatternBody returns [EObject current=null]
1559@init {
1560 enterRule();
1561}
1562@after {
1563 leaveRule();
1564}:
1565 (
1566 (
1567 {
1568 $current = forceCreateModelElement(
1569 grammarAccess.getPatternBodyAccess().getPatternBodyAction_0(),
1570 $current);
1571 }
1572 )
1573 (
1574 otherlv_1='true'
1575 {
1576 newLeafNode(otherlv_1, grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0());
1577 }
1578 |
1579 (
1580 (
1581 {
1582 newCompositeNode(grammarAccess.getPatternBodyAccess().getConstraintsConstraintParserRuleCall_1_1_0());
1583 }
1584 lv_constraints_2_0=ruleConstraint
1585 {
1586 if ($current==null) {
1587 $current = createModelElementForParent(grammarAccess.getPatternBodyRule());
1588 }
1589 add(
1590 $current,
1591 "constraints",
1592 lv_constraints_2_0,
1593 "org.eclipse.viatra.solver.language.SolverLanguage.Constraint");
1594 afterParserOrEnumRuleCall();
1595 }
1596 )
1597 )*
1598 )
1599 )
1600;
1601
1602// Entry rule entryRulePolarity
1603entryRulePolarity returns [EObject current=null]:
1604 { newCompositeNode(grammarAccess.getPolarityRule()); }
1605 iv_rulePolarity=rulePolarity
1606 { $current=$iv_rulePolarity.current; }
1607 EOF;
1608
1609// Rule Polarity
1610rulePolarity returns [EObject current=null]
1611@init {
1612 enterRule();
1613}
1614@after {
1615 leaveRule();
1616}:
1617 (
1618 (
1619 (
1620 {
1621 $current = forceCreateModelElement(
1622 grammarAccess.getPolarityAccess().getPositiveAction_0_0(),
1623 $current);
1624 }
1625 )
1626 otherlv_1='+'
1627 {
1628 newLeafNode(otherlv_1, grammarAccess.getPolarityAccess().getPlusSignKeyword_0_1());
1629 }
1630 )
1631 |
1632 (
1633 (
1634 {
1635 $current = forceCreateModelElement(
1636 grammarAccess.getPolarityAccess().getNegativeAction_1_0(),
1637 $current);
1638 }
1639 )
1640 otherlv_3='-'
1641 {
1642 newLeafNode(otherlv_3, grammarAccess.getPolarityAccess().getHyphenMinusKeyword_1_1());
1643 }
1644 )
1645 )
1646;
1647
1648// Entry rule entryRuleConstraint
1649entryRuleConstraint returns [EObject current=null]:
1650 { newCompositeNode(grammarAccess.getConstraintRule()); }
1651 iv_ruleConstraint=ruleConstraint
1652 { $current=$iv_ruleConstraint.current; }
1653 EOF;
1654
1655// Rule Constraint
1656ruleConstraint returns [EObject current=null]
1657@init {
1658 enterRule();
1659}
1660@after {
1661 leaveRule();
1662}:
1663 (
1664 (
1665 (
1666 {
1667 newCompositeNode(grammarAccess.getConstraintAccess().getPolarityPolarityParserRuleCall_0_0());
1668 }
1669 lv_polarity_0_0=rulePolarity
1670 {
1671 if ($current==null) {
1672 $current = createModelElementForParent(grammarAccess.getConstraintRule());
1673 }
1674 set(
1675 $current,
1676 "polarity",
1677 lv_polarity_0_0,
1678 "org.eclipse.viatra.solver.language.SolverLanguage.Polarity");
1679 afterParserOrEnumRuleCall();
1680 }
1681 )
1682 )?
1683 (
1684 (
1685 {
1686 newCompositeNode(grammarAccess.getConstraintAccess().getSymbolModelSymbolParserRuleCall_1_0());
1687 }
1688 lv_symbol_1_0=ruleModelSymbol
1689 {
1690 if ($current==null) {
1691 $current = createModelElementForParent(grammarAccess.getConstraintRule());
1692 }
1693 set(
1694 $current,
1695 "symbol",
1696 lv_symbol_1_0,
1697 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
1698 afterParserOrEnumRuleCall();
1699 }
1700 )
1701 )
1702 (
1703 (
1704 otherlv_2='('
1705 {
1706 newLeafNode(otherlv_2, grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_0_0());
1707 }
1708 (
1709 (
1710 {
1711 newCompositeNode(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_0_1_0());
1712 }
1713 lv_params_3_0=ruleLiteral
1714 {
1715 if ($current==null) {
1716 $current = createModelElementForParent(grammarAccess.getConstraintRule());
1717 }
1718 add(
1719 $current,
1720 "params",
1721 lv_params_3_0,
1722 "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
1723 afterParserOrEnumRuleCall();
1724 }
1725 )
1726 )*
1727 otherlv_4=')'
1728 {
1729 newLeafNode(otherlv_4, grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_0_2());
1730 }
1731 )
1732 |
1733 (
1734 (
1735 (
1736 {
1737 newCompositeNode(grammarAccess.getConstraintAccess().getClosureTypeClosureTypeParserRuleCall_2_1_0_0());
1738 }
1739 lv_closureType_5_0=ruleClosureType
1740 {
1741 if ($current==null) {
1742 $current = createModelElementForParent(grammarAccess.getConstraintRule());
1743 }
1744 set(
1745 $current,
1746 "closureType",
1747 lv_closureType_5_0,
1748 "org.eclipse.viatra.solver.language.SolverLanguage.ClosureType");
1749 afterParserOrEnumRuleCall();
1750 }
1751 )
1752 )
1753 otherlv_6='('
1754 {
1755 newLeafNode(otherlv_6, grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_1_1());
1756 }
1757 (
1758 (
1759 {
1760 newCompositeNode(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_2_0());
1761 }
1762 lv_params_7_0=ruleLiteral
1763 {
1764 if ($current==null) {
1765 $current = createModelElementForParent(grammarAccess.getConstraintRule());
1766 }
1767 add(
1768 $current,
1769 "params",
1770 lv_params_7_0,
1771 "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
1772 afterParserOrEnumRuleCall();
1773 }
1774 )
1775 )
1776 (
1777 (
1778 {
1779 newCompositeNode(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_3_0());
1780 }
1781 lv_params_8_0=ruleLiteral
1782 {
1783 if ($current==null) {
1784 $current = createModelElementForParent(grammarAccess.getConstraintRule());
1785 }
1786 add(
1787 $current,
1788 "params",
1789 lv_params_8_0,
1790 "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
1791 afterParserOrEnumRuleCall();
1792 }
1793 )
1794 )
1795 otherlv_9=')'
1796 {
1797 newLeafNode(otherlv_9, grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_1_4());
1798 }
1799 )
1800 )
1801 )
1802;
1803
1804// Entry rule entryRuleClosureType
1805entryRuleClosureType returns [EObject current=null]:
1806 { newCompositeNode(grammarAccess.getClosureTypeRule()); }
1807 iv_ruleClosureType=ruleClosureType
1808 { $current=$iv_ruleClosureType.current; }
1809 EOF;
1810
1811// Rule ClosureType
1812ruleClosureType returns [EObject current=null]
1813@init {
1814 enterRule();
1815}
1816@after {
1817 leaveRule();
1818}:
1819 (
1820 (
1821 (
1822 {
1823 $current = forceCreateModelElement(
1824 grammarAccess.getClosureTypeAccess().getReflexiveClosureAction_0_0(),
1825 $current);
1826 }
1827 )
1828 otherlv_1='*'
1829 {
1830 newLeafNode(otherlv_1, grammarAccess.getClosureTypeAccess().getAsteriskKeyword_0_1());
1831 }
1832 )
1833 |
1834 (
1835 (
1836 {
1837 $current = forceCreateModelElement(
1838 grammarAccess.getClosureTypeAccess().getIrreflexiveClosureAction_1_0(),
1839 $current);
1840 }
1841 )
1842 otherlv_3='+'
1843 {
1844 newLeafNode(otherlv_3, grammarAccess.getClosureTypeAccess().getPlusSignKeyword_1_1());
1845 }
1846 )
1847 )
1848;
1849
1850// Entry rule entryRuleLiteral
1851entryRuleLiteral returns [EObject current=null]:
1852 { newCompositeNode(grammarAccess.getLiteralRule()); }
1853 iv_ruleLiteral=ruleLiteral
1854 { $current=$iv_ruleLiteral.current; }
1855 EOF;
1856
1857// Rule Literal
1858ruleLiteral returns [EObject current=null]
1859@init {
1860 enterRule();
1861}
1862@after {
1863 leaveRule();
1864}:
1865 (
1866 {
1867 newCompositeNode(grammarAccess.getLiteralAccess().getVariableParserRuleCall_0());
1868 }
1869 this_Variable_0=ruleVariable
1870 {
1871 $current = $this_Variable_0.current;
1872 afterParserOrEnumRuleCall();
1873 }
1874 |
1875 {
1876 newCompositeNode(grammarAccess.getLiteralAccess().getDataObjectParserRuleCall_1());
1877 }
1878 this_DataObject_1=ruleDataObject
1879 {
1880 $current = $this_DataObject_1.current;
1881 afterParserOrEnumRuleCall();
1882 }
1883 )
1884;
1885
1886// Entry rule entryRuleVariable
1887entryRuleVariable returns [EObject current=null]:
1888 { newCompositeNode(grammarAccess.getVariableRule()); }
1889 iv_ruleVariable=ruleVariable
1890 { $current=$iv_ruleVariable.current; }
1891 EOF;
1892
1893// Rule Variable
1894ruleVariable returns [EObject current=null]
1895@init {
1896 enterRule();
1897}
1898@after {
1899 leaveRule();
1900}:
1901 (
1902 (
1903 lv_name_0_0=RULE_ID
1904 {
1905 newLeafNode(lv_name_0_0, grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0());
1906 }
1907 {
1908 if ($current==null) {
1909 $current = createModelElement(grammarAccess.getVariableRule());
1910 }
1911 setWithLastConsumed(
1912 $current,
1913 "name",
1914 lv_name_0_0,
1915 "org.eclipse.xtext.common.Terminals.ID");
1916 }
1917 )
1918 )
1919;
1920
1921// Entry rule entryRuleAllInstances
1922entryRuleAllInstances returns [EObject current=null]:
1923 { newCompositeNode(grammarAccess.getAllInstancesRule()); }
1924 iv_ruleAllInstances=ruleAllInstances
1925 { $current=$iv_ruleAllInstances.current; }
1926 EOF;
1927
1928// Rule AllInstances
1929ruleAllInstances returns [EObject current=null]
1930@init {
1931 enterRule();
1932}
1933@after {
1934 leaveRule();
1935}:
1936 (
1937 otherlv_0=':'
1938 {
1939 newLeafNode(otherlv_0, grammarAccess.getAllInstancesAccess().getColonKeyword_0());
1940 }
1941 (
1942 (
1943 {
1944 newCompositeNode(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0());
1945 }
1946 lv_symbol_1_0=ruleSymbol
1947 {
1948 if ($current==null) {
1949 $current = createModelElementForParent(grammarAccess.getAllInstancesRule());
1950 }
1951 set(
1952 $current,
1953 "symbol",
1954 lv_symbol_1_0,
1955 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
1956 afterParserOrEnumRuleCall();
1957 }
1958 )
1959 )
1960 )
1961;
1962
1963// Entry rule entryRuleAllObjects
1964entryRuleAllObjects returns [EObject current=null]:
1965 { newCompositeNode(grammarAccess.getAllObjectsRule()); }
1966 iv_ruleAllObjects=ruleAllObjects
1967 { $current=$iv_ruleAllObjects.current; }
1968 EOF;
1969
1970// Rule AllObjects
1971ruleAllObjects returns [EObject current=null]
1972@init {
1973 enterRule();
1974}
1975@after {
1976 leaveRule();
1977}:
1978 (
1979 (
1980 {
1981 $current = forceCreateModelElement(
1982 grammarAccess.getAllObjectsAccess().getAllObjectsAction_0(),
1983 $current);
1984 }
1985 )
1986 otherlv_1='*'
1987 {
1988 newLeafNode(otherlv_1, grammarAccess.getAllObjectsAccess().getAsteriskKeyword_1());
1989 }
1990 )
1991;
1992
1993// Entry rule entryRuleDefaultInterpretation
1994entryRuleDefaultInterpretation returns [EObject current=null]:
1995 { newCompositeNode(grammarAccess.getDefaultInterpretationRule()); }
1996 iv_ruleDefaultInterpretation=ruleDefaultInterpretation
1997 { $current=$iv_ruleDefaultInterpretation.current; }
1998 EOF;
1999
2000// Rule DefaultInterpretation
2001ruleDefaultInterpretation returns [EObject current=null]
2002@init {
2003 enterRule();
2004}
2005@after {
2006 leaveRule();
2007}:
2008 (
2009 otherlv_0='default'
2010 {
2011 newLeafNode(otherlv_0, grammarAccess.getDefaultInterpretationAccess().getDefaultKeyword_0());
2012 }
2013 (
2014 (
2015 {
2016 newCompositeNode(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0());
2017 }
2018 lv_interpretation_1_0=ruleBasicInterpretation
2019 {
2020 if ($current==null) {
2021 $current = createModelElementForParent(grammarAccess.getDefaultInterpretationRule());
2022 }
2023 set(
2024 $current,
2025 "interpretation",
2026 lv_interpretation_1_0,
2027 "org.eclipse.viatra.solver.language.SolverLanguage.BasicInterpretation");
2028 afterParserOrEnumRuleCall();
2029 }
2030 )
2031 )
2032 )
2033;
2034
2035// Entry rule entryRuleCDInterpretation
2036entryRuleCDInterpretation returns [EObject current=null]:
2037 { newCompositeNode(grammarAccess.getCDInterpretationRule()); }
2038 iv_ruleCDInterpretation=ruleCDInterpretation
2039 { $current=$iv_ruleCDInterpretation.current; }
2040 EOF;
2041
2042// Rule CDInterpretation
2043ruleCDInterpretation returns [EObject current=null]
2044@init {
2045 enterRule();
2046}
2047@after {
2048 leaveRule();
2049}:
2050 (
2051 {
2052 newCompositeNode(grammarAccess.getCDInterpretationAccess().getClassInterpretationParserRuleCall_0());
2053 }
2054 this_ClassInterpretation_0=ruleClassInterpretation
2055 {
2056 $current = $this_ClassInterpretation_0.current;
2057 afterParserOrEnumRuleCall();
2058 }
2059 |
2060 {
2061 newCompositeNode(grammarAccess.getCDInterpretationAccess().getEnumInterpretationParserRuleCall_1());
2062 }
2063 this_EnumInterpretation_1=ruleEnumInterpretation
2064 {
2065 $current = $this_EnumInterpretation_1.current;
2066 afterParserOrEnumRuleCall();
2067 }
2068 |
2069 {
2070 newCompositeNode(grammarAccess.getCDInterpretationAccess().getGlobalRelationInterpretationParserRuleCall_2());
2071 }
2072 this_GlobalRelationInterpretation_2=ruleGlobalRelationInterpretation
2073 {
2074 $current = $this_GlobalRelationInterpretation_2.current;
2075 afterParserOrEnumRuleCall();
2076 }
2077 )
2078;
2079
2080// Entry rule entryRuleClassInterpretation
2081entryRuleClassInterpretation returns [EObject current=null]:
2082 { newCompositeNode(grammarAccess.getClassInterpretationRule()); }
2083 iv_ruleClassInterpretation=ruleClassInterpretation
2084 { $current=$iv_ruleClassInterpretation.current; }
2085 EOF;
2086
2087// Rule ClassInterpretation
2088ruleClassInterpretation returns [EObject current=null]
2089@init {
2090 enterRule();
2091}
2092@after {
2093 leaveRule();
2094}:
2095 (
2096 (
2097 (
2098 lv_abstract_0_0='abstract'
2099 {
2100 newLeafNode(lv_abstract_0_0, grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0());
2101 }
2102 {
2103 if ($current==null) {
2104 $current = createModelElement(grammarAccess.getClassInterpretationRule());
2105 }
2106 setWithLastConsumed($current, "abstract", true, "abstract");
2107 }
2108 )
2109 )
2110 otherlv_1='class'
2111 {
2112 newLeafNode(otherlv_1, grammarAccess.getClassInterpretationAccess().getClassKeyword_1());
2113 }
2114 (
2115 (
2116 {
2117 newCompositeNode(grammarAccess.getClassInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
2118 }
2119 lv_symbol_2_0=ruleModelSymbol
2120 {
2121 if ($current==null) {
2122 $current = createModelElementForParent(grammarAccess.getClassInterpretationRule());
2123 }
2124 set(
2125 $current,
2126 "symbol",
2127 lv_symbol_2_0,
2128 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
2129 afterParserOrEnumRuleCall();
2130 }
2131 )
2132 )
2133 (
2134 otherlv_3='extends'
2135 {
2136 newLeafNode(otherlv_3, grammarAccess.getClassInterpretationAccess().getExtendsKeyword_3_0());
2137 }
2138 (
2139 (
2140 {
2141 newCompositeNode(grammarAccess.getClassInterpretationAccess().getSupertypesModelSymbolParserRuleCall_3_1_0());
2142 }
2143 lv_supertypes_4_0=ruleModelSymbol
2144 {
2145 if ($current==null) {
2146 $current = createModelElementForParent(grammarAccess.getClassInterpretationRule());
2147 }
2148 add(
2149 $current,
2150 "supertypes",
2151 lv_supertypes_4_0,
2152 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
2153 afterParserOrEnumRuleCall();
2154 }
2155 )
2156 )+
2157 )?
2158 otherlv_5='{'
2159 {
2160 newLeafNode(otherlv_5, grammarAccess.getClassInterpretationAccess().getLeftCurlyBracketKeyword_4());
2161 }
2162 (
2163 (
2164 {
2165 newCompositeNode(grammarAccess.getClassInterpretationAccess().getFieltFieldRelationInterpretationParserRuleCall_5_0());
2166 }
2167 lv_fielt_6_0=ruleFieldRelationInterpretation
2168 {
2169 if ($current==null) {
2170 $current = createModelElementForParent(grammarAccess.getClassInterpretationRule());
2171 }
2172 add(
2173 $current,
2174 "fielt",
2175 lv_fielt_6_0,
2176 "org.eclipse.viatra.solver.language.SolverLanguage.FieldRelationInterpretation");
2177 afterParserOrEnumRuleCall();
2178 }
2179 )
2180 )*
2181 otherlv_7='}'
2182 {
2183 newLeafNode(otherlv_7, grammarAccess.getClassInterpretationAccess().getRightCurlyBracketKeyword_6());
2184 }
2185 )
2186;
2187
2188// Entry rule entryRuleEnumInterpretation
2189entryRuleEnumInterpretation returns [EObject current=null]:
2190 { newCompositeNode(grammarAccess.getEnumInterpretationRule()); }
2191 iv_ruleEnumInterpretation=ruleEnumInterpretation
2192 { $current=$iv_ruleEnumInterpretation.current; }
2193 EOF;
2194
2195// Rule EnumInterpretation
2196ruleEnumInterpretation returns [EObject current=null]
2197@init {
2198 enterRule();
2199}
2200@after {
2201 leaveRule();
2202}:
2203 (
2204 otherlv_0='enum'
2205 {
2206 newLeafNode(otherlv_0, grammarAccess.getEnumInterpretationAccess().getEnumKeyword_0());
2207 }
2208 (
2209 (
2210 {
2211 newCompositeNode(grammarAccess.getEnumInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
2212 }
2213 lv_Symbol_1_0=ruleModelSymbol
2214 {
2215 if ($current==null) {
2216 $current = createModelElementForParent(grammarAccess.getEnumInterpretationRule());
2217 }
2218 set(
2219 $current,
2220 "Symbol",
2221 lv_Symbol_1_0,
2222 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
2223 afterParserOrEnumRuleCall();
2224 }
2225 )
2226 )
2227 otherlv_2='{'
2228 {
2229 newLeafNode(otherlv_2, grammarAccess.getEnumInterpretationAccess().getLeftCurlyBracketKeyword_2());
2230 }
2231 (
2232 (
2233 {
2234 newCompositeNode(grammarAccess.getEnumInterpretationAccess().getObjectsNamedObjectParserRuleCall_3_0());
2235 }
2236 lv_objects_3_0=ruleNamedObject
2237 {
2238 if ($current==null) {
2239 $current = createModelElementForParent(grammarAccess.getEnumInterpretationRule());
2240 }
2241 add(
2242 $current,
2243 "objects",
2244 lv_objects_3_0,
2245 "org.eclipse.viatra.solver.language.SolverLanguage.NamedObject");
2246 afterParserOrEnumRuleCall();
2247 }
2248 )
2249 )+
2250 otherlv_4='}'
2251 {
2252 newLeafNode(otherlv_4, grammarAccess.getEnumInterpretationAccess().getRightCurlyBracketKeyword_4());
2253 }
2254 )
2255;
2256
2257// Entry rule entryRuleFieldRelationInterpretation
2258entryRuleFieldRelationInterpretation returns [EObject current=null]:
2259 { newCompositeNode(grammarAccess.getFieldRelationInterpretationRule()); }
2260 iv_ruleFieldRelationInterpretation=ruleFieldRelationInterpretation
2261 { $current=$iv_ruleFieldRelationInterpretation.current; }
2262 EOF;
2263
2264// Rule FieldRelationInterpretation
2265ruleFieldRelationInterpretation returns [EObject current=null]
2266@init {
2267 enterRule();
2268}
2269@after {
2270 leaveRule();
2271}:
2272 (
2273 (
2274 (
2275 lv_containment_0_0='containment'
2276 {
2277 newLeafNode(lv_containment_0_0, grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
2278 }
2279 {
2280 if ($current==null) {
2281 $current = createModelElement(grammarAccess.getFieldRelationInterpretationRule());
2282 }
2283 setWithLastConsumed($current, "containment", true, "containment");
2284 }
2285 )
2286 )
2287 (
2288 (
2289 {
2290 newCompositeNode(grammarAccess.getFieldRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
2291 }
2292 lv_symbol_1_0=ruleModelSymbol
2293 {
2294 if ($current==null) {
2295 $current = createModelElementForParent(grammarAccess.getFieldRelationInterpretationRule());
2296 }
2297 set(
2298 $current,
2299 "symbol",
2300 lv_symbol_1_0,
2301 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
2302 afterParserOrEnumRuleCall();
2303 }
2304 )
2305 )
2306 otherlv_2=':'
2307 {
2308 newLeafNode(otherlv_2, grammarAccess.getFieldRelationInterpretationAccess().getColonKeyword_2());
2309 }
2310 (
2311 (
2312 {
2313 newCompositeNode(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityMultiplicityDefinitionParserRuleCall_3_0());
2314 }
2315 lv_multiplicity_3_0=ruleMultiplicityDefinition
2316 {
2317 if ($current==null) {
2318 $current = createModelElementForParent(grammarAccess.getFieldRelationInterpretationRule());
2319 }
2320 set(
2321 $current,
2322 "multiplicity",
2323 lv_multiplicity_3_0,
2324 "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
2325 afterParserOrEnumRuleCall();
2326 }
2327 )
2328 )?
2329 (
2330 (
2331 {
2332 newCompositeNode(grammarAccess.getFieldRelationInterpretationAccess().getTargetSymbolParserRuleCall_4_0());
2333 }
2334 lv_target_4_0=ruleSymbol
2335 {
2336 if ($current==null) {
2337 $current = createModelElementForParent(grammarAccess.getFieldRelationInterpretationRule());
2338 }
2339 set(
2340 $current,
2341 "target",
2342 lv_target_4_0,
2343 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
2344 afterParserOrEnumRuleCall();
2345 }
2346 )
2347 )
2348 )
2349;
2350
2351// Entry rule entryRuleGlobalRelationInterpretation
2352entryRuleGlobalRelationInterpretation returns [EObject current=null]:
2353 { newCompositeNode(grammarAccess.getGlobalRelationInterpretationRule()); }
2354 iv_ruleGlobalRelationInterpretation=ruleGlobalRelationInterpretation
2355 { $current=$iv_ruleGlobalRelationInterpretation.current; }
2356 EOF;
2357
2358// Rule GlobalRelationInterpretation
2359ruleGlobalRelationInterpretation returns [EObject current=null]
2360@init {
2361 enterRule();
2362}
2363@after {
2364 leaveRule();
2365}:
2366 (
2367 (
2368 (
2369 lv_containment_0_0='containment'
2370 {
2371 newLeafNode(lv_containment_0_0, grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
2372 }
2373 {
2374 if ($current==null) {
2375 $current = createModelElement(grammarAccess.getGlobalRelationInterpretationRule());
2376 }
2377 setWithLastConsumed($current, "containment", true, "containment");
2378 }
2379 )
2380 )
2381 otherlv_1='relation'
2382 {
2383 newLeafNode(otherlv_1, grammarAccess.getGlobalRelationInterpretationAccess().getRelationKeyword_1());
2384 }
2385 (
2386 (
2387 {
2388 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
2389 }
2390 lv_symbol_2_0=ruleModelSymbol
2391 {
2392 if ($current==null) {
2393 $current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
2394 }
2395 set(
2396 $current,
2397 "symbol",
2398 lv_symbol_2_0,
2399 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
2400 afterParserOrEnumRuleCall();
2401 }
2402 )
2403 )
2404 otherlv_3=':'
2405 {
2406 newLeafNode(otherlv_3, grammarAccess.getGlobalRelationInterpretationAccess().getColonKeyword_3());
2407 }
2408 (
2409 (
2410 {
2411 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0());
2412 }
2413 lv_sourceMultiplicity_4_0=ruleMultiplicityDefinition
2414 {
2415 if ($current==null) {
2416 $current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
2417 }
2418 set(
2419 $current,
2420 "sourceMultiplicity",
2421 lv_sourceMultiplicity_4_0,
2422 "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
2423 afterParserOrEnumRuleCall();
2424 }
2425 )
2426 )?
2427 (
2428 (
2429 {
2430 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getSourceSymbolParserRuleCall_5_0());
2431 }
2432 lv_source_5_0=ruleSymbol
2433 {
2434 if ($current==null) {
2435 $current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
2436 }
2437 set(
2438 $current,
2439 "source",
2440 lv_source_5_0,
2441 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
2442 afterParserOrEnumRuleCall();
2443 }
2444 )
2445 )
2446 (
2447 (
2448 {
2449 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0());
2450 }
2451 lv_targetMultiplicity_6_0=ruleMultiplicityDefinition
2452 {
2453 if ($current==null) {
2454 $current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
2455 }
2456 set(
2457 $current,
2458 "targetMultiplicity",
2459 lv_targetMultiplicity_6_0,
2460 "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
2461 afterParserOrEnumRuleCall();
2462 }
2463 )
2464 )?
2465 (
2466 (
2467 {
2468 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getTargetSymbolParserRuleCall_7_0());
2469 }
2470 lv_target_7_0=ruleSymbol
2471 {
2472 if ($current==null) {
2473 $current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
2474 }
2475 set(
2476 $current,
2477 "target",
2478 lv_target_7_0,
2479 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
2480 afterParserOrEnumRuleCall();
2481 }
2482 )
2483 )
2484 )
2485;
2486
2487// Entry rule entryRuleMultiplicityDefinition
2488entryRuleMultiplicityDefinition returns [EObject current=null]:
2489 { newCompositeNode(grammarAccess.getMultiplicityDefinitionRule()); }
2490 iv_ruleMultiplicityDefinition=ruleMultiplicityDefinition
2491 { $current=$iv_ruleMultiplicityDefinition.current; }
2492 EOF;
2493
2494// Rule MultiplicityDefinition
2495ruleMultiplicityDefinition returns [EObject current=null]
2496@init {
2497 enterRule();
2498}
2499@after {
2500 leaveRule();
2501}:
2502 (
2503 (
2504 (
2505 lv_lower_0_0=RULE_INT
2506 {
2507 newLeafNode(lv_lower_0_0, grammarAccess.getMultiplicityDefinitionAccess().getLowerINTTerminalRuleCall_0_0());
2508 }
2509 {
2510 if ($current==null) {
2511 $current = createModelElement(grammarAccess.getMultiplicityDefinitionRule());
2512 }
2513 setWithLastConsumed(
2514 $current,
2515 "lower",
2516 lv_lower_0_0,
2517 "org.eclipse.xtext.common.Terminals.INT");
2518 }
2519 )
2520 )
2521 otherlv_1='..'
2522 {
2523 newLeafNode(otherlv_1, grammarAccess.getMultiplicityDefinitionAccess().getFullStopFullStopKeyword_1());
2524 }
2525 (
2526 (
2527 (
2528 lv_upper_2_0=RULE_INT
2529 {
2530 newLeafNode(lv_upper_2_0, grammarAccess.getMultiplicityDefinitionAccess().getUpperINTTerminalRuleCall_2_0_0());
2531 }
2532 {
2533 if ($current==null) {
2534 $current = createModelElement(grammarAccess.getMultiplicityDefinitionRule());
2535 }
2536 setWithLastConsumed(
2537 $current,
2538 "upper",
2539 lv_upper_2_0,
2540 "org.eclipse.xtext.common.Terminals.INT");
2541 }
2542 )
2543 )
2544 |
2545 (
2546 (
2547 lv_unlimitedUpper_3_0='*'
2548 {
2549 newLeafNode(lv_unlimitedUpper_3_0, grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0());
2550 }
2551 {
2552 if ($current==null) {
2553 $current = createModelElement(grammarAccess.getMultiplicityDefinitionRule());
2554 }
2555 setWithLastConsumed($current, "unlimitedUpper", true, "*");
2556 }
2557 )
2558 )
2559 )
2560 )
2561;
2562
2563RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"';
2564
2565RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
2566
2567RULE_INT : ('0'..'9')+;
2568
2569RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
2570
2571RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
2572
2573RULE_WS : (' '|'\t'|'\r'|'\n')+;
2574
2575RULE_ANY_OTHER : .;
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.tokens b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.tokens
new file mode 100644
index 00000000..1abe7de4
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguage.tokens
@@ -0,0 +1,67 @@
1'('=17
2')'=18
3'*'=30
4'+'=29
5'-'=11
6'.'=12
7'..'=40
8':'=19
9'\''=26
10'abstract'=32
11'bool'=22
12'class'=33
13'containment'=38
14'default'=31
15'enum'=37
16'equals'=21
17'error'=16
18'exists'=20
19'extends'=34
20'false'=14
21'int'=23
22'predicate'=27
23'real'=24
24'relation'=39
25'string'=25
26'true'=13
27'unknown'=15
28'{'=35
29'|'=28
30'}'=36
31RULE_ANY_OTHER=10
32RULE_ID=5
33RULE_INT=4
34RULE_ML_COMMENT=7
35RULE_SL_COMMENT=8
36RULE_STRING=6
37RULE_WS=9
38T__11=11
39T__12=12
40T__13=13
41T__14=14
42T__15=15
43T__16=16
44T__17=17
45T__18=18
46T__19=19
47T__20=20
48T__21=21
49T__22=22
50T__23=23
51T__24=24
52T__25=25
53T__26=26
54T__27=27
55T__28=28
56T__29=29
57T__30=30
58T__31=31
59T__32=32
60T__33=33
61T__34=34
62T__35=35
63T__36=36
64T__37=37
65T__38=38
66T__39=39
67T__40=40
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageLexer.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageLexer.java
new file mode 100644
index 00000000..f8cb627c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageLexer.java
@@ -0,0 +1,1669 @@
1package org.eclipse.viatra.solver.language.parser.antlr.internal;
2
3// Hack: Use our own Lexer superclass by means of import.
4// Currently there is no other way to specify the superclass for the lexer.
5import org.eclipse.xtext.parser.antlr.Lexer;
6
7
8import org.antlr.runtime.*;
9import java.util.Stack;
10import java.util.List;
11import java.util.ArrayList;
12
13@SuppressWarnings("all")
14public class InternalSolverLanguageLexer extends Lexer {
15 public static final int RULE_STRING=6;
16 public static final int RULE_SL_COMMENT=8;
17 public static final int T__19=19;
18 public static final int T__15=15;
19 public static final int T__37=37;
20 public static final int T__16=16;
21 public static final int T__38=38;
22 public static final int T__17=17;
23 public static final int T__39=39;
24 public static final int T__18=18;
25 public static final int T__11=11;
26 public static final int T__33=33;
27 public static final int T__12=12;
28 public static final int T__34=34;
29 public static final int T__13=13;
30 public static final int T__35=35;
31 public static final int T__14=14;
32 public static final int T__36=36;
33 public static final int EOF=-1;
34 public static final int T__30=30;
35 public static final int T__31=31;
36 public static final int T__32=32;
37 public static final int RULE_ID=5;
38 public static final int RULE_WS=9;
39 public static final int RULE_ANY_OTHER=10;
40 public static final int T__26=26;
41 public static final int T__27=27;
42 public static final int T__28=28;
43 public static final int RULE_INT=4;
44 public static final int T__29=29;
45 public static final int T__22=22;
46 public static final int RULE_ML_COMMENT=7;
47 public static final int T__23=23;
48 public static final int T__24=24;
49 public static final int T__25=25;
50 public static final int T__40=40;
51 public static final int T__20=20;
52 public static final int T__21=21;
53
54 // delegates
55 // delegators
56
57 public InternalSolverLanguageLexer() {;}
58 public InternalSolverLanguageLexer(CharStream input) {
59 this(input, new RecognizerSharedState());
60 }
61 public InternalSolverLanguageLexer(CharStream input, RecognizerSharedState state) {
62 super(input,state);
63
64 }
65 public String getGrammarFileName() { return "InternalSolverLanguage.g"; }
66
67 // $ANTLR start "T__11"
68 public final void mT__11() throws RecognitionException {
69 try {
70 int _type = T__11;
71 int _channel = DEFAULT_TOKEN_CHANNEL;
72 // InternalSolverLanguage.g:11:7: ( '-' )
73 // InternalSolverLanguage.g:11:9: '-'
74 {
75 match('-');
76
77 }
78
79 state.type = _type;
80 state.channel = _channel;
81 }
82 finally {
83 }
84 }
85 // $ANTLR end "T__11"
86
87 // $ANTLR start "T__12"
88 public final void mT__12() throws RecognitionException {
89 try {
90 int _type = T__12;
91 int _channel = DEFAULT_TOKEN_CHANNEL;
92 // InternalSolverLanguage.g:12:7: ( '.' )
93 // InternalSolverLanguage.g:12:9: '.'
94 {
95 match('.');
96
97 }
98
99 state.type = _type;
100 state.channel = _channel;
101 }
102 finally {
103 }
104 }
105 // $ANTLR end "T__12"
106
107 // $ANTLR start "T__13"
108 public final void mT__13() throws RecognitionException {
109 try {
110 int _type = T__13;
111 int _channel = DEFAULT_TOKEN_CHANNEL;
112 // InternalSolverLanguage.g:13:7: ( 'true' )
113 // InternalSolverLanguage.g:13:9: 'true'
114 {
115 match("true");
116
117
118 }
119
120 state.type = _type;
121 state.channel = _channel;
122 }
123 finally {
124 }
125 }
126 // $ANTLR end "T__13"
127
128 // $ANTLR start "T__14"
129 public final void mT__14() throws RecognitionException {
130 try {
131 int _type = T__14;
132 int _channel = DEFAULT_TOKEN_CHANNEL;
133 // InternalSolverLanguage.g:14:7: ( 'false' )
134 // InternalSolverLanguage.g:14:9: 'false'
135 {
136 match("false");
137
138
139 }
140
141 state.type = _type;
142 state.channel = _channel;
143 }
144 finally {
145 }
146 }
147 // $ANTLR end "T__14"
148
149 // $ANTLR start "T__15"
150 public final void mT__15() throws RecognitionException {
151 try {
152 int _type = T__15;
153 int _channel = DEFAULT_TOKEN_CHANNEL;
154 // InternalSolverLanguage.g:15:7: ( 'unknown' )
155 // InternalSolverLanguage.g:15:9: 'unknown'
156 {
157 match("unknown");
158
159
160 }
161
162 state.type = _type;
163 state.channel = _channel;
164 }
165 finally {
166 }
167 }
168 // $ANTLR end "T__15"
169
170 // $ANTLR start "T__16"
171 public final void mT__16() throws RecognitionException {
172 try {
173 int _type = T__16;
174 int _channel = DEFAULT_TOKEN_CHANNEL;
175 // InternalSolverLanguage.g:16:7: ( 'error' )
176 // InternalSolverLanguage.g:16:9: 'error'
177 {
178 match("error");
179
180
181 }
182
183 state.type = _type;
184 state.channel = _channel;
185 }
186 finally {
187 }
188 }
189 // $ANTLR end "T__16"
190
191 // $ANTLR start "T__17"
192 public final void mT__17() throws RecognitionException {
193 try {
194 int _type = T__17;
195 int _channel = DEFAULT_TOKEN_CHANNEL;
196 // InternalSolverLanguage.g:17:7: ( '(' )
197 // InternalSolverLanguage.g:17:9: '('
198 {
199 match('(');
200
201 }
202
203 state.type = _type;
204 state.channel = _channel;
205 }
206 finally {
207 }
208 }
209 // $ANTLR end "T__17"
210
211 // $ANTLR start "T__18"
212 public final void mT__18() throws RecognitionException {
213 try {
214 int _type = T__18;
215 int _channel = DEFAULT_TOKEN_CHANNEL;
216 // InternalSolverLanguage.g:18:7: ( ')' )
217 // InternalSolverLanguage.g:18:9: ')'
218 {
219 match(')');
220
221 }
222
223 state.type = _type;
224 state.channel = _channel;
225 }
226 finally {
227 }
228 }
229 // $ANTLR end "T__18"
230
231 // $ANTLR start "T__19"
232 public final void mT__19() throws RecognitionException {
233 try {
234 int _type = T__19;
235 int _channel = DEFAULT_TOKEN_CHANNEL;
236 // InternalSolverLanguage.g:19:7: ( ':' )
237 // InternalSolverLanguage.g:19:9: ':'
238 {
239 match(':');
240
241 }
242
243 state.type = _type;
244 state.channel = _channel;
245 }
246 finally {
247 }
248 }
249 // $ANTLR end "T__19"
250
251 // $ANTLR start "T__20"
252 public final void mT__20() throws RecognitionException {
253 try {
254 int _type = T__20;
255 int _channel = DEFAULT_TOKEN_CHANNEL;
256 // InternalSolverLanguage.g:20:7: ( 'exists' )
257 // InternalSolverLanguage.g:20:9: 'exists'
258 {
259 match("exists");
260
261
262 }
263
264 state.type = _type;
265 state.channel = _channel;
266 }
267 finally {
268 }
269 }
270 // $ANTLR end "T__20"
271
272 // $ANTLR start "T__21"
273 public final void mT__21() throws RecognitionException {
274 try {
275 int _type = T__21;
276 int _channel = DEFAULT_TOKEN_CHANNEL;
277 // InternalSolverLanguage.g:21:7: ( 'equals' )
278 // InternalSolverLanguage.g:21:9: 'equals'
279 {
280 match("equals");
281
282
283 }
284
285 state.type = _type;
286 state.channel = _channel;
287 }
288 finally {
289 }
290 }
291 // $ANTLR end "T__21"
292
293 // $ANTLR start "T__22"
294 public final void mT__22() throws RecognitionException {
295 try {
296 int _type = T__22;
297 int _channel = DEFAULT_TOKEN_CHANNEL;
298 // InternalSolverLanguage.g:22:7: ( 'bool' )
299 // InternalSolverLanguage.g:22:9: 'bool'
300 {
301 match("bool");
302
303
304 }
305
306 state.type = _type;
307 state.channel = _channel;
308 }
309 finally {
310 }
311 }
312 // $ANTLR end "T__22"
313
314 // $ANTLR start "T__23"
315 public final void mT__23() throws RecognitionException {
316 try {
317 int _type = T__23;
318 int _channel = DEFAULT_TOKEN_CHANNEL;
319 // InternalSolverLanguage.g:23:7: ( 'int' )
320 // InternalSolverLanguage.g:23:9: 'int'
321 {
322 match("int");
323
324
325 }
326
327 state.type = _type;
328 state.channel = _channel;
329 }
330 finally {
331 }
332 }
333 // $ANTLR end "T__23"
334
335 // $ANTLR start "T__24"
336 public final void mT__24() throws RecognitionException {
337 try {
338 int _type = T__24;
339 int _channel = DEFAULT_TOKEN_CHANNEL;
340 // InternalSolverLanguage.g:24:7: ( 'real' )
341 // InternalSolverLanguage.g:24:9: 'real'
342 {
343 match("real");
344
345
346 }
347
348 state.type = _type;
349 state.channel = _channel;
350 }
351 finally {
352 }
353 }
354 // $ANTLR end "T__24"
355
356 // $ANTLR start "T__25"
357 public final void mT__25() throws RecognitionException {
358 try {
359 int _type = T__25;
360 int _channel = DEFAULT_TOKEN_CHANNEL;
361 // InternalSolverLanguage.g:25:7: ( 'string' )
362 // InternalSolverLanguage.g:25:9: 'string'
363 {
364 match("string");
365
366
367 }
368
369 state.type = _type;
370 state.channel = _channel;
371 }
372 finally {
373 }
374 }
375 // $ANTLR end "T__25"
376
377 // $ANTLR start "T__26"
378 public final void mT__26() throws RecognitionException {
379 try {
380 int _type = T__26;
381 int _channel = DEFAULT_TOKEN_CHANNEL;
382 // InternalSolverLanguage.g:26:7: ( '\\'' )
383 // InternalSolverLanguage.g:26:9: '\\''
384 {
385 match('\'');
386
387 }
388
389 state.type = _type;
390 state.channel = _channel;
391 }
392 finally {
393 }
394 }
395 // $ANTLR end "T__26"
396
397 // $ANTLR start "T__27"
398 public final void mT__27() throws RecognitionException {
399 try {
400 int _type = T__27;
401 int _channel = DEFAULT_TOKEN_CHANNEL;
402 // InternalSolverLanguage.g:27:7: ( 'predicate' )
403 // InternalSolverLanguage.g:27:9: 'predicate'
404 {
405 match("predicate");
406
407
408 }
409
410 state.type = _type;
411 state.channel = _channel;
412 }
413 finally {
414 }
415 }
416 // $ANTLR end "T__27"
417
418 // $ANTLR start "T__28"
419 public final void mT__28() throws RecognitionException {
420 try {
421 int _type = T__28;
422 int _channel = DEFAULT_TOKEN_CHANNEL;
423 // InternalSolverLanguage.g:28:7: ( '|' )
424 // InternalSolverLanguage.g:28:9: '|'
425 {
426 match('|');
427
428 }
429
430 state.type = _type;
431 state.channel = _channel;
432 }
433 finally {
434 }
435 }
436 // $ANTLR end "T__28"
437
438 // $ANTLR start "T__29"
439 public final void mT__29() throws RecognitionException {
440 try {
441 int _type = T__29;
442 int _channel = DEFAULT_TOKEN_CHANNEL;
443 // InternalSolverLanguage.g:29:7: ( '+' )
444 // InternalSolverLanguage.g:29:9: '+'
445 {
446 match('+');
447
448 }
449
450 state.type = _type;
451 state.channel = _channel;
452 }
453 finally {
454 }
455 }
456 // $ANTLR end "T__29"
457
458 // $ANTLR start "T__30"
459 public final void mT__30() throws RecognitionException {
460 try {
461 int _type = T__30;
462 int _channel = DEFAULT_TOKEN_CHANNEL;
463 // InternalSolverLanguage.g:30:7: ( '*' )
464 // InternalSolverLanguage.g:30:9: '*'
465 {
466 match('*');
467
468 }
469
470 state.type = _type;
471 state.channel = _channel;
472 }
473 finally {
474 }
475 }
476 // $ANTLR end "T__30"
477
478 // $ANTLR start "T__31"
479 public final void mT__31() throws RecognitionException {
480 try {
481 int _type = T__31;
482 int _channel = DEFAULT_TOKEN_CHANNEL;
483 // InternalSolverLanguage.g:31:7: ( 'default' )
484 // InternalSolverLanguage.g:31:9: 'default'
485 {
486 match("default");
487
488
489 }
490
491 state.type = _type;
492 state.channel = _channel;
493 }
494 finally {
495 }
496 }
497 // $ANTLR end "T__31"
498
499 // $ANTLR start "T__32"
500 public final void mT__32() throws RecognitionException {
501 try {
502 int _type = T__32;
503 int _channel = DEFAULT_TOKEN_CHANNEL;
504 // InternalSolverLanguage.g:32:7: ( 'abstract' )
505 // InternalSolverLanguage.g:32:9: 'abstract'
506 {
507 match("abstract");
508
509
510 }
511
512 state.type = _type;
513 state.channel = _channel;
514 }
515 finally {
516 }
517 }
518 // $ANTLR end "T__32"
519
520 // $ANTLR start "T__33"
521 public final void mT__33() throws RecognitionException {
522 try {
523 int _type = T__33;
524 int _channel = DEFAULT_TOKEN_CHANNEL;
525 // InternalSolverLanguage.g:33:7: ( 'class' )
526 // InternalSolverLanguage.g:33:9: 'class'
527 {
528 match("class");
529
530
531 }
532
533 state.type = _type;
534 state.channel = _channel;
535 }
536 finally {
537 }
538 }
539 // $ANTLR end "T__33"
540
541 // $ANTLR start "T__34"
542 public final void mT__34() throws RecognitionException {
543 try {
544 int _type = T__34;
545 int _channel = DEFAULT_TOKEN_CHANNEL;
546 // InternalSolverLanguage.g:34:7: ( 'extends' )
547 // InternalSolverLanguage.g:34:9: 'extends'
548 {
549 match("extends");
550
551
552 }
553
554 state.type = _type;
555 state.channel = _channel;
556 }
557 finally {
558 }
559 }
560 // $ANTLR end "T__34"
561
562 // $ANTLR start "T__35"
563 public final void mT__35() throws RecognitionException {
564 try {
565 int _type = T__35;
566 int _channel = DEFAULT_TOKEN_CHANNEL;
567 // InternalSolverLanguage.g:35:7: ( '{' )
568 // InternalSolverLanguage.g:35:9: '{'
569 {
570 match('{');
571
572 }
573
574 state.type = _type;
575 state.channel = _channel;
576 }
577 finally {
578 }
579 }
580 // $ANTLR end "T__35"
581
582 // $ANTLR start "T__36"
583 public final void mT__36() throws RecognitionException {
584 try {
585 int _type = T__36;
586 int _channel = DEFAULT_TOKEN_CHANNEL;
587 // InternalSolverLanguage.g:36:7: ( '}' )
588 // InternalSolverLanguage.g:36:9: '}'
589 {
590 match('}');
591
592 }
593
594 state.type = _type;
595 state.channel = _channel;
596 }
597 finally {
598 }
599 }
600 // $ANTLR end "T__36"
601
602 // $ANTLR start "T__37"
603 public final void mT__37() throws RecognitionException {
604 try {
605 int _type = T__37;
606 int _channel = DEFAULT_TOKEN_CHANNEL;
607 // InternalSolverLanguage.g:37:7: ( 'enum' )
608 // InternalSolverLanguage.g:37:9: 'enum'
609 {
610 match("enum");
611
612
613 }
614
615 state.type = _type;
616 state.channel = _channel;
617 }
618 finally {
619 }
620 }
621 // $ANTLR end "T__37"
622
623 // $ANTLR start "T__38"
624 public final void mT__38() throws RecognitionException {
625 try {
626 int _type = T__38;
627 int _channel = DEFAULT_TOKEN_CHANNEL;
628 // InternalSolverLanguage.g:38:7: ( 'containment' )
629 // InternalSolverLanguage.g:38:9: 'containment'
630 {
631 match("containment");
632
633
634 }
635
636 state.type = _type;
637 state.channel = _channel;
638 }
639 finally {
640 }
641 }
642 // $ANTLR end "T__38"
643
644 // $ANTLR start "T__39"
645 public final void mT__39() throws RecognitionException {
646 try {
647 int _type = T__39;
648 int _channel = DEFAULT_TOKEN_CHANNEL;
649 // InternalSolverLanguage.g:39:7: ( 'relation' )
650 // InternalSolverLanguage.g:39:9: 'relation'
651 {
652 match("relation");
653
654
655 }
656
657 state.type = _type;
658 state.channel = _channel;
659 }
660 finally {
661 }
662 }
663 // $ANTLR end "T__39"
664
665 // $ANTLR start "T__40"
666 public final void mT__40() throws RecognitionException {
667 try {
668 int _type = T__40;
669 int _channel = DEFAULT_TOKEN_CHANNEL;
670 // InternalSolverLanguage.g:40:7: ( '..' )
671 // InternalSolverLanguage.g:40:9: '..'
672 {
673 match("..");
674
675
676 }
677
678 state.type = _type;
679 state.channel = _channel;
680 }
681 finally {
682 }
683 }
684 // $ANTLR end "T__40"
685
686 // $ANTLR start "RULE_STRING"
687 public final void mRULE_STRING() throws RecognitionException {
688 try {
689 int _type = RULE_STRING;
690 int _channel = DEFAULT_TOKEN_CHANNEL;
691 // InternalSolverLanguage.g:2563:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' )
692 // InternalSolverLanguage.g:2563:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
693 {
694 match('\"');
695 // InternalSolverLanguage.g:2563:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
696 loop1:
697 do {
698 int alt1=3;
699 int LA1_0 = input.LA(1);
700
701 if ( (LA1_0=='\\') ) {
702 alt1=1;
703 }
704 else if ( ((LA1_0>='\u0000' && LA1_0<='!')||(LA1_0>='#' && LA1_0<='[')||(LA1_0>=']' && LA1_0<='\uFFFF')) ) {
705 alt1=2;
706 }
707
708
709 switch (alt1) {
710 case 1 :
711 // InternalSolverLanguage.g:2563:20: '\\\\' .
712 {
713 match('\\');
714 matchAny();
715
716 }
717 break;
718 case 2 :
719 // InternalSolverLanguage.g:2563:27: ~ ( ( '\\\\' | '\"' ) )
720 {
721 if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
722 input.consume();
723
724 }
725 else {
726 MismatchedSetException mse = new MismatchedSetException(null,input);
727 recover(mse);
728 throw mse;}
729
730
731 }
732 break;
733
734 default :
735 break loop1;
736 }
737 } while (true);
738
739 match('\"');
740
741 }
742
743 state.type = _type;
744 state.channel = _channel;
745 }
746 finally {
747 }
748 }
749 // $ANTLR end "RULE_STRING"
750
751 // $ANTLR start "RULE_ID"
752 public final void mRULE_ID() throws RecognitionException {
753 try {
754 int _type = RULE_ID;
755 int _channel = DEFAULT_TOKEN_CHANNEL;
756 // InternalSolverLanguage.g:2565:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
757 // InternalSolverLanguage.g:2565:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
758 {
759 // InternalSolverLanguage.g:2565:11: ( '^' )?
760 int alt2=2;
761 int LA2_0 = input.LA(1);
762
763 if ( (LA2_0=='^') ) {
764 alt2=1;
765 }
766 switch (alt2) {
767 case 1 :
768 // InternalSolverLanguage.g:2565:11: '^'
769 {
770 match('^');
771
772 }
773 break;
774
775 }
776
777 if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
778 input.consume();
779
780 }
781 else {
782 MismatchedSetException mse = new MismatchedSetException(null,input);
783 recover(mse);
784 throw mse;}
785
786 // InternalSolverLanguage.g:2565:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
787 loop3:
788 do {
789 int alt3=2;
790 int LA3_0 = input.LA(1);
791
792 if ( ((LA3_0>='0' && LA3_0<='9')||(LA3_0>='A' && LA3_0<='Z')||LA3_0=='_'||(LA3_0>='a' && LA3_0<='z')) ) {
793 alt3=1;
794 }
795
796
797 switch (alt3) {
798 case 1 :
799 // InternalSolverLanguage.g:
800 {
801 if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) {
802 input.consume();
803
804 }
805 else {
806 MismatchedSetException mse = new MismatchedSetException(null,input);
807 recover(mse);
808 throw mse;}
809
810
811 }
812 break;
813
814 default :
815 break loop3;
816 }
817 } while (true);
818
819
820 }
821
822 state.type = _type;
823 state.channel = _channel;
824 }
825 finally {
826 }
827 }
828 // $ANTLR end "RULE_ID"
829
830 // $ANTLR start "RULE_INT"
831 public final void mRULE_INT() throws RecognitionException {
832 try {
833 int _type = RULE_INT;
834 int _channel = DEFAULT_TOKEN_CHANNEL;
835 // InternalSolverLanguage.g:2567:10: ( ( '0' .. '9' )+ )
836 // InternalSolverLanguage.g:2567:12: ( '0' .. '9' )+
837 {
838 // InternalSolverLanguage.g:2567:12: ( '0' .. '9' )+
839 int cnt4=0;
840 loop4:
841 do {
842 int alt4=2;
843 int LA4_0 = input.LA(1);
844
845 if ( ((LA4_0>='0' && LA4_0<='9')) ) {
846 alt4=1;
847 }
848
849
850 switch (alt4) {
851 case 1 :
852 // InternalSolverLanguage.g:2567:13: '0' .. '9'
853 {
854 matchRange('0','9');
855
856 }
857 break;
858
859 default :
860 if ( cnt4 >= 1 ) break loop4;
861 EarlyExitException eee =
862 new EarlyExitException(4, input);
863 throw eee;
864 }
865 cnt4++;
866 } while (true);
867
868
869 }
870
871 state.type = _type;
872 state.channel = _channel;
873 }
874 finally {
875 }
876 }
877 // $ANTLR end "RULE_INT"
878
879 // $ANTLR start "RULE_ML_COMMENT"
880 public final void mRULE_ML_COMMENT() throws RecognitionException {
881 try {
882 int _type = RULE_ML_COMMENT;
883 int _channel = DEFAULT_TOKEN_CHANNEL;
884 // InternalSolverLanguage.g:2569:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
885 // InternalSolverLanguage.g:2569:19: '/*' ( options {greedy=false; } : . )* '*/'
886 {
887 match("/*");
888
889 // InternalSolverLanguage.g:2569:24: ( options {greedy=false; } : . )*
890 loop5:
891 do {
892 int alt5=2;
893 int LA5_0 = input.LA(1);
894
895 if ( (LA5_0=='*') ) {
896 int LA5_1 = input.LA(2);
897
898 if ( (LA5_1=='/') ) {
899 alt5=2;
900 }
901 else if ( ((LA5_1>='\u0000' && LA5_1<='.')||(LA5_1>='0' && LA5_1<='\uFFFF')) ) {
902 alt5=1;
903 }
904
905
906 }
907 else if ( ((LA5_0>='\u0000' && LA5_0<=')')||(LA5_0>='+' && LA5_0<='\uFFFF')) ) {
908 alt5=1;
909 }
910
911
912 switch (alt5) {
913 case 1 :
914 // InternalSolverLanguage.g:2569:52: .
915 {
916 matchAny();
917
918 }
919 break;
920
921 default :
922 break loop5;
923 }
924 } while (true);
925
926 match("*/");
927
928
929 }
930
931 state.type = _type;
932 state.channel = _channel;
933 }
934 finally {
935 }
936 }
937 // $ANTLR end "RULE_ML_COMMENT"
938
939 // $ANTLR start "RULE_SL_COMMENT"
940 public final void mRULE_SL_COMMENT() throws RecognitionException {
941 try {
942 int _type = RULE_SL_COMMENT;
943 int _channel = DEFAULT_TOKEN_CHANNEL;
944 // InternalSolverLanguage.g:2571:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
945 // InternalSolverLanguage.g:2571:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
946 {
947 match("//");
948
949 // InternalSolverLanguage.g:2571:24: (~ ( ( '\\n' | '\\r' ) ) )*
950 loop6:
951 do {
952 int alt6=2;
953 int LA6_0 = input.LA(1);
954
955 if ( ((LA6_0>='\u0000' && LA6_0<='\t')||(LA6_0>='\u000B' && LA6_0<='\f')||(LA6_0>='\u000E' && LA6_0<='\uFFFF')) ) {
956 alt6=1;
957 }
958
959
960 switch (alt6) {
961 case 1 :
962 // InternalSolverLanguage.g:2571:24: ~ ( ( '\\n' | '\\r' ) )
963 {
964 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') ) {
965 input.consume();
966
967 }
968 else {
969 MismatchedSetException mse = new MismatchedSetException(null,input);
970 recover(mse);
971 throw mse;}
972
973
974 }
975 break;
976
977 default :
978 break loop6;
979 }
980 } while (true);
981
982 // InternalSolverLanguage.g:2571:40: ( ( '\\r' )? '\\n' )?
983 int alt8=2;
984 int LA8_0 = input.LA(1);
985
986 if ( (LA8_0=='\n'||LA8_0=='\r') ) {
987 alt8=1;
988 }
989 switch (alt8) {
990 case 1 :
991 // InternalSolverLanguage.g:2571:41: ( '\\r' )? '\\n'
992 {
993 // InternalSolverLanguage.g:2571:41: ( '\\r' )?
994 int alt7=2;
995 int LA7_0 = input.LA(1);
996
997 if ( (LA7_0=='\r') ) {
998 alt7=1;
999 }
1000 switch (alt7) {
1001 case 1 :
1002 // InternalSolverLanguage.g:2571:41: '\\r'
1003 {
1004 match('\r');
1005
1006 }
1007 break;
1008
1009 }
1010
1011 match('\n');
1012
1013 }
1014 break;
1015
1016 }
1017
1018
1019 }
1020
1021 state.type = _type;
1022 state.channel = _channel;
1023 }
1024 finally {
1025 }
1026 }
1027 // $ANTLR end "RULE_SL_COMMENT"
1028
1029 // $ANTLR start "RULE_WS"
1030 public final void mRULE_WS() throws RecognitionException {
1031 try {
1032 int _type = RULE_WS;
1033 int _channel = DEFAULT_TOKEN_CHANNEL;
1034 // InternalSolverLanguage.g:2573:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
1035 // InternalSolverLanguage.g:2573:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1036 {
1037 // InternalSolverLanguage.g:2573:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
1038 int cnt9=0;
1039 loop9:
1040 do {
1041 int alt9=2;
1042 int LA9_0 = input.LA(1);
1043
1044 if ( ((LA9_0>='\t' && LA9_0<='\n')||LA9_0=='\r'||LA9_0==' ') ) {
1045 alt9=1;
1046 }
1047
1048
1049 switch (alt9) {
1050 case 1 :
1051 // InternalSolverLanguage.g:
1052 {
1053 if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) {
1054 input.consume();
1055
1056 }
1057 else {
1058 MismatchedSetException mse = new MismatchedSetException(null,input);
1059 recover(mse);
1060 throw mse;}
1061
1062
1063 }
1064 break;
1065
1066 default :
1067 if ( cnt9 >= 1 ) break loop9;
1068 EarlyExitException eee =
1069 new EarlyExitException(9, input);
1070 throw eee;
1071 }
1072 cnt9++;
1073 } while (true);
1074
1075
1076 }
1077
1078 state.type = _type;
1079 state.channel = _channel;
1080 }
1081 finally {
1082 }
1083 }
1084 // $ANTLR end "RULE_WS"
1085
1086 // $ANTLR start "RULE_ANY_OTHER"
1087 public final void mRULE_ANY_OTHER() throws RecognitionException {
1088 try {
1089 int _type = RULE_ANY_OTHER;
1090 int _channel = DEFAULT_TOKEN_CHANNEL;
1091 // InternalSolverLanguage.g:2575:16: ( . )
1092 // InternalSolverLanguage.g:2575:18: .
1093 {
1094 matchAny();
1095
1096 }
1097
1098 state.type = _type;
1099 state.channel = _channel;
1100 }
1101 finally {
1102 }
1103 }
1104 // $ANTLR end "RULE_ANY_OTHER"
1105
1106 public void mTokens() throws RecognitionException {
1107 // InternalSolverLanguage.g:1:8: ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | RULE_STRING | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
1108 int alt10=37;
1109 alt10 = dfa10.predict(input);
1110 switch (alt10) {
1111 case 1 :
1112 // InternalSolverLanguage.g:1:10: T__11
1113 {
1114 mT__11();
1115
1116 }
1117 break;
1118 case 2 :
1119 // InternalSolverLanguage.g:1:16: T__12
1120 {
1121 mT__12();
1122
1123 }
1124 break;
1125 case 3 :
1126 // InternalSolverLanguage.g:1:22: T__13
1127 {
1128 mT__13();
1129
1130 }
1131 break;
1132 case 4 :
1133 // InternalSolverLanguage.g:1:28: T__14
1134 {
1135 mT__14();
1136
1137 }
1138 break;
1139 case 5 :
1140 // InternalSolverLanguage.g:1:34: T__15
1141 {
1142 mT__15();
1143
1144 }
1145 break;
1146 case 6 :
1147 // InternalSolverLanguage.g:1:40: T__16
1148 {
1149 mT__16();
1150
1151 }
1152 break;
1153 case 7 :
1154 // InternalSolverLanguage.g:1:46: T__17
1155 {
1156 mT__17();
1157
1158 }
1159 break;
1160 case 8 :
1161 // InternalSolverLanguage.g:1:52: T__18
1162 {
1163 mT__18();
1164
1165 }
1166 break;
1167 case 9 :
1168 // InternalSolverLanguage.g:1:58: T__19
1169 {
1170 mT__19();
1171
1172 }
1173 break;
1174 case 10 :
1175 // InternalSolverLanguage.g:1:64: T__20
1176 {
1177 mT__20();
1178
1179 }
1180 break;
1181 case 11 :
1182 // InternalSolverLanguage.g:1:70: T__21
1183 {
1184 mT__21();
1185
1186 }
1187 break;
1188 case 12 :
1189 // InternalSolverLanguage.g:1:76: T__22
1190 {
1191 mT__22();
1192
1193 }
1194 break;
1195 case 13 :
1196 // InternalSolverLanguage.g:1:82: T__23
1197 {
1198 mT__23();
1199
1200 }
1201 break;
1202 case 14 :
1203 // InternalSolverLanguage.g:1:88: T__24
1204 {
1205 mT__24();
1206
1207 }
1208 break;
1209 case 15 :
1210 // InternalSolverLanguage.g:1:94: T__25
1211 {
1212 mT__25();
1213
1214 }
1215 break;
1216 case 16 :
1217 // InternalSolverLanguage.g:1:100: T__26
1218 {
1219 mT__26();
1220
1221 }
1222 break;
1223 case 17 :
1224 // InternalSolverLanguage.g:1:106: T__27
1225 {
1226 mT__27();
1227
1228 }
1229 break;
1230 case 18 :
1231 // InternalSolverLanguage.g:1:112: T__28
1232 {
1233 mT__28();
1234
1235 }
1236 break;
1237 case 19 :
1238 // InternalSolverLanguage.g:1:118: T__29
1239 {
1240 mT__29();
1241
1242 }
1243 break;
1244 case 20 :
1245 // InternalSolverLanguage.g:1:124: T__30
1246 {
1247 mT__30();
1248
1249 }
1250 break;
1251 case 21 :
1252 // InternalSolverLanguage.g:1:130: T__31
1253 {
1254 mT__31();
1255
1256 }
1257 break;
1258 case 22 :
1259 // InternalSolverLanguage.g:1:136: T__32
1260 {
1261 mT__32();
1262
1263 }
1264 break;
1265 case 23 :
1266 // InternalSolverLanguage.g:1:142: T__33
1267 {
1268 mT__33();
1269
1270 }
1271 break;
1272 case 24 :
1273 // InternalSolverLanguage.g:1:148: T__34
1274 {
1275 mT__34();
1276
1277 }
1278 break;
1279 case 25 :
1280 // InternalSolverLanguage.g:1:154: T__35
1281 {
1282 mT__35();
1283
1284 }
1285 break;
1286 case 26 :
1287 // InternalSolverLanguage.g:1:160: T__36
1288 {
1289 mT__36();
1290
1291 }
1292 break;
1293 case 27 :
1294 // InternalSolverLanguage.g:1:166: T__37
1295 {
1296 mT__37();
1297
1298 }
1299 break;
1300 case 28 :
1301 // InternalSolverLanguage.g:1:172: T__38
1302 {
1303 mT__38();
1304
1305 }
1306 break;
1307 case 29 :
1308 // InternalSolverLanguage.g:1:178: T__39
1309 {
1310 mT__39();
1311
1312 }
1313 break;
1314 case 30 :
1315 // InternalSolverLanguage.g:1:184: T__40
1316 {
1317 mT__40();
1318
1319 }
1320 break;
1321 case 31 :
1322 // InternalSolverLanguage.g:1:190: RULE_STRING
1323 {
1324 mRULE_STRING();
1325
1326 }
1327 break;
1328 case 32 :
1329 // InternalSolverLanguage.g:1:202: RULE_ID
1330 {
1331 mRULE_ID();
1332
1333 }
1334 break;
1335 case 33 :
1336 // InternalSolverLanguage.g:1:210: RULE_INT
1337 {
1338 mRULE_INT();
1339
1340 }
1341 break;
1342 case 34 :
1343 // InternalSolverLanguage.g:1:219: RULE_ML_COMMENT
1344 {
1345 mRULE_ML_COMMENT();
1346
1347 }
1348 break;
1349 case 35 :
1350 // InternalSolverLanguage.g:1:235: RULE_SL_COMMENT
1351 {
1352 mRULE_SL_COMMENT();
1353
1354 }
1355 break;
1356 case 36 :
1357 // InternalSolverLanguage.g:1:251: RULE_WS
1358 {
1359 mRULE_WS();
1360
1361 }
1362 break;
1363 case 37 :
1364 // InternalSolverLanguage.g:1:259: RULE_ANY_OTHER
1365 {
1366 mRULE_ANY_OTHER();
1367
1368 }
1369 break;
1370
1371 }
1372
1373 }
1374
1375
1376 protected DFA10 dfa10 = new DFA10(this);
1377 static final String DFA10_eotS =
1378 "\2\uffff\1\41\4\43\3\uffff\4\43\1\uffff\1\43\3\uffff\3\43\2\uffff\2\36\2\uffff\1\36\5\uffff\1\43\1\uffff\6\43\3\uffff\4\43\1\uffff\1\43\3\uffff\4\43\7\uffff\11\43\1\134\10\43\1\145\6\43\1\154\1\155\1\uffff\1\156\7\43\1\uffff\1\166\1\43\1\170\3\43\3\uffff\5\43\1\u0081\1\43\1\uffff\1\43\1\uffff\1\u0084\1\43\1\u0086\1\43\1\u0088\3\43\1\uffff\1\43\1\u008d\1\uffff\1\u008e\1\uffff\1\43\1\uffff\1\43\1\u0091\2\43\2\uffff\1\u0094\1\43\1\uffff\1\u0096\1\43\1\uffff\1\u0098\1\uffff\1\43\1\uffff\1\43\1\u009b\1\uffff";
1379 static final String DFA10_eofS =
1380 "\u009c\uffff";
1381 static final String DFA10_minS =
1382 "\1\0\1\uffff\1\56\1\162\1\141\2\156\3\uffff\1\157\1\156\1\145\1\164\1\uffff\1\162\3\uffff\1\145\1\142\1\154\2\uffff\1\0\1\101\2\uffff\1\52\5\uffff\1\165\1\uffff\1\154\1\153\1\162\1\151\2\165\3\uffff\1\157\1\164\1\141\1\162\1\uffff\1\145\3\uffff\1\146\1\163\1\141\1\156\7\uffff\1\145\1\163\1\156\1\157\1\163\1\145\1\141\1\155\1\154\1\60\1\154\1\141\1\151\1\144\1\141\1\164\1\163\1\164\1\60\1\145\1\157\1\162\1\164\1\156\1\154\2\60\1\uffff\1\60\1\164\1\156\1\151\1\165\1\162\1\163\1\141\1\uffff\1\60\1\167\1\60\1\163\1\144\1\163\3\uffff\1\151\1\147\1\143\1\154\1\141\1\60\1\151\1\uffff\1\156\1\uffff\1\60\1\163\1\60\1\157\1\60\1\141\1\164\1\143\1\uffff\1\156\1\60\1\uffff\1\60\1\uffff\1\156\1\uffff\1\164\1\60\1\164\1\155\2\uffff\1\60\1\145\1\uffff\1\60\1\145\1\uffff\1\60\1\uffff\1\156\1\uffff\1\164\1\60\1\uffff";
1383 static final String DFA10_maxS =
1384 "\1\uffff\1\uffff\1\56\1\162\1\141\1\156\1\170\3\uffff\1\157\1\156\1\145\1\164\1\uffff\1\162\3\uffff\1\145\1\142\1\157\2\uffff\1\uffff\1\172\2\uffff\1\57\5\uffff\1\165\1\uffff\1\154\1\153\1\162\1\164\2\165\3\uffff\1\157\1\164\1\154\1\162\1\uffff\1\145\3\uffff\1\146\1\163\1\141\1\156\7\uffff\1\145\1\163\1\156\1\157\1\163\1\145\1\141\1\155\1\154\1\172\1\154\1\141\1\151\1\144\1\141\1\164\1\163\1\164\1\172\1\145\1\157\1\162\1\164\1\156\1\154\2\172\1\uffff\1\172\1\164\1\156\1\151\1\165\1\162\1\163\1\141\1\uffff\1\172\1\167\1\172\1\163\1\144\1\163\3\uffff\1\151\1\147\1\143\1\154\1\141\1\172\1\151\1\uffff\1\156\1\uffff\1\172\1\163\1\172\1\157\1\172\1\141\1\164\1\143\1\uffff\1\156\1\172\1\uffff\1\172\1\uffff\1\156\1\uffff\1\164\1\172\1\164\1\155\2\uffff\1\172\1\145\1\uffff\1\172\1\145\1\uffff\1\172\1\uffff\1\156\1\uffff\1\164\1\172\1\uffff";
1385 static final String DFA10_acceptS =
1386 "\1\uffff\1\1\5\uffff\1\7\1\10\1\11\4\uffff\1\20\1\uffff\1\22\1\23\1\24\3\uffff\1\31\1\32\2\uffff\1\40\1\41\1\uffff\1\44\1\45\1\1\1\36\1\2\1\uffff\1\40\6\uffff\1\7\1\10\1\11\4\uffff\1\20\1\uffff\1\22\1\23\1\24\4\uffff\1\31\1\32\1\37\1\41\1\42\1\43\1\44\33\uffff\1\15\10\uffff\1\3\6\uffff\1\33\1\14\1\16\7\uffff\1\4\1\uffff\1\6\10\uffff\1\27\2\uffff\1\12\1\uffff\1\13\1\uffff\1\17\4\uffff\1\5\1\30\2\uffff\1\25\2\uffff\1\35\1\uffff\1\26\1\uffff\1\21\2\uffff\1\34";
1387 static final String DFA10_specialS =
1388 "\1\1\27\uffff\1\0\u0083\uffff}>";
1389 static final String[] DFA10_transitionS = {
1390 "\11\36\2\35\2\36\1\35\22\36\1\35\1\36\1\30\4\36\1\16\1\7\1\10\1\22\1\21\1\36\1\1\1\2\1\34\12\33\1\11\6\36\32\32\3\36\1\31\1\32\1\36\1\24\1\12\1\25\1\23\1\6\1\4\2\32\1\13\6\32\1\17\1\32\1\14\1\15\1\3\1\5\5\32\1\26\1\20\1\27\uff82\36",
1391 "",
1392 "\1\40",
1393 "\1\42",
1394 "\1\44",
1395 "\1\45",
1396 "\1\51\2\uffff\1\50\1\46\5\uffff\1\47",
1397 "",
1398 "",
1399 "",
1400 "\1\55",
1401 "\1\56",
1402 "\1\57",
1403 "\1\60",
1404 "",
1405 "\1\62",
1406 "",
1407 "",
1408 "",
1409 "\1\66",
1410 "\1\67",
1411 "\1\70\2\uffff\1\71",
1412 "",
1413 "",
1414 "\0\74",
1415 "\32\43\4\uffff\1\43\1\uffff\32\43",
1416 "",
1417 "",
1418 "\1\76\4\uffff\1\77",
1419 "",
1420 "",
1421 "",
1422 "",
1423 "",
1424 "\1\101",
1425 "",
1426 "\1\102",
1427 "\1\103",
1428 "\1\104",
1429 "\1\105\12\uffff\1\106",
1430 "\1\107",
1431 "\1\110",
1432 "",
1433 "",
1434 "",
1435 "\1\111",
1436 "\1\112",
1437 "\1\113\12\uffff\1\114",
1438 "\1\115",
1439 "",
1440 "\1\116",
1441 "",
1442 "",
1443 "",
1444 "\1\117",
1445 "\1\120",
1446 "\1\121",
1447 "\1\122",
1448 "",
1449 "",
1450 "",
1451 "",
1452 "",
1453 "",
1454 "",
1455 "\1\123",
1456 "\1\124",
1457 "\1\125",
1458 "\1\126",
1459 "\1\127",
1460 "\1\130",
1461 "\1\131",
1462 "\1\132",
1463 "\1\133",
1464 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1465 "\1\135",
1466 "\1\136",
1467 "\1\137",
1468 "\1\140",
1469 "\1\141",
1470 "\1\142",
1471 "\1\143",
1472 "\1\144",
1473 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1474 "\1\146",
1475 "\1\147",
1476 "\1\150",
1477 "\1\151",
1478 "\1\152",
1479 "\1\153",
1480 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1481 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1482 "",
1483 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1484 "\1\157",
1485 "\1\160",
1486 "\1\161",
1487 "\1\162",
1488 "\1\163",
1489 "\1\164",
1490 "\1\165",
1491 "",
1492 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1493 "\1\167",
1494 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1495 "\1\171",
1496 "\1\172",
1497 "\1\173",
1498 "",
1499 "",
1500 "",
1501 "\1\174",
1502 "\1\175",
1503 "\1\176",
1504 "\1\177",
1505 "\1\u0080",
1506 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1507 "\1\u0082",
1508 "",
1509 "\1\u0083",
1510 "",
1511 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1512 "\1\u0085",
1513 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1514 "\1\u0087",
1515 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1516 "\1\u0089",
1517 "\1\u008a",
1518 "\1\u008b",
1519 "",
1520 "\1\u008c",
1521 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1522 "",
1523 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1524 "",
1525 "\1\u008f",
1526 "",
1527 "\1\u0090",
1528 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1529 "\1\u0092",
1530 "\1\u0093",
1531 "",
1532 "",
1533 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1534 "\1\u0095",
1535 "",
1536 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1537 "\1\u0097",
1538 "",
1539 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1540 "",
1541 "\1\u0099",
1542 "",
1543 "\1\u009a",
1544 "\12\43\7\uffff\32\43\4\uffff\1\43\1\uffff\32\43",
1545 ""
1546 };
1547
1548 static final short[] DFA10_eot = DFA.unpackEncodedString(DFA10_eotS);
1549 static final short[] DFA10_eof = DFA.unpackEncodedString(DFA10_eofS);
1550 static final char[] DFA10_min = DFA.unpackEncodedStringToUnsignedChars(DFA10_minS);
1551 static final char[] DFA10_max = DFA.unpackEncodedStringToUnsignedChars(DFA10_maxS);
1552 static final short[] DFA10_accept = DFA.unpackEncodedString(DFA10_acceptS);
1553 static final short[] DFA10_special = DFA.unpackEncodedString(DFA10_specialS);
1554 static final short[][] DFA10_transition;
1555
1556 static {
1557 int numStates = DFA10_transitionS.length;
1558 DFA10_transition = new short[numStates][];
1559 for (int i=0; i<numStates; i++) {
1560 DFA10_transition[i] = DFA.unpackEncodedString(DFA10_transitionS[i]);
1561 }
1562 }
1563
1564 class DFA10 extends DFA {
1565
1566 public DFA10(BaseRecognizer recognizer) {
1567 this.recognizer = recognizer;
1568 this.decisionNumber = 10;
1569 this.eot = DFA10_eot;
1570 this.eof = DFA10_eof;
1571 this.min = DFA10_min;
1572 this.max = DFA10_max;
1573 this.accept = DFA10_accept;
1574 this.special = DFA10_special;
1575 this.transition = DFA10_transition;
1576 }
1577 public String getDescription() {
1578 return "1:1: Tokens : ( T__11 | T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | RULE_STRING | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
1579 }
1580 public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
1581 IntStream input = _input;
1582 int _s = s;
1583 switch ( s ) {
1584 case 0 :
1585 int LA10_24 = input.LA(1);
1586
1587 s = -1;
1588 if ( ((LA10_24>='\u0000' && LA10_24<='\uFFFF')) ) {s = 60;}
1589
1590 else s = 30;
1591
1592 if ( s>=0 ) return s;
1593 break;
1594 case 1 :
1595 int LA10_0 = input.LA(1);
1596
1597 s = -1;
1598 if ( (LA10_0=='-') ) {s = 1;}
1599
1600 else if ( (LA10_0=='.') ) {s = 2;}
1601
1602 else if ( (LA10_0=='t') ) {s = 3;}
1603
1604 else if ( (LA10_0=='f') ) {s = 4;}
1605
1606 else if ( (LA10_0=='u') ) {s = 5;}
1607
1608 else if ( (LA10_0=='e') ) {s = 6;}
1609
1610 else if ( (LA10_0=='(') ) {s = 7;}
1611
1612 else if ( (LA10_0==')') ) {s = 8;}
1613
1614 else if ( (LA10_0==':') ) {s = 9;}
1615
1616 else if ( (LA10_0=='b') ) {s = 10;}
1617
1618 else if ( (LA10_0=='i') ) {s = 11;}
1619
1620 else if ( (LA10_0=='r') ) {s = 12;}
1621
1622 else if ( (LA10_0=='s') ) {s = 13;}
1623
1624 else if ( (LA10_0=='\'') ) {s = 14;}
1625
1626 else if ( (LA10_0=='p') ) {s = 15;}
1627
1628 else if ( (LA10_0=='|') ) {s = 16;}
1629
1630 else if ( (LA10_0=='+') ) {s = 17;}
1631
1632 else if ( (LA10_0=='*') ) {s = 18;}
1633
1634 else if ( (LA10_0=='d') ) {s = 19;}
1635
1636 else if ( (LA10_0=='a') ) {s = 20;}
1637
1638 else if ( (LA10_0=='c') ) {s = 21;}
1639
1640 else if ( (LA10_0=='{') ) {s = 22;}
1641
1642 else if ( (LA10_0=='}') ) {s = 23;}
1643
1644 else if ( (LA10_0=='\"') ) {s = 24;}
1645
1646 else if ( (LA10_0=='^') ) {s = 25;}
1647
1648 else if ( ((LA10_0>='A' && LA10_0<='Z')||LA10_0=='_'||(LA10_0>='g' && LA10_0<='h')||(LA10_0>='j' && LA10_0<='o')||LA10_0=='q'||(LA10_0>='v' && LA10_0<='z')) ) {s = 26;}
1649
1650 else if ( ((LA10_0>='0' && LA10_0<='9')) ) {s = 27;}
1651
1652 else if ( (LA10_0=='/') ) {s = 28;}
1653
1654 else if ( ((LA10_0>='\t' && LA10_0<='\n')||LA10_0=='\r'||LA10_0==' ') ) {s = 29;}
1655
1656 else if ( ((LA10_0>='\u0000' && LA10_0<='\b')||(LA10_0>='\u000B' && LA10_0<='\f')||(LA10_0>='\u000E' && LA10_0<='\u001F')||LA10_0=='!'||(LA10_0>='#' && LA10_0<='&')||LA10_0==','||(LA10_0>=';' && LA10_0<='@')||(LA10_0>='[' && LA10_0<=']')||LA10_0=='`'||(LA10_0>='~' && LA10_0<='\uFFFF')) ) {s = 30;}
1657
1658 if ( s>=0 ) return s;
1659 break;
1660 }
1661 NoViableAltException nvae =
1662 new NoViableAltException(getDescription(), 10, _s, input);
1663 error(nvae);
1664 throw nvae;
1665 }
1666 }
1667
1668
1669} \ No newline at end of file
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
new file mode 100644
index 00000000..c1c632f3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java
@@ -0,0 +1,7214 @@
1package org.eclipse.viatra.solver.language.parser.antlr.internal;
2
3import org.eclipse.xtext.*;
4import org.eclipse.xtext.parser.*;
5import org.eclipse.xtext.parser.impl.*;
6import org.eclipse.emf.ecore.util.EcoreUtil;
7import org.eclipse.emf.ecore.EObject;
8import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
9import org.eclipse.xtext.parser.antlr.XtextTokenStream;
10import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
11import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
12import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
13
14
15
16import org.antlr.runtime.*;
17import java.util.Stack;
18import java.util.List;
19import java.util.ArrayList;
20
21@SuppressWarnings("all")
22public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
23 public static final String[] tokenNames = new String[] {
24 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_ID", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'-'", "'.'", "'true'", "'false'", "'unknown'", "'error'", "'('", "')'", "':'", "'exists'", "'equals'", "'bool'", "'int'", "'real'", "'string'", "'\\''", "'predicate'", "'|'", "'+'", "'*'", "'default'", "'abstract'", "'class'", "'extends'", "'{'", "'}'", "'enum'", "'containment'", "'relation'", "'..'"
25 };
26 public static final int RULE_STRING=6;
27 public static final int RULE_SL_COMMENT=8;
28 public static final int T__19=19;
29 public static final int T__15=15;
30 public static final int T__37=37;
31 public static final int T__16=16;
32 public static final int T__38=38;
33 public static final int T__17=17;
34 public static final int T__39=39;
35 public static final int T__18=18;
36 public static final int T__11=11;
37 public static final int T__33=33;
38 public static final int T__12=12;
39 public static final int T__34=34;
40 public static final int T__13=13;
41 public static final int T__35=35;
42 public static final int T__14=14;
43 public static final int T__36=36;
44 public static final int EOF=-1;
45 public static final int T__30=30;
46 public static final int T__31=31;
47 public static final int T__32=32;
48 public static final int RULE_ID=5;
49 public static final int RULE_WS=9;
50 public static final int RULE_ANY_OTHER=10;
51 public static final int T__26=26;
52 public static final int T__27=27;
53 public static final int T__28=28;
54 public static final int RULE_INT=4;
55 public static final int T__29=29;
56 public static final int T__22=22;
57 public static final int RULE_ML_COMMENT=7;
58 public static final int T__23=23;
59 public static final int T__24=24;
60 public static final int T__25=25;
61 public static final int T__40=40;
62 public static final int T__20=20;
63 public static final int T__21=21;
64
65 // delegates
66 // delegators
67
68
69 public InternalSolverLanguageParser(TokenStream input) {
70 this(input, new RecognizerSharedState());
71 }
72 public InternalSolverLanguageParser(TokenStream input, RecognizerSharedState state) {
73 super(input, state);
74
75 }
76
77
78 public String[] getTokenNames() { return InternalSolverLanguageParser.tokenNames; }
79 public String getGrammarFileName() { return "InternalSolverLanguage.g"; }
80
81
82
83 private SolverLanguageGrammarAccess grammarAccess;
84
85 public InternalSolverLanguageParser(TokenStream input, SolverLanguageGrammarAccess grammarAccess) {
86 this(input);
87 this.grammarAccess = grammarAccess;
88 registerRules(grammarAccess.getGrammar());
89 }
90
91 @Override
92 protected String getFirstRuleName() {
93 return "Problem";
94 }
95
96 @Override
97 protected SolverLanguageGrammarAccess getGrammarAccess() {
98 return grammarAccess;
99 }
100
101
102
103
104 // $ANTLR start "entryRuleProblem"
105 // InternalSolverLanguage.g:64:1: entryRuleProblem returns [EObject current=null] : iv_ruleProblem= ruleProblem EOF ;
106 public final EObject entryRuleProblem() throws RecognitionException {
107 EObject current = null;
108
109 EObject iv_ruleProblem = null;
110
111
112 try {
113 // InternalSolverLanguage.g:64:48: (iv_ruleProblem= ruleProblem EOF )
114 // InternalSolverLanguage.g:65:2: iv_ruleProblem= ruleProblem EOF
115 {
116 newCompositeNode(grammarAccess.getProblemRule());
117 pushFollow(FOLLOW_1);
118 iv_ruleProblem=ruleProblem();
119
120 state._fsp--;
121
122 current =iv_ruleProblem;
123 match(input,EOF,FOLLOW_2);
124
125 }
126
127 }
128
129 catch (RecognitionException re) {
130 recover(input,re);
131 appendSkippedTokens();
132 }
133 finally {
134 }
135 return current;
136 }
137 // $ANTLR end "entryRuleProblem"
138
139
140 // $ANTLR start "ruleProblem"
141 // InternalSolverLanguage.g:71:1: ruleProblem returns [EObject current=null] : ( (lv_statements_0_0= ruleStatement ) )* ;
142 public final EObject ruleProblem() throws RecognitionException {
143 EObject current = null;
144
145 EObject lv_statements_0_0 = null;
146
147
148
149 enterRule();
150
151 try {
152 // InternalSolverLanguage.g:77:2: ( ( (lv_statements_0_0= ruleStatement ) )* )
153 // InternalSolverLanguage.g:78:2: ( (lv_statements_0_0= ruleStatement ) )*
154 {
155 // InternalSolverLanguage.g:78:2: ( (lv_statements_0_0= ruleStatement ) )*
156 loop1:
157 do {
158 int alt1=2;
159 int LA1_0 = input.LA(1);
160
161 if ( (LA1_0==RULE_ID||LA1_0==16||(LA1_0>=20 && LA1_0<=25)||LA1_0==27||(LA1_0>=31 && LA1_0<=32)||(LA1_0>=37 && LA1_0<=38)) ) {
162 alt1=1;
163 }
164
165
166 switch (alt1) {
167 case 1 :
168 // InternalSolverLanguage.g:79:3: (lv_statements_0_0= ruleStatement )
169 {
170 // InternalSolverLanguage.g:79:3: (lv_statements_0_0= ruleStatement )
171 // InternalSolverLanguage.g:80:4: lv_statements_0_0= ruleStatement
172 {
173
174 newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0());
175
176 pushFollow(FOLLOW_3);
177 lv_statements_0_0=ruleStatement();
178
179 state._fsp--;
180
181
182 if (current==null) {
183 current = createModelElementForParent(grammarAccess.getProblemRule());
184 }
185 add(
186 current,
187 "statements",
188 lv_statements_0_0,
189 "org.eclipse.viatra.solver.language.SolverLanguage.Statement");
190 afterParserOrEnumRuleCall();
191
192
193 }
194
195
196 }
197 break;
198
199 default :
200 break loop1;
201 }
202 } while (true);
203
204
205 }
206
207
208 leaveRule();
209
210 }
211
212 catch (RecognitionException re) {
213 recover(input,re);
214 appendSkippedTokens();
215 }
216 finally {
217 }
218 return current;
219 }
220 // $ANTLR end "ruleProblem"
221
222
223 // $ANTLR start "entryRuleStatement"
224 // InternalSolverLanguage.g:100:1: entryRuleStatement returns [EObject current=null] : iv_ruleStatement= ruleStatement EOF ;
225 public final EObject entryRuleStatement() throws RecognitionException {
226 EObject current = null;
227
228 EObject iv_ruleStatement = null;
229
230
231 try {
232 // InternalSolverLanguage.g:100:50: (iv_ruleStatement= ruleStatement EOF )
233 // InternalSolverLanguage.g:101:2: iv_ruleStatement= ruleStatement EOF
234 {
235 newCompositeNode(grammarAccess.getStatementRule());
236 pushFollow(FOLLOW_1);
237 iv_ruleStatement=ruleStatement();
238
239 state._fsp--;
240
241 current =iv_ruleStatement;
242 match(input,EOF,FOLLOW_2);
243
244 }
245
246 }
247
248 catch (RecognitionException re) {
249 recover(input,re);
250 appendSkippedTokens();
251 }
252 finally {
253 }
254 return current;
255 }
256 // $ANTLR end "entryRuleStatement"
257
258
259 // $ANTLR start "ruleStatement"
260 // InternalSolverLanguage.g:107:1: ruleStatement returns [EObject current=null] : (this_Interpretation_0= ruleInterpretation | this_Predicate_1= rulePredicate ) ;
261 public final EObject ruleStatement() throws RecognitionException {
262 EObject current = null;
263
264 EObject this_Interpretation_0 = null;
265
266 EObject this_Predicate_1 = null;
267
268
269
270 enterRule();
271
272 try {
273 // InternalSolverLanguage.g:113:2: ( (this_Interpretation_0= ruleInterpretation | this_Predicate_1= rulePredicate ) )
274 // InternalSolverLanguage.g:114:2: (this_Interpretation_0= ruleInterpretation | this_Predicate_1= rulePredicate )
275 {
276 // InternalSolverLanguage.g:114:2: (this_Interpretation_0= ruleInterpretation | this_Predicate_1= rulePredicate )
277 int alt2=2;
278 int LA2_0 = input.LA(1);
279
280 if ( (LA2_0==RULE_ID||(LA2_0>=20 && LA2_0<=25)||(LA2_0>=31 && LA2_0<=32)||(LA2_0>=37 && LA2_0<=38)) ) {
281 alt2=1;
282 }
283 else if ( (LA2_0==16||LA2_0==27) ) {
284 alt2=2;
285 }
286 else {
287 NoViableAltException nvae =
288 new NoViableAltException("", 2, 0, input);
289
290 throw nvae;
291 }
292 switch (alt2) {
293 case 1 :
294 // InternalSolverLanguage.g:115:3: this_Interpretation_0= ruleInterpretation
295 {
296
297 newCompositeNode(grammarAccess.getStatementAccess().getInterpretationParserRuleCall_0());
298
299 pushFollow(FOLLOW_2);
300 this_Interpretation_0=ruleInterpretation();
301
302 state._fsp--;
303
304
305 current = this_Interpretation_0;
306 afterParserOrEnumRuleCall();
307
308
309 }
310 break;
311 case 2 :
312 // InternalSolverLanguage.g:124:3: this_Predicate_1= rulePredicate
313 {
314
315 newCompositeNode(grammarAccess.getStatementAccess().getPredicateParserRuleCall_1());
316
317 pushFollow(FOLLOW_2);
318 this_Predicate_1=rulePredicate();
319
320 state._fsp--;
321
322
323 current = this_Predicate_1;
324 afterParserOrEnumRuleCall();
325
326
327 }
328 break;
329
330 }
331
332
333 }
334
335
336 leaveRule();
337
338 }
339
340 catch (RecognitionException re) {
341 recover(input,re);
342 appendSkippedTokens();
343 }
344 finally {
345 }
346 return current;
347 }
348 // $ANTLR end "ruleStatement"
349
350
351 // $ANTLR start "entryRuleREALLiteral"
352 // InternalSolverLanguage.g:136:1: entryRuleREALLiteral returns [String current=null] : iv_ruleREALLiteral= ruleREALLiteral EOF ;
353 public final String entryRuleREALLiteral() throws RecognitionException {
354 String current = null;
355
356 AntlrDatatypeRuleToken iv_ruleREALLiteral = null;
357
358
359 try {
360 // InternalSolverLanguage.g:136:51: (iv_ruleREALLiteral= ruleREALLiteral EOF )
361 // InternalSolverLanguage.g:137:2: iv_ruleREALLiteral= ruleREALLiteral EOF
362 {
363 newCompositeNode(grammarAccess.getREALLiteralRule());
364 pushFollow(FOLLOW_1);
365 iv_ruleREALLiteral=ruleREALLiteral();
366
367 state._fsp--;
368
369 current =iv_ruleREALLiteral.getText();
370 match(input,EOF,FOLLOW_2);
371
372 }
373
374 }
375
376 catch (RecognitionException re) {
377 recover(input,re);
378 appendSkippedTokens();
379 }
380 finally {
381 }
382 return current;
383 }
384 // $ANTLR end "entryRuleREALLiteral"
385
386
387 // $ANTLR start "ruleREALLiteral"
388 // InternalSolverLanguage.g:143:1: ruleREALLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT kw= '.' this_INT_3= RULE_INT ) ;
389 public final AntlrDatatypeRuleToken ruleREALLiteral() throws RecognitionException {
390 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
391
392 Token kw=null;
393 Token this_INT_1=null;
394 Token this_INT_3=null;
395
396
397 enterRule();
398
399 try {
400 // InternalSolverLanguage.g:149:2: ( ( (kw= '-' )? this_INT_1= RULE_INT kw= '.' this_INT_3= RULE_INT ) )
401 // InternalSolverLanguage.g:150:2: ( (kw= '-' )? this_INT_1= RULE_INT kw= '.' this_INT_3= RULE_INT )
402 {
403 // InternalSolverLanguage.g:150:2: ( (kw= '-' )? this_INT_1= RULE_INT kw= '.' this_INT_3= RULE_INT )
404 // InternalSolverLanguage.g:151:3: (kw= '-' )? this_INT_1= RULE_INT kw= '.' this_INT_3= RULE_INT
405 {
406 // InternalSolverLanguage.g:151:3: (kw= '-' )?
407 int alt3=2;
408 int LA3_0 = input.LA(1);
409
410 if ( (LA3_0==11) ) {
411 alt3=1;
412 }
413 switch (alt3) {
414 case 1 :
415 // InternalSolverLanguage.g:152:4: kw= '-'
416 {
417 kw=(Token)match(input,11,FOLLOW_4);
418
419 current.merge(kw);
420 newLeafNode(kw, grammarAccess.getREALLiteralAccess().getHyphenMinusKeyword_0());
421
422
423 }
424 break;
425
426 }
427
428 this_INT_1=(Token)match(input,RULE_INT,FOLLOW_5);
429
430 current.merge(this_INT_1);
431
432
433 newLeafNode(this_INT_1, grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_1());
434
435 kw=(Token)match(input,12,FOLLOW_4);
436
437 current.merge(kw);
438 newLeafNode(kw, grammarAccess.getREALLiteralAccess().getFullStopKeyword_2());
439
440 this_INT_3=(Token)match(input,RULE_INT,FOLLOW_2);
441
442 current.merge(this_INT_3);
443
444
445 newLeafNode(this_INT_3, grammarAccess.getREALLiteralAccess().getINTTerminalRuleCall_3());
446
447
448 }
449
450
451 }
452
453
454 leaveRule();
455
456 }
457
458 catch (RecognitionException re) {
459 recover(input,re);
460 appendSkippedTokens();
461 }
462 finally {
463 }
464 return current;
465 }
466 // $ANTLR end "ruleREALLiteral"
467
468
469 // $ANTLR start "entryRuleINTLiteral"
470 // InternalSolverLanguage.g:181:1: entryRuleINTLiteral returns [String current=null] : iv_ruleINTLiteral= ruleINTLiteral EOF ;
471 public final String entryRuleINTLiteral() throws RecognitionException {
472 String current = null;
473
474 AntlrDatatypeRuleToken iv_ruleINTLiteral = null;
475
476
477 try {
478 // InternalSolverLanguage.g:181:50: (iv_ruleINTLiteral= ruleINTLiteral EOF )
479 // InternalSolverLanguage.g:182:2: iv_ruleINTLiteral= ruleINTLiteral EOF
480 {
481 newCompositeNode(grammarAccess.getINTLiteralRule());
482 pushFollow(FOLLOW_1);
483 iv_ruleINTLiteral=ruleINTLiteral();
484
485 state._fsp--;
486
487 current =iv_ruleINTLiteral.getText();
488 match(input,EOF,FOLLOW_2);
489
490 }
491
492 }
493
494 catch (RecognitionException re) {
495 recover(input,re);
496 appendSkippedTokens();
497 }
498 finally {
499 }
500 return current;
501 }
502 // $ANTLR end "entryRuleINTLiteral"
503
504
505 // $ANTLR start "ruleINTLiteral"
506 // InternalSolverLanguage.g:188:1: ruleINTLiteral returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT ) ;
507 public final AntlrDatatypeRuleToken ruleINTLiteral() throws RecognitionException {
508 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
509
510 Token kw=null;
511 Token this_INT_1=null;
512
513
514 enterRule();
515
516 try {
517 // InternalSolverLanguage.g:194:2: ( ( (kw= '-' )? this_INT_1= RULE_INT ) )
518 // InternalSolverLanguage.g:195:2: ( (kw= '-' )? this_INT_1= RULE_INT )
519 {
520 // InternalSolverLanguage.g:195:2: ( (kw= '-' )? this_INT_1= RULE_INT )
521 // InternalSolverLanguage.g:196:3: (kw= '-' )? this_INT_1= RULE_INT
522 {
523 // InternalSolverLanguage.g:196:3: (kw= '-' )?
524 int alt4=2;
525 int LA4_0 = input.LA(1);
526
527 if ( (LA4_0==11) ) {
528 alt4=1;
529 }
530 switch (alt4) {
531 case 1 :
532 // InternalSolverLanguage.g:197:4: kw= '-'
533 {
534 kw=(Token)match(input,11,FOLLOW_4);
535
536 current.merge(kw);
537 newLeafNode(kw, grammarAccess.getINTLiteralAccess().getHyphenMinusKeyword_0());
538
539
540 }
541 break;
542
543 }
544
545 this_INT_1=(Token)match(input,RULE_INT,FOLLOW_2);
546
547 current.merge(this_INT_1);
548
549
550 newLeafNode(this_INT_1, grammarAccess.getINTLiteralAccess().getINTTerminalRuleCall_1());
551
552
553 }
554
555
556 }
557
558
559 leaveRule();
560
561 }
562
563 catch (RecognitionException re) {
564 recover(input,re);
565 appendSkippedTokens();
566 }
567 finally {
568 }
569 return current;
570 }
571 // $ANTLR end "ruleINTLiteral"
572
573
574 // $ANTLR start "entryRuleBooleanValue"
575 // InternalSolverLanguage.g:214:1: entryRuleBooleanValue returns [EObject current=null] : iv_ruleBooleanValue= ruleBooleanValue EOF ;
576 public final EObject entryRuleBooleanValue() throws RecognitionException {
577 EObject current = null;
578
579 EObject iv_ruleBooleanValue = null;
580
581
582 try {
583 // InternalSolverLanguage.g:214:53: (iv_ruleBooleanValue= ruleBooleanValue EOF )
584 // InternalSolverLanguage.g:215:2: iv_ruleBooleanValue= ruleBooleanValue EOF
585 {
586 newCompositeNode(grammarAccess.getBooleanValueRule());
587 pushFollow(FOLLOW_1);
588 iv_ruleBooleanValue=ruleBooleanValue();
589
590 state._fsp--;
591
592 current =iv_ruleBooleanValue;
593 match(input,EOF,FOLLOW_2);
594
595 }
596
597 }
598
599 catch (RecognitionException re) {
600 recover(input,re);
601 appendSkippedTokens();
602 }
603 finally {
604 }
605 return current;
606 }
607 // $ANTLR end "entryRuleBooleanValue"
608
609
610 // $ANTLR start "ruleBooleanValue"
611 // InternalSolverLanguage.g:221:1: ruleBooleanValue returns [EObject current=null] : ( ( () otherlv_1= 'true' ) | (otherlv_2= 'false' () ) ) ;
612 public final EObject ruleBooleanValue() throws RecognitionException {
613 EObject current = null;
614
615 Token otherlv_1=null;
616 Token otherlv_2=null;
617
618
619 enterRule();
620
621 try {
622 // InternalSolverLanguage.g:227:2: ( ( ( () otherlv_1= 'true' ) | (otherlv_2= 'false' () ) ) )
623 // InternalSolverLanguage.g:228:2: ( ( () otherlv_1= 'true' ) | (otherlv_2= 'false' () ) )
624 {
625 // InternalSolverLanguage.g:228:2: ( ( () otherlv_1= 'true' ) | (otherlv_2= 'false' () ) )
626 int alt5=2;
627 int LA5_0 = input.LA(1);
628
629 if ( (LA5_0==13) ) {
630 alt5=1;
631 }
632 else if ( (LA5_0==14) ) {
633 alt5=2;
634 }
635 else {
636 NoViableAltException nvae =
637 new NoViableAltException("", 5, 0, input);
638
639 throw nvae;
640 }
641 switch (alt5) {
642 case 1 :
643 // InternalSolverLanguage.g:229:3: ( () otherlv_1= 'true' )
644 {
645 // InternalSolverLanguage.g:229:3: ( () otherlv_1= 'true' )
646 // InternalSolverLanguage.g:230:4: () otherlv_1= 'true'
647 {
648 // InternalSolverLanguage.g:230:4: ()
649 // InternalSolverLanguage.g:231:5:
650 {
651
652 current = forceCreateModelElement(
653 grammarAccess.getBooleanValueAccess().getBooleanTrueAction_0_0(),
654 current);
655
656
657 }
658
659 otherlv_1=(Token)match(input,13,FOLLOW_2);
660
661 newLeafNode(otherlv_1, grammarAccess.getBooleanValueAccess().getTrueKeyword_0_1());
662
663
664 }
665
666
667 }
668 break;
669 case 2 :
670 // InternalSolverLanguage.g:243:3: (otherlv_2= 'false' () )
671 {
672 // InternalSolverLanguage.g:243:3: (otherlv_2= 'false' () )
673 // InternalSolverLanguage.g:244:4: otherlv_2= 'false' ()
674 {
675 otherlv_2=(Token)match(input,14,FOLLOW_2);
676
677 newLeafNode(otherlv_2, grammarAccess.getBooleanValueAccess().getFalseKeyword_1_0());
678
679 // InternalSolverLanguage.g:248:4: ()
680 // InternalSolverLanguage.g:249:5:
681 {
682
683 current = forceCreateModelElement(
684 grammarAccess.getBooleanValueAccess().getBooleanFalseAction_1_1(),
685 current);
686
687
688 }
689
690
691 }
692
693
694 }
695 break;
696
697 }
698
699
700 }
701
702
703 leaveRule();
704
705 }
706
707 catch (RecognitionException re) {
708 recover(input,re);
709 appendSkippedTokens();
710 }
711 finally {
712 }
713 return current;
714 }
715 // $ANTLR end "ruleBooleanValue"
716
717
718 // $ANTLR start "entryRuleTruthValue"
719 // InternalSolverLanguage.g:260:1: entryRuleTruthValue returns [EObject current=null] : iv_ruleTruthValue= ruleTruthValue EOF ;
720 public final EObject entryRuleTruthValue() throws RecognitionException {
721 EObject current = null;
722
723 EObject iv_ruleTruthValue = null;
724
725
726 try {
727 // InternalSolverLanguage.g:260:51: (iv_ruleTruthValue= ruleTruthValue EOF )
728 // InternalSolverLanguage.g:261:2: iv_ruleTruthValue= ruleTruthValue EOF
729 {
730 newCompositeNode(grammarAccess.getTruthValueRule());
731 pushFollow(FOLLOW_1);
732 iv_ruleTruthValue=ruleTruthValue();
733
734 state._fsp--;
735
736 current =iv_ruleTruthValue;
737 match(input,EOF,FOLLOW_2);
738
739 }
740
741 }
742
743 catch (RecognitionException re) {
744 recover(input,re);
745 appendSkippedTokens();
746 }
747 finally {
748 }
749 return current;
750 }
751 // $ANTLR end "entryRuleTruthValue"
752
753
754 // $ANTLR start "ruleTruthValue"
755 // InternalSolverLanguage.g:267:1: ruleTruthValue returns [EObject current=null] : ( ( () otherlv_1= 'true' ) | ( () otherlv_3= 'false' ) | ( () otherlv_5= 'unknown' ) | ( () otherlv_7= 'error' ) ) ;
756 public final EObject ruleTruthValue() throws RecognitionException {
757 EObject current = null;
758
759 Token otherlv_1=null;
760 Token otherlv_3=null;
761 Token otherlv_5=null;
762 Token otherlv_7=null;
763
764
765 enterRule();
766
767 try {
768 // InternalSolverLanguage.g:273:2: ( ( ( () otherlv_1= 'true' ) | ( () otherlv_3= 'false' ) | ( () otherlv_5= 'unknown' ) | ( () otherlv_7= 'error' ) ) )
769 // InternalSolverLanguage.g:274:2: ( ( () otherlv_1= 'true' ) | ( () otherlv_3= 'false' ) | ( () otherlv_5= 'unknown' ) | ( () otherlv_7= 'error' ) )
770 {
771 // InternalSolverLanguage.g:274:2: ( ( () otherlv_1= 'true' ) | ( () otherlv_3= 'false' ) | ( () otherlv_5= 'unknown' ) | ( () otherlv_7= 'error' ) )
772 int alt6=4;
773 switch ( input.LA(1) ) {
774 case 13:
775 {
776 alt6=1;
777 }
778 break;
779 case 14:
780 {
781 alt6=2;
782 }
783 break;
784 case 15:
785 {
786 alt6=3;
787 }
788 break;
789 case 16:
790 {
791 alt6=4;
792 }
793 break;
794 default:
795 NoViableAltException nvae =
796 new NoViableAltException("", 6, 0, input);
797
798 throw nvae;
799 }
800
801 switch (alt6) {
802 case 1 :
803 // InternalSolverLanguage.g:275:3: ( () otherlv_1= 'true' )
804 {
805 // InternalSolverLanguage.g:275:3: ( () otherlv_1= 'true' )
806 // InternalSolverLanguage.g:276:4: () otherlv_1= 'true'
807 {
808 // InternalSolverLanguage.g:276:4: ()
809 // InternalSolverLanguage.g:277:5:
810 {
811
812 current = forceCreateModelElement(
813 grammarAccess.getTruthValueAccess().getTrueAction_0_0(),
814 current);
815
816
817 }
818
819 otherlv_1=(Token)match(input,13,FOLLOW_2);
820
821 newLeafNode(otherlv_1, grammarAccess.getTruthValueAccess().getTrueKeyword_0_1());
822
823
824 }
825
826
827 }
828 break;
829 case 2 :
830 // InternalSolverLanguage.g:289:3: ( () otherlv_3= 'false' )
831 {
832 // InternalSolverLanguage.g:289:3: ( () otherlv_3= 'false' )
833 // InternalSolverLanguage.g:290:4: () otherlv_3= 'false'
834 {
835 // InternalSolverLanguage.g:290:4: ()
836 // InternalSolverLanguage.g:291:5:
837 {
838
839 current = forceCreateModelElement(
840 grammarAccess.getTruthValueAccess().getFalseAction_1_0(),
841 current);
842
843
844 }
845
846 otherlv_3=(Token)match(input,14,FOLLOW_2);
847
848 newLeafNode(otherlv_3, grammarAccess.getTruthValueAccess().getFalseKeyword_1_1());
849
850
851 }
852
853
854 }
855 break;
856 case 3 :
857 // InternalSolverLanguage.g:303:3: ( () otherlv_5= 'unknown' )
858 {
859 // InternalSolverLanguage.g:303:3: ( () otherlv_5= 'unknown' )
860 // InternalSolverLanguage.g:304:4: () otherlv_5= 'unknown'
861 {
862 // InternalSolverLanguage.g:304:4: ()
863 // InternalSolverLanguage.g:305:5:
864 {
865
866 current = forceCreateModelElement(
867 grammarAccess.getTruthValueAccess().getUnknownAction_2_0(),
868 current);
869
870
871 }
872
873 otherlv_5=(Token)match(input,15,FOLLOW_2);
874
875 newLeafNode(otherlv_5, grammarAccess.getTruthValueAccess().getUnknownKeyword_2_1());
876
877
878 }
879
880
881 }
882 break;
883 case 4 :
884 // InternalSolverLanguage.g:317:3: ( () otherlv_7= 'error' )
885 {
886 // InternalSolverLanguage.g:317:3: ( () otherlv_7= 'error' )
887 // InternalSolverLanguage.g:318:4: () otherlv_7= 'error'
888 {
889 // InternalSolverLanguage.g:318:4: ()
890 // InternalSolverLanguage.g:319:5:
891 {
892
893 current = forceCreateModelElement(
894 grammarAccess.getTruthValueAccess().getErrorAction_3_0(),
895 current);
896
897
898 }
899
900 otherlv_7=(Token)match(input,16,FOLLOW_2);
901
902 newLeafNode(otherlv_7, grammarAccess.getTruthValueAccess().getErrorKeyword_3_1());
903
904
905 }
906
907
908 }
909 break;
910
911 }
912
913
914 }
915
916
917 leaveRule();
918
919 }
920
921 catch (RecognitionException re) {
922 recover(input,re);
923 appendSkippedTokens();
924 }
925 finally {
926 }
927 return current;
928 }
929 // $ANTLR end "ruleTruthValue"
930
931
932 // $ANTLR start "entryRuleInterpretation"
933 // InternalSolverLanguage.g:334:1: entryRuleInterpretation returns [EObject current=null] : iv_ruleInterpretation= ruleInterpretation EOF ;
934 public final EObject entryRuleInterpretation() throws RecognitionException {
935 EObject current = null;
936
937 EObject iv_ruleInterpretation = null;
938
939
940 try {
941 // InternalSolverLanguage.g:334:55: (iv_ruleInterpretation= ruleInterpretation EOF )
942 // InternalSolverLanguage.g:335:2: iv_ruleInterpretation= ruleInterpretation EOF
943 {
944 newCompositeNode(grammarAccess.getInterpretationRule());
945 pushFollow(FOLLOW_1);
946 iv_ruleInterpretation=ruleInterpretation();
947
948 state._fsp--;
949
950 current =iv_ruleInterpretation;
951 match(input,EOF,FOLLOW_2);
952
953 }
954
955 }
956
957 catch (RecognitionException re) {
958 recover(input,re);
959 appendSkippedTokens();
960 }
961 finally {
962 }
963 return current;
964 }
965 // $ANTLR end "entryRuleInterpretation"
966
967
968 // $ANTLR start "ruleInterpretation"
969 // InternalSolverLanguage.g:341:1: ruleInterpretation returns [EObject current=null] : (this_BasicInterpretation_0= ruleBasicInterpretation | this_DefaultInterpretation_1= ruleDefaultInterpretation | this_CDInterpretation_2= ruleCDInterpretation ) ;
970 public final EObject ruleInterpretation() throws RecognitionException {
971 EObject current = null;
972
973 EObject this_BasicInterpretation_0 = null;
974
975 EObject this_DefaultInterpretation_1 = null;
976
977 EObject this_CDInterpretation_2 = null;
978
979
980
981 enterRule();
982
983 try {
984 // InternalSolverLanguage.g:347:2: ( (this_BasicInterpretation_0= ruleBasicInterpretation | this_DefaultInterpretation_1= ruleDefaultInterpretation | this_CDInterpretation_2= ruleCDInterpretation ) )
985 // InternalSolverLanguage.g:348:2: (this_BasicInterpretation_0= ruleBasicInterpretation | this_DefaultInterpretation_1= ruleDefaultInterpretation | this_CDInterpretation_2= ruleCDInterpretation )
986 {
987 // InternalSolverLanguage.g:348:2: (this_BasicInterpretation_0= ruleBasicInterpretation | this_DefaultInterpretation_1= ruleDefaultInterpretation | this_CDInterpretation_2= ruleCDInterpretation )
988 int alt7=3;
989 switch ( input.LA(1) ) {
990 case RULE_ID:
991 case 20:
992 case 21:
993 case 22:
994 case 23:
995 case 24:
996 case 25:
997 {
998 alt7=1;
999 }
1000 break;
1001 case 31:
1002 {
1003 alt7=2;
1004 }
1005 break;
1006 case 32:
1007 case 37:
1008 case 38:
1009 {
1010 alt7=3;
1011 }
1012 break;
1013 default:
1014 NoViableAltException nvae =
1015 new NoViableAltException("", 7, 0, input);
1016
1017 throw nvae;
1018 }
1019
1020 switch (alt7) {
1021 case 1 :
1022 // InternalSolverLanguage.g:349:3: this_BasicInterpretation_0= ruleBasicInterpretation
1023 {
1024
1025 newCompositeNode(grammarAccess.getInterpretationAccess().getBasicInterpretationParserRuleCall_0());
1026
1027 pushFollow(FOLLOW_2);
1028 this_BasicInterpretation_0=ruleBasicInterpretation();
1029
1030 state._fsp--;
1031
1032
1033 current = this_BasicInterpretation_0;
1034 afterParserOrEnumRuleCall();
1035
1036
1037 }
1038 break;
1039 case 2 :
1040 // InternalSolverLanguage.g:358:3: this_DefaultInterpretation_1= ruleDefaultInterpretation
1041 {
1042
1043 newCompositeNode(grammarAccess.getInterpretationAccess().getDefaultInterpretationParserRuleCall_1());
1044
1045 pushFollow(FOLLOW_2);
1046 this_DefaultInterpretation_1=ruleDefaultInterpretation();
1047
1048 state._fsp--;
1049
1050
1051 current = this_DefaultInterpretation_1;
1052 afterParserOrEnumRuleCall();
1053
1054
1055 }
1056 break;
1057 case 3 :
1058 // InternalSolverLanguage.g:367:3: this_CDInterpretation_2= ruleCDInterpretation
1059 {
1060
1061 newCompositeNode(grammarAccess.getInterpretationAccess().getCDInterpretationParserRuleCall_2());
1062
1063 pushFollow(FOLLOW_2);
1064 this_CDInterpretation_2=ruleCDInterpretation();
1065
1066 state._fsp--;
1067
1068
1069 current = this_CDInterpretation_2;
1070 afterParserOrEnumRuleCall();
1071
1072
1073 }
1074 break;
1075
1076 }
1077
1078
1079 }
1080
1081
1082 leaveRule();
1083
1084 }
1085
1086 catch (RecognitionException re) {
1087 recover(input,re);
1088 appendSkippedTokens();
1089 }
1090 finally {
1091 }
1092 return current;
1093 }
1094 // $ANTLR end "ruleInterpretation"
1095
1096
1097 // $ANTLR start "entryRuleBasicInterpretation"
1098 // InternalSolverLanguage.g:379:1: entryRuleBasicInterpretation returns [EObject current=null] : iv_ruleBasicInterpretation= ruleBasicInterpretation EOF ;
1099 public final EObject entryRuleBasicInterpretation() throws RecognitionException {
1100 EObject current = null;
1101
1102 EObject iv_ruleBasicInterpretation = null;
1103
1104
1105 try {
1106 // InternalSolverLanguage.g:379:60: (iv_ruleBasicInterpretation= ruleBasicInterpretation EOF )
1107 // InternalSolverLanguage.g:380:2: iv_ruleBasicInterpretation= ruleBasicInterpretation EOF
1108 {
1109 newCompositeNode(grammarAccess.getBasicInterpretationRule());
1110 pushFollow(FOLLOW_1);
1111 iv_ruleBasicInterpretation=ruleBasicInterpretation();
1112
1113 state._fsp--;
1114
1115 current =iv_ruleBasicInterpretation;
1116 match(input,EOF,FOLLOW_2);
1117
1118 }
1119
1120 }
1121
1122 catch (RecognitionException re) {
1123 recover(input,re);
1124 appendSkippedTokens();
1125 }
1126 finally {
1127 }
1128 return current;
1129 }
1130 // $ANTLR end "entryRuleBasicInterpretation"
1131
1132
1133 // $ANTLR start "ruleBasicInterpretation"
1134 // InternalSolverLanguage.g:386:1: ruleBasicInterpretation returns [EObject current=null] : ( ( (lv_symbol_0_0= ruleSymbol ) ) otherlv_1= '(' ( (lv_objects_2_0= ruleComplexObject ) )* otherlv_3= ')' otherlv_4= ':' ( (lv_value_5_0= ruleTruthValue ) ) ) ;
1135 public final EObject ruleBasicInterpretation() throws RecognitionException {
1136 EObject current = null;
1137
1138 Token otherlv_1=null;
1139 Token otherlv_3=null;
1140 Token otherlv_4=null;
1141 EObject lv_symbol_0_0 = null;
1142
1143 EObject lv_objects_2_0 = null;
1144
1145 EObject lv_value_5_0 = null;
1146
1147
1148
1149 enterRule();
1150
1151 try {
1152 // InternalSolverLanguage.g:392:2: ( ( ( (lv_symbol_0_0= ruleSymbol ) ) otherlv_1= '(' ( (lv_objects_2_0= ruleComplexObject ) )* otherlv_3= ')' otherlv_4= ':' ( (lv_value_5_0= ruleTruthValue ) ) ) )
1153 // InternalSolverLanguage.g:393:2: ( ( (lv_symbol_0_0= ruleSymbol ) ) otherlv_1= '(' ( (lv_objects_2_0= ruleComplexObject ) )* otherlv_3= ')' otherlv_4= ':' ( (lv_value_5_0= ruleTruthValue ) ) )
1154 {
1155 // InternalSolverLanguage.g:393:2: ( ( (lv_symbol_0_0= ruleSymbol ) ) otherlv_1= '(' ( (lv_objects_2_0= ruleComplexObject ) )* otherlv_3= ')' otherlv_4= ':' ( (lv_value_5_0= ruleTruthValue ) ) )
1156 // InternalSolverLanguage.g:394:3: ( (lv_symbol_0_0= ruleSymbol ) ) otherlv_1= '(' ( (lv_objects_2_0= ruleComplexObject ) )* otherlv_3= ')' otherlv_4= ':' ( (lv_value_5_0= ruleTruthValue ) )
1157 {
1158 // InternalSolverLanguage.g:394:3: ( (lv_symbol_0_0= ruleSymbol ) )
1159 // InternalSolverLanguage.g:395:4: (lv_symbol_0_0= ruleSymbol )
1160 {
1161 // InternalSolverLanguage.g:395:4: (lv_symbol_0_0= ruleSymbol )
1162 // InternalSolverLanguage.g:396:5: lv_symbol_0_0= ruleSymbol
1163 {
1164
1165 newCompositeNode(grammarAccess.getBasicInterpretationAccess().getSymbolSymbolParserRuleCall_0_0());
1166
1167 pushFollow(FOLLOW_6);
1168 lv_symbol_0_0=ruleSymbol();
1169
1170 state._fsp--;
1171
1172
1173 if (current==null) {
1174 current = createModelElementForParent(grammarAccess.getBasicInterpretationRule());
1175 }
1176 set(
1177 current,
1178 "symbol",
1179 lv_symbol_0_0,
1180 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
1181 afterParserOrEnumRuleCall();
1182
1183
1184 }
1185
1186
1187 }
1188
1189 otherlv_1=(Token)match(input,17,FOLLOW_7);
1190
1191 newLeafNode(otherlv_1, grammarAccess.getBasicInterpretationAccess().getLeftParenthesisKeyword_1());
1192
1193 // InternalSolverLanguage.g:417:3: ( (lv_objects_2_0= ruleComplexObject ) )*
1194 loop8:
1195 do {
1196 int alt8=2;
1197 int LA8_0 = input.LA(1);
1198
1199 if ( ((LA8_0>=RULE_INT && LA8_0<=RULE_STRING)||LA8_0==11||(LA8_0>=13 && LA8_0<=14)||LA8_0==19||LA8_0==26||LA8_0==30) ) {
1200 alt8=1;
1201 }
1202
1203
1204 switch (alt8) {
1205 case 1 :
1206 // InternalSolverLanguage.g:418:4: (lv_objects_2_0= ruleComplexObject )
1207 {
1208 // InternalSolverLanguage.g:418:4: (lv_objects_2_0= ruleComplexObject )
1209 // InternalSolverLanguage.g:419:5: lv_objects_2_0= ruleComplexObject
1210 {
1211
1212 newCompositeNode(grammarAccess.getBasicInterpretationAccess().getObjectsComplexObjectParserRuleCall_2_0());
1213
1214 pushFollow(FOLLOW_7);
1215 lv_objects_2_0=ruleComplexObject();
1216
1217 state._fsp--;
1218
1219
1220 if (current==null) {
1221 current = createModelElementForParent(grammarAccess.getBasicInterpretationRule());
1222 }
1223 add(
1224 current,
1225 "objects",
1226 lv_objects_2_0,
1227 "org.eclipse.viatra.solver.language.SolverLanguage.ComplexObject");
1228 afterParserOrEnumRuleCall();
1229
1230
1231 }
1232
1233
1234 }
1235 break;
1236
1237 default :
1238 break loop8;
1239 }
1240 } while (true);
1241
1242 otherlv_3=(Token)match(input,18,FOLLOW_8);
1243
1244 newLeafNode(otherlv_3, grammarAccess.getBasicInterpretationAccess().getRightParenthesisKeyword_3());
1245
1246 otherlv_4=(Token)match(input,19,FOLLOW_9);
1247
1248 newLeafNode(otherlv_4, grammarAccess.getBasicInterpretationAccess().getColonKeyword_4());
1249
1250 // InternalSolverLanguage.g:444:3: ( (lv_value_5_0= ruleTruthValue ) )
1251 // InternalSolverLanguage.g:445:4: (lv_value_5_0= ruleTruthValue )
1252 {
1253 // InternalSolverLanguage.g:445:4: (lv_value_5_0= ruleTruthValue )
1254 // InternalSolverLanguage.g:446:5: lv_value_5_0= ruleTruthValue
1255 {
1256
1257 newCompositeNode(grammarAccess.getBasicInterpretationAccess().getValueTruthValueParserRuleCall_5_0());
1258
1259 pushFollow(FOLLOW_2);
1260 lv_value_5_0=ruleTruthValue();
1261
1262 state._fsp--;
1263
1264
1265 if (current==null) {
1266 current = createModelElementForParent(grammarAccess.getBasicInterpretationRule());
1267 }
1268 set(
1269 current,
1270 "value",
1271 lv_value_5_0,
1272 "org.eclipse.viatra.solver.language.SolverLanguage.TruthValue");
1273 afterParserOrEnumRuleCall();
1274
1275
1276 }
1277
1278
1279 }
1280
1281
1282 }
1283
1284
1285 }
1286
1287
1288 leaveRule();
1289
1290 }
1291
1292 catch (RecognitionException re) {
1293 recover(input,re);
1294 appendSkippedTokens();
1295 }
1296 finally {
1297 }
1298 return current;
1299 }
1300 // $ANTLR end "ruleBasicInterpretation"
1301
1302
1303 // $ANTLR start "entryRuleSymbol"
1304 // InternalSolverLanguage.g:467:1: entryRuleSymbol returns [EObject current=null] : iv_ruleSymbol= ruleSymbol EOF ;
1305 public final EObject entryRuleSymbol() throws RecognitionException {
1306 EObject current = null;
1307
1308 EObject iv_ruleSymbol = null;
1309
1310
1311 try {
1312 // InternalSolverLanguage.g:467:47: (iv_ruleSymbol= ruleSymbol EOF )
1313 // InternalSolverLanguage.g:468:2: iv_ruleSymbol= ruleSymbol EOF
1314 {
1315 newCompositeNode(grammarAccess.getSymbolRule());
1316 pushFollow(FOLLOW_1);
1317 iv_ruleSymbol=ruleSymbol();
1318
1319 state._fsp--;
1320
1321 current =iv_ruleSymbol;
1322 match(input,EOF,FOLLOW_2);
1323
1324 }
1325
1326 }
1327
1328 catch (RecognitionException re) {
1329 recover(input,re);
1330 appendSkippedTokens();
1331 }
1332 finally {
1333 }
1334 return current;
1335 }
1336 // $ANTLR end "entryRuleSymbol"
1337
1338
1339 // $ANTLR start "ruleSymbol"
1340 // InternalSolverLanguage.g:474:1: ruleSymbol returns [EObject current=null] : (this_ModelSymbol_0= ruleModelSymbol | this_PartialitySymbol_1= rulePartialitySymbol | this_DataSymbol_2= ruleDataSymbol ) ;
1341 public final EObject ruleSymbol() throws RecognitionException {
1342 EObject current = null;
1343
1344 EObject this_ModelSymbol_0 = null;
1345
1346 EObject this_PartialitySymbol_1 = null;
1347
1348 EObject this_DataSymbol_2 = null;
1349
1350
1351
1352 enterRule();
1353
1354 try {
1355 // InternalSolverLanguage.g:480:2: ( (this_ModelSymbol_0= ruleModelSymbol | this_PartialitySymbol_1= rulePartialitySymbol | this_DataSymbol_2= ruleDataSymbol ) )
1356 // InternalSolverLanguage.g:481:2: (this_ModelSymbol_0= ruleModelSymbol | this_PartialitySymbol_1= rulePartialitySymbol | this_DataSymbol_2= ruleDataSymbol )
1357 {
1358 // InternalSolverLanguage.g:481:2: (this_ModelSymbol_0= ruleModelSymbol | this_PartialitySymbol_1= rulePartialitySymbol | this_DataSymbol_2= ruleDataSymbol )
1359 int alt9=3;
1360 switch ( input.LA(1) ) {
1361 case RULE_ID:
1362 {
1363 alt9=1;
1364 }
1365 break;
1366 case 20:
1367 case 21:
1368 {
1369 alt9=2;
1370 }
1371 break;
1372 case 22:
1373 case 23:
1374 case 24:
1375 case 25:
1376 {
1377 alt9=3;
1378 }
1379 break;
1380 default:
1381 NoViableAltException nvae =
1382 new NoViableAltException("", 9, 0, input);
1383
1384 throw nvae;
1385 }
1386
1387 switch (alt9) {
1388 case 1 :
1389 // InternalSolverLanguage.g:482:3: this_ModelSymbol_0= ruleModelSymbol
1390 {
1391
1392 newCompositeNode(grammarAccess.getSymbolAccess().getModelSymbolParserRuleCall_0());
1393
1394 pushFollow(FOLLOW_2);
1395 this_ModelSymbol_0=ruleModelSymbol();
1396
1397 state._fsp--;
1398
1399
1400 current = this_ModelSymbol_0;
1401 afterParserOrEnumRuleCall();
1402
1403
1404 }
1405 break;
1406 case 2 :
1407 // InternalSolverLanguage.g:491:3: this_PartialitySymbol_1= rulePartialitySymbol
1408 {
1409
1410 newCompositeNode(grammarAccess.getSymbolAccess().getPartialitySymbolParserRuleCall_1());
1411
1412 pushFollow(FOLLOW_2);
1413 this_PartialitySymbol_1=rulePartialitySymbol();
1414
1415 state._fsp--;
1416
1417
1418 current = this_PartialitySymbol_1;
1419 afterParserOrEnumRuleCall();
1420
1421
1422 }
1423 break;
1424 case 3 :
1425 // InternalSolverLanguage.g:500:3: this_DataSymbol_2= ruleDataSymbol
1426 {
1427
1428 newCompositeNode(grammarAccess.getSymbolAccess().getDataSymbolParserRuleCall_2());
1429
1430 pushFollow(FOLLOW_2);
1431 this_DataSymbol_2=ruleDataSymbol();
1432
1433 state._fsp--;
1434
1435
1436 current = this_DataSymbol_2;
1437 afterParserOrEnumRuleCall();
1438
1439
1440 }
1441 break;
1442
1443 }
1444
1445
1446 }
1447
1448
1449 leaveRule();
1450
1451 }
1452
1453 catch (RecognitionException re) {
1454 recover(input,re);
1455 appendSkippedTokens();
1456 }
1457 finally {
1458 }
1459 return current;
1460 }
1461 // $ANTLR end "ruleSymbol"
1462
1463
1464 // $ANTLR start "entryRuleModelSymbol"
1465 // InternalSolverLanguage.g:512:1: entryRuleModelSymbol returns [EObject current=null] : iv_ruleModelSymbol= ruleModelSymbol EOF ;
1466 public final EObject entryRuleModelSymbol() throws RecognitionException {
1467 EObject current = null;
1468
1469 EObject iv_ruleModelSymbol = null;
1470
1471
1472 try {
1473 // InternalSolverLanguage.g:512:52: (iv_ruleModelSymbol= ruleModelSymbol EOF )
1474 // InternalSolverLanguage.g:513:2: iv_ruleModelSymbol= ruleModelSymbol EOF
1475 {
1476 newCompositeNode(grammarAccess.getModelSymbolRule());
1477 pushFollow(FOLLOW_1);
1478 iv_ruleModelSymbol=ruleModelSymbol();
1479
1480 state._fsp--;
1481
1482 current =iv_ruleModelSymbol;
1483 match(input,EOF,FOLLOW_2);
1484
1485 }
1486
1487 }
1488
1489 catch (RecognitionException re) {
1490 recover(input,re);
1491 appendSkippedTokens();
1492 }
1493 finally {
1494 }
1495 return current;
1496 }
1497 // $ANTLR end "entryRuleModelSymbol"
1498
1499
1500 // $ANTLR start "ruleModelSymbol"
1501 // InternalSolverLanguage.g:519:1: ruleModelSymbol returns [EObject current=null] : ( (lv_name_0_0= RULE_ID ) ) ;
1502 public final EObject ruleModelSymbol() throws RecognitionException {
1503 EObject current = null;
1504
1505 Token lv_name_0_0=null;
1506
1507
1508 enterRule();
1509
1510 try {
1511 // InternalSolverLanguage.g:525:2: ( ( (lv_name_0_0= RULE_ID ) ) )
1512 // InternalSolverLanguage.g:526:2: ( (lv_name_0_0= RULE_ID ) )
1513 {
1514 // InternalSolverLanguage.g:526:2: ( (lv_name_0_0= RULE_ID ) )
1515 // InternalSolverLanguage.g:527:3: (lv_name_0_0= RULE_ID )
1516 {
1517 // InternalSolverLanguage.g:527:3: (lv_name_0_0= RULE_ID )
1518 // InternalSolverLanguage.g:528:4: lv_name_0_0= RULE_ID
1519 {
1520 lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_2);
1521
1522 newLeafNode(lv_name_0_0, grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0());
1523
1524
1525 if (current==null) {
1526 current = createModelElement(grammarAccess.getModelSymbolRule());
1527 }
1528 setWithLastConsumed(
1529 current,
1530 "name",
1531 lv_name_0_0,
1532 "org.eclipse.xtext.common.Terminals.ID");
1533
1534
1535 }
1536
1537
1538 }
1539
1540
1541 }
1542
1543
1544 leaveRule();
1545
1546 }
1547
1548 catch (RecognitionException re) {
1549 recover(input,re);
1550 appendSkippedTokens();
1551 }
1552 finally {
1553 }
1554 return current;
1555 }
1556 // $ANTLR end "ruleModelSymbol"
1557
1558
1559 // $ANTLR start "entryRulePartialitySymbol"
1560 // InternalSolverLanguage.g:547:1: entryRulePartialitySymbol returns [EObject current=null] : iv_rulePartialitySymbol= rulePartialitySymbol EOF ;
1561 public final EObject entryRulePartialitySymbol() throws RecognitionException {
1562 EObject current = null;
1563
1564 EObject iv_rulePartialitySymbol = null;
1565
1566
1567 try {
1568 // InternalSolverLanguage.g:547:57: (iv_rulePartialitySymbol= rulePartialitySymbol EOF )
1569 // InternalSolverLanguage.g:548:2: iv_rulePartialitySymbol= rulePartialitySymbol EOF
1570 {
1571 newCompositeNode(grammarAccess.getPartialitySymbolRule());
1572 pushFollow(FOLLOW_1);
1573 iv_rulePartialitySymbol=rulePartialitySymbol();
1574
1575 state._fsp--;
1576
1577 current =iv_rulePartialitySymbol;
1578 match(input,EOF,FOLLOW_2);
1579
1580 }
1581
1582 }
1583
1584 catch (RecognitionException re) {
1585 recover(input,re);
1586 appendSkippedTokens();
1587 }
1588 finally {
1589 }
1590 return current;
1591 }
1592 // $ANTLR end "entryRulePartialitySymbol"
1593
1594
1595 // $ANTLR start "rulePartialitySymbol"
1596 // InternalSolverLanguage.g:554:1: rulePartialitySymbol returns [EObject current=null] : (this_ExistSymbol_0= ruleExistSymbol | this_EqualsSymbol_1= ruleEqualsSymbol ) ;
1597 public final EObject rulePartialitySymbol() throws RecognitionException {
1598 EObject current = null;
1599
1600 EObject this_ExistSymbol_0 = null;
1601
1602 EObject this_EqualsSymbol_1 = null;
1603
1604
1605
1606 enterRule();
1607
1608 try {
1609 // InternalSolverLanguage.g:560:2: ( (this_ExistSymbol_0= ruleExistSymbol | this_EqualsSymbol_1= ruleEqualsSymbol ) )
1610 // InternalSolverLanguage.g:561:2: (this_ExistSymbol_0= ruleExistSymbol | this_EqualsSymbol_1= ruleEqualsSymbol )
1611 {
1612 // InternalSolverLanguage.g:561:2: (this_ExistSymbol_0= ruleExistSymbol | this_EqualsSymbol_1= ruleEqualsSymbol )
1613 int alt10=2;
1614 int LA10_0 = input.LA(1);
1615
1616 if ( (LA10_0==20) ) {
1617 alt10=1;
1618 }
1619 else if ( (LA10_0==21) ) {
1620 alt10=2;
1621 }
1622 else {
1623 NoViableAltException nvae =
1624 new NoViableAltException("", 10, 0, input);
1625
1626 throw nvae;
1627 }
1628 switch (alt10) {
1629 case 1 :
1630 // InternalSolverLanguage.g:562:3: this_ExistSymbol_0= ruleExistSymbol
1631 {
1632
1633 newCompositeNode(grammarAccess.getPartialitySymbolAccess().getExistSymbolParserRuleCall_0());
1634
1635 pushFollow(FOLLOW_2);
1636 this_ExistSymbol_0=ruleExistSymbol();
1637
1638 state._fsp--;
1639
1640
1641 current = this_ExistSymbol_0;
1642 afterParserOrEnumRuleCall();
1643
1644
1645 }
1646 break;
1647 case 2 :
1648 // InternalSolverLanguage.g:571:3: this_EqualsSymbol_1= ruleEqualsSymbol
1649 {
1650
1651 newCompositeNode(grammarAccess.getPartialitySymbolAccess().getEqualsSymbolParserRuleCall_1());
1652
1653 pushFollow(FOLLOW_2);
1654 this_EqualsSymbol_1=ruleEqualsSymbol();
1655
1656 state._fsp--;
1657
1658
1659 current = this_EqualsSymbol_1;
1660 afterParserOrEnumRuleCall();
1661
1662
1663 }
1664 break;
1665
1666 }
1667
1668
1669 }
1670
1671
1672 leaveRule();
1673
1674 }
1675
1676 catch (RecognitionException re) {
1677 recover(input,re);
1678 appendSkippedTokens();
1679 }
1680 finally {
1681 }
1682 return current;
1683 }
1684 // $ANTLR end "rulePartialitySymbol"
1685
1686
1687 // $ANTLR start "entryRuleExistSymbol"
1688 // InternalSolverLanguage.g:583:1: entryRuleExistSymbol returns [EObject current=null] : iv_ruleExistSymbol= ruleExistSymbol EOF ;
1689 public final EObject entryRuleExistSymbol() throws RecognitionException {
1690 EObject current = null;
1691
1692 EObject iv_ruleExistSymbol = null;
1693
1694
1695 try {
1696 // InternalSolverLanguage.g:583:52: (iv_ruleExistSymbol= ruleExistSymbol EOF )
1697 // InternalSolverLanguage.g:584:2: iv_ruleExistSymbol= ruleExistSymbol EOF
1698 {
1699 newCompositeNode(grammarAccess.getExistSymbolRule());
1700 pushFollow(FOLLOW_1);
1701 iv_ruleExistSymbol=ruleExistSymbol();
1702
1703 state._fsp--;
1704
1705 current =iv_ruleExistSymbol;
1706 match(input,EOF,FOLLOW_2);
1707
1708 }
1709
1710 }
1711
1712 catch (RecognitionException re) {
1713 recover(input,re);
1714 appendSkippedTokens();
1715 }
1716 finally {
1717 }
1718 return current;
1719 }
1720 // $ANTLR end "entryRuleExistSymbol"
1721
1722
1723 // $ANTLR start "ruleExistSymbol"
1724 // InternalSolverLanguage.g:590:1: ruleExistSymbol returns [EObject current=null] : (otherlv_0= 'exists' () ) ;
1725 public final EObject ruleExistSymbol() throws RecognitionException {
1726 EObject current = null;
1727
1728 Token otherlv_0=null;
1729
1730
1731 enterRule();
1732
1733 try {
1734 // InternalSolverLanguage.g:596:2: ( (otherlv_0= 'exists' () ) )
1735 // InternalSolverLanguage.g:597:2: (otherlv_0= 'exists' () )
1736 {
1737 // InternalSolverLanguage.g:597:2: (otherlv_0= 'exists' () )
1738 // InternalSolverLanguage.g:598:3: otherlv_0= 'exists' ()
1739 {
1740 otherlv_0=(Token)match(input,20,FOLLOW_2);
1741
1742 newLeafNode(otherlv_0, grammarAccess.getExistSymbolAccess().getExistsKeyword_0());
1743
1744 // InternalSolverLanguage.g:602:3: ()
1745 // InternalSolverLanguage.g:603:4:
1746 {
1747
1748 current = forceCreateModelElement(
1749 grammarAccess.getExistSymbolAccess().getExistSymbolAction_1(),
1750 current);
1751
1752
1753 }
1754
1755
1756 }
1757
1758
1759 }
1760
1761
1762 leaveRule();
1763
1764 }
1765
1766 catch (RecognitionException re) {
1767 recover(input,re);
1768 appendSkippedTokens();
1769 }
1770 finally {
1771 }
1772 return current;
1773 }
1774 // $ANTLR end "ruleExistSymbol"
1775
1776
1777 // $ANTLR start "entryRuleEqualsSymbol"
1778 // InternalSolverLanguage.g:613:1: entryRuleEqualsSymbol returns [EObject current=null] : iv_ruleEqualsSymbol= ruleEqualsSymbol EOF ;
1779 public final EObject entryRuleEqualsSymbol() throws RecognitionException {
1780 EObject current = null;
1781
1782 EObject iv_ruleEqualsSymbol = null;
1783
1784
1785 try {
1786 // InternalSolverLanguage.g:613:53: (iv_ruleEqualsSymbol= ruleEqualsSymbol EOF )
1787 // InternalSolverLanguage.g:614:2: iv_ruleEqualsSymbol= ruleEqualsSymbol EOF
1788 {
1789 newCompositeNode(grammarAccess.getEqualsSymbolRule());
1790 pushFollow(FOLLOW_1);
1791 iv_ruleEqualsSymbol=ruleEqualsSymbol();
1792
1793 state._fsp--;
1794
1795 current =iv_ruleEqualsSymbol;
1796 match(input,EOF,FOLLOW_2);
1797
1798 }
1799
1800 }
1801
1802 catch (RecognitionException re) {
1803 recover(input,re);
1804 appendSkippedTokens();
1805 }
1806 finally {
1807 }
1808 return current;
1809 }
1810 // $ANTLR end "entryRuleEqualsSymbol"
1811
1812
1813 // $ANTLR start "ruleEqualsSymbol"
1814 // InternalSolverLanguage.g:620:1: ruleEqualsSymbol returns [EObject current=null] : (otherlv_0= 'equals' () ) ;
1815 public final EObject ruleEqualsSymbol() throws RecognitionException {
1816 EObject current = null;
1817
1818 Token otherlv_0=null;
1819
1820
1821 enterRule();
1822
1823 try {
1824 // InternalSolverLanguage.g:626:2: ( (otherlv_0= 'equals' () ) )
1825 // InternalSolverLanguage.g:627:2: (otherlv_0= 'equals' () )
1826 {
1827 // InternalSolverLanguage.g:627:2: (otherlv_0= 'equals' () )
1828 // InternalSolverLanguage.g:628:3: otherlv_0= 'equals' ()
1829 {
1830 otherlv_0=(Token)match(input,21,FOLLOW_2);
1831
1832 newLeafNode(otherlv_0, grammarAccess.getEqualsSymbolAccess().getEqualsKeyword_0());
1833
1834 // InternalSolverLanguage.g:632:3: ()
1835 // InternalSolverLanguage.g:633:4:
1836 {
1837
1838 current = forceCreateModelElement(
1839 grammarAccess.getEqualsSymbolAccess().getEqualsSymbolAction_1(),
1840 current);
1841
1842
1843 }
1844
1845
1846 }
1847
1848
1849 }
1850
1851
1852 leaveRule();
1853
1854 }
1855
1856 catch (RecognitionException re) {
1857 recover(input,re);
1858 appendSkippedTokens();
1859 }
1860 finally {
1861 }
1862 return current;
1863 }
1864 // $ANTLR end "ruleEqualsSymbol"
1865
1866
1867 // $ANTLR start "entryRuleDataSymbol"
1868 // InternalSolverLanguage.g:643:1: entryRuleDataSymbol returns [EObject current=null] : iv_ruleDataSymbol= ruleDataSymbol EOF ;
1869 public final EObject entryRuleDataSymbol() throws RecognitionException {
1870 EObject current = null;
1871
1872 EObject iv_ruleDataSymbol = null;
1873
1874
1875 try {
1876 // InternalSolverLanguage.g:643:51: (iv_ruleDataSymbol= ruleDataSymbol EOF )
1877 // InternalSolverLanguage.g:644:2: iv_ruleDataSymbol= ruleDataSymbol EOF
1878 {
1879 newCompositeNode(grammarAccess.getDataSymbolRule());
1880 pushFollow(FOLLOW_1);
1881 iv_ruleDataSymbol=ruleDataSymbol();
1882
1883 state._fsp--;
1884
1885 current =iv_ruleDataSymbol;
1886 match(input,EOF,FOLLOW_2);
1887
1888 }
1889
1890 }
1891
1892 catch (RecognitionException re) {
1893 recover(input,re);
1894 appendSkippedTokens();
1895 }
1896 finally {
1897 }
1898 return current;
1899 }
1900 // $ANTLR end "entryRuleDataSymbol"
1901
1902
1903 // $ANTLR start "ruleDataSymbol"
1904 // InternalSolverLanguage.g:650:1: ruleDataSymbol returns [EObject current=null] : (this_BooleanSymbol_0= ruleBooleanSymbol | this_IntegerSymbol_1= ruleIntegerSymbol | this_RealSymbol_2= ruleRealSymbol | this_StringSymbol_3= ruleStringSymbol ) ;
1905 public final EObject ruleDataSymbol() throws RecognitionException {
1906 EObject current = null;
1907
1908 EObject this_BooleanSymbol_0 = null;
1909
1910 EObject this_IntegerSymbol_1 = null;
1911
1912 EObject this_RealSymbol_2 = null;
1913
1914 EObject this_StringSymbol_3 = null;
1915
1916
1917
1918 enterRule();
1919
1920 try {
1921 // InternalSolverLanguage.g:656:2: ( (this_BooleanSymbol_0= ruleBooleanSymbol | this_IntegerSymbol_1= ruleIntegerSymbol | this_RealSymbol_2= ruleRealSymbol | this_StringSymbol_3= ruleStringSymbol ) )
1922 // InternalSolverLanguage.g:657:2: (this_BooleanSymbol_0= ruleBooleanSymbol | this_IntegerSymbol_1= ruleIntegerSymbol | this_RealSymbol_2= ruleRealSymbol | this_StringSymbol_3= ruleStringSymbol )
1923 {
1924 // InternalSolverLanguage.g:657:2: (this_BooleanSymbol_0= ruleBooleanSymbol | this_IntegerSymbol_1= ruleIntegerSymbol | this_RealSymbol_2= ruleRealSymbol | this_StringSymbol_3= ruleStringSymbol )
1925 int alt11=4;
1926 switch ( input.LA(1) ) {
1927 case 22:
1928 {
1929 alt11=1;
1930 }
1931 break;
1932 case 23:
1933 {
1934 alt11=2;
1935 }
1936 break;
1937 case 24:
1938 {
1939 alt11=3;
1940 }
1941 break;
1942 case 25:
1943 {
1944 alt11=4;
1945 }
1946 break;
1947 default:
1948 NoViableAltException nvae =
1949 new NoViableAltException("", 11, 0, input);
1950
1951 throw nvae;
1952 }
1953
1954 switch (alt11) {
1955 case 1 :
1956 // InternalSolverLanguage.g:658:3: this_BooleanSymbol_0= ruleBooleanSymbol
1957 {
1958
1959 newCompositeNode(grammarAccess.getDataSymbolAccess().getBooleanSymbolParserRuleCall_0());
1960
1961 pushFollow(FOLLOW_2);
1962 this_BooleanSymbol_0=ruleBooleanSymbol();
1963
1964 state._fsp--;
1965
1966
1967 current = this_BooleanSymbol_0;
1968 afterParserOrEnumRuleCall();
1969
1970
1971 }
1972 break;
1973 case 2 :
1974 // InternalSolverLanguage.g:667:3: this_IntegerSymbol_1= ruleIntegerSymbol
1975 {
1976
1977 newCompositeNode(grammarAccess.getDataSymbolAccess().getIntegerSymbolParserRuleCall_1());
1978
1979 pushFollow(FOLLOW_2);
1980 this_IntegerSymbol_1=ruleIntegerSymbol();
1981
1982 state._fsp--;
1983
1984
1985 current = this_IntegerSymbol_1;
1986 afterParserOrEnumRuleCall();
1987
1988
1989 }
1990 break;
1991 case 3 :
1992 // InternalSolverLanguage.g:676:3: this_RealSymbol_2= ruleRealSymbol
1993 {
1994
1995 newCompositeNode(grammarAccess.getDataSymbolAccess().getRealSymbolParserRuleCall_2());
1996
1997 pushFollow(FOLLOW_2);
1998 this_RealSymbol_2=ruleRealSymbol();
1999
2000 state._fsp--;
2001
2002
2003 current = this_RealSymbol_2;
2004 afterParserOrEnumRuleCall();
2005
2006
2007 }
2008 break;
2009 case 4 :
2010 // InternalSolverLanguage.g:685:3: this_StringSymbol_3= ruleStringSymbol
2011 {
2012
2013 newCompositeNode(grammarAccess.getDataSymbolAccess().getStringSymbolParserRuleCall_3());
2014
2015 pushFollow(FOLLOW_2);
2016 this_StringSymbol_3=ruleStringSymbol();
2017
2018 state._fsp--;
2019
2020
2021 current = this_StringSymbol_3;
2022 afterParserOrEnumRuleCall();
2023
2024
2025 }
2026 break;
2027
2028 }
2029
2030
2031 }
2032
2033
2034 leaveRule();
2035
2036 }
2037
2038 catch (RecognitionException re) {
2039 recover(input,re);
2040 appendSkippedTokens();
2041 }
2042 finally {
2043 }
2044 return current;
2045 }
2046 // $ANTLR end "ruleDataSymbol"
2047
2048
2049 // $ANTLR start "entryRuleBooleanSymbol"
2050 // InternalSolverLanguage.g:697:1: entryRuleBooleanSymbol returns [EObject current=null] : iv_ruleBooleanSymbol= ruleBooleanSymbol EOF ;
2051 public final EObject entryRuleBooleanSymbol() throws RecognitionException {
2052 EObject current = null;
2053
2054 EObject iv_ruleBooleanSymbol = null;
2055
2056
2057 try {
2058 // InternalSolverLanguage.g:697:54: (iv_ruleBooleanSymbol= ruleBooleanSymbol EOF )
2059 // InternalSolverLanguage.g:698:2: iv_ruleBooleanSymbol= ruleBooleanSymbol EOF
2060 {
2061 newCompositeNode(grammarAccess.getBooleanSymbolRule());
2062 pushFollow(FOLLOW_1);
2063 iv_ruleBooleanSymbol=ruleBooleanSymbol();
2064
2065 state._fsp--;
2066
2067 current =iv_ruleBooleanSymbol;
2068 match(input,EOF,FOLLOW_2);
2069
2070 }
2071
2072 }
2073
2074 catch (RecognitionException re) {
2075 recover(input,re);
2076 appendSkippedTokens();
2077 }
2078 finally {
2079 }
2080 return current;
2081 }
2082 // $ANTLR end "entryRuleBooleanSymbol"
2083
2084
2085 // $ANTLR start "ruleBooleanSymbol"
2086 // InternalSolverLanguage.g:704:1: ruleBooleanSymbol returns [EObject current=null] : (otherlv_0= 'bool' () ) ;
2087 public final EObject ruleBooleanSymbol() throws RecognitionException {
2088 EObject current = null;
2089
2090 Token otherlv_0=null;
2091
2092
2093 enterRule();
2094
2095 try {
2096 // InternalSolverLanguage.g:710:2: ( (otherlv_0= 'bool' () ) )
2097 // InternalSolverLanguage.g:711:2: (otherlv_0= 'bool' () )
2098 {
2099 // InternalSolverLanguage.g:711:2: (otherlv_0= 'bool' () )
2100 // InternalSolverLanguage.g:712:3: otherlv_0= 'bool' ()
2101 {
2102 otherlv_0=(Token)match(input,22,FOLLOW_2);
2103
2104 newLeafNode(otherlv_0, grammarAccess.getBooleanSymbolAccess().getBoolKeyword_0());
2105
2106 // InternalSolverLanguage.g:716:3: ()
2107 // InternalSolverLanguage.g:717:4:
2108 {
2109
2110 current = forceCreateModelElement(
2111 grammarAccess.getBooleanSymbolAccess().getBooleanSymbolAction_1(),
2112 current);
2113
2114
2115 }
2116
2117
2118 }
2119
2120
2121 }
2122
2123
2124 leaveRule();
2125
2126 }
2127
2128 catch (RecognitionException re) {
2129 recover(input,re);
2130 appendSkippedTokens();
2131 }
2132 finally {
2133 }
2134 return current;
2135 }
2136 // $ANTLR end "ruleBooleanSymbol"
2137
2138
2139 // $ANTLR start "entryRuleIntegerSymbol"
2140 // InternalSolverLanguage.g:727:1: entryRuleIntegerSymbol returns [EObject current=null] : iv_ruleIntegerSymbol= ruleIntegerSymbol EOF ;
2141 public final EObject entryRuleIntegerSymbol() throws RecognitionException {
2142 EObject current = null;
2143
2144 EObject iv_ruleIntegerSymbol = null;
2145
2146
2147 try {
2148 // InternalSolverLanguage.g:727:54: (iv_ruleIntegerSymbol= ruleIntegerSymbol EOF )
2149 // InternalSolverLanguage.g:728:2: iv_ruleIntegerSymbol= ruleIntegerSymbol EOF
2150 {
2151 newCompositeNode(grammarAccess.getIntegerSymbolRule());
2152 pushFollow(FOLLOW_1);
2153 iv_ruleIntegerSymbol=ruleIntegerSymbol();
2154
2155 state._fsp--;
2156
2157 current =iv_ruleIntegerSymbol;
2158 match(input,EOF,FOLLOW_2);
2159
2160 }
2161
2162 }
2163
2164 catch (RecognitionException re) {
2165 recover(input,re);
2166 appendSkippedTokens();
2167 }
2168 finally {
2169 }
2170 return current;
2171 }
2172 // $ANTLR end "entryRuleIntegerSymbol"
2173
2174
2175 // $ANTLR start "ruleIntegerSymbol"
2176 // InternalSolverLanguage.g:734:1: ruleIntegerSymbol returns [EObject current=null] : (otherlv_0= 'int' () ) ;
2177 public final EObject ruleIntegerSymbol() throws RecognitionException {
2178 EObject current = null;
2179
2180 Token otherlv_0=null;
2181
2182
2183 enterRule();
2184
2185 try {
2186 // InternalSolverLanguage.g:740:2: ( (otherlv_0= 'int' () ) )
2187 // InternalSolverLanguage.g:741:2: (otherlv_0= 'int' () )
2188 {
2189 // InternalSolverLanguage.g:741:2: (otherlv_0= 'int' () )
2190 // InternalSolverLanguage.g:742:3: otherlv_0= 'int' ()
2191 {
2192 otherlv_0=(Token)match(input,23,FOLLOW_2);
2193
2194 newLeafNode(otherlv_0, grammarAccess.getIntegerSymbolAccess().getIntKeyword_0());
2195
2196 // InternalSolverLanguage.g:746:3: ()
2197 // InternalSolverLanguage.g:747:4:
2198 {
2199
2200 current = forceCreateModelElement(
2201 grammarAccess.getIntegerSymbolAccess().getIntegerSymbolAction_1(),
2202 current);
2203
2204
2205 }
2206
2207
2208 }
2209
2210
2211 }
2212
2213
2214 leaveRule();
2215
2216 }
2217
2218 catch (RecognitionException re) {
2219 recover(input,re);
2220 appendSkippedTokens();
2221 }
2222 finally {
2223 }
2224 return current;
2225 }
2226 // $ANTLR end "ruleIntegerSymbol"
2227
2228
2229 // $ANTLR start "entryRuleRealSymbol"
2230 // InternalSolverLanguage.g:757:1: entryRuleRealSymbol returns [EObject current=null] : iv_ruleRealSymbol= ruleRealSymbol EOF ;
2231 public final EObject entryRuleRealSymbol() throws RecognitionException {
2232 EObject current = null;
2233
2234 EObject iv_ruleRealSymbol = null;
2235
2236
2237 try {
2238 // InternalSolverLanguage.g:757:51: (iv_ruleRealSymbol= ruleRealSymbol EOF )
2239 // InternalSolverLanguage.g:758:2: iv_ruleRealSymbol= ruleRealSymbol EOF
2240 {
2241 newCompositeNode(grammarAccess.getRealSymbolRule());
2242 pushFollow(FOLLOW_1);
2243 iv_ruleRealSymbol=ruleRealSymbol();
2244
2245 state._fsp--;
2246
2247 current =iv_ruleRealSymbol;
2248 match(input,EOF,FOLLOW_2);
2249
2250 }
2251
2252 }
2253
2254 catch (RecognitionException re) {
2255 recover(input,re);
2256 appendSkippedTokens();
2257 }
2258 finally {
2259 }
2260 return current;
2261 }
2262 // $ANTLR end "entryRuleRealSymbol"
2263
2264
2265 // $ANTLR start "ruleRealSymbol"
2266 // InternalSolverLanguage.g:764:1: ruleRealSymbol returns [EObject current=null] : (otherlv_0= 'real' () ) ;
2267 public final EObject ruleRealSymbol() throws RecognitionException {
2268 EObject current = null;
2269
2270 Token otherlv_0=null;
2271
2272
2273 enterRule();
2274
2275 try {
2276 // InternalSolverLanguage.g:770:2: ( (otherlv_0= 'real' () ) )
2277 // InternalSolverLanguage.g:771:2: (otherlv_0= 'real' () )
2278 {
2279 // InternalSolverLanguage.g:771:2: (otherlv_0= 'real' () )
2280 // InternalSolverLanguage.g:772:3: otherlv_0= 'real' ()
2281 {
2282 otherlv_0=(Token)match(input,24,FOLLOW_2);
2283
2284 newLeafNode(otherlv_0, grammarAccess.getRealSymbolAccess().getRealKeyword_0());
2285
2286 // InternalSolverLanguage.g:776:3: ()
2287 // InternalSolverLanguage.g:777:4:
2288 {
2289
2290 current = forceCreateModelElement(
2291 grammarAccess.getRealSymbolAccess().getRealSymbolAction_1(),
2292 current);
2293
2294
2295 }
2296
2297
2298 }
2299
2300
2301 }
2302
2303
2304 leaveRule();
2305
2306 }
2307
2308 catch (RecognitionException re) {
2309 recover(input,re);
2310 appendSkippedTokens();
2311 }
2312 finally {
2313 }
2314 return current;
2315 }
2316 // $ANTLR end "ruleRealSymbol"
2317
2318
2319 // $ANTLR start "entryRuleStringSymbol"
2320 // InternalSolverLanguage.g:787:1: entryRuleStringSymbol returns [EObject current=null] : iv_ruleStringSymbol= ruleStringSymbol EOF ;
2321 public final EObject entryRuleStringSymbol() throws RecognitionException {
2322 EObject current = null;
2323
2324 EObject iv_ruleStringSymbol = null;
2325
2326
2327 try {
2328 // InternalSolverLanguage.g:787:53: (iv_ruleStringSymbol= ruleStringSymbol EOF )
2329 // InternalSolverLanguage.g:788:2: iv_ruleStringSymbol= ruleStringSymbol EOF
2330 {
2331 newCompositeNode(grammarAccess.getStringSymbolRule());
2332 pushFollow(FOLLOW_1);
2333 iv_ruleStringSymbol=ruleStringSymbol();
2334
2335 state._fsp--;
2336
2337 current =iv_ruleStringSymbol;
2338 match(input,EOF,FOLLOW_2);
2339
2340 }
2341
2342 }
2343
2344 catch (RecognitionException re) {
2345 recover(input,re);
2346 appendSkippedTokens();
2347 }
2348 finally {
2349 }
2350 return current;
2351 }
2352 // $ANTLR end "entryRuleStringSymbol"
2353
2354
2355 // $ANTLR start "ruleStringSymbol"
2356 // InternalSolverLanguage.g:794:1: ruleStringSymbol returns [EObject current=null] : (otherlv_0= 'string' () ) ;
2357 public final EObject ruleStringSymbol() throws RecognitionException {
2358 EObject current = null;
2359
2360 Token otherlv_0=null;
2361
2362
2363 enterRule();
2364
2365 try {
2366 // InternalSolverLanguage.g:800:2: ( (otherlv_0= 'string' () ) )
2367 // InternalSolverLanguage.g:801:2: (otherlv_0= 'string' () )
2368 {
2369 // InternalSolverLanguage.g:801:2: (otherlv_0= 'string' () )
2370 // InternalSolverLanguage.g:802:3: otherlv_0= 'string' ()
2371 {
2372 otherlv_0=(Token)match(input,25,FOLLOW_2);
2373
2374 newLeafNode(otherlv_0, grammarAccess.getStringSymbolAccess().getStringKeyword_0());
2375
2376 // InternalSolverLanguage.g:806:3: ()
2377 // InternalSolverLanguage.g:807:4:
2378 {
2379
2380 current = forceCreateModelElement(
2381 grammarAccess.getStringSymbolAccess().getStringSymbolAction_1(),
2382 current);
2383
2384
2385 }
2386
2387
2388 }
2389
2390
2391 }
2392
2393
2394 leaveRule();
2395
2396 }
2397
2398 catch (RecognitionException re) {
2399 recover(input,re);
2400 appendSkippedTokens();
2401 }
2402 finally {
2403 }
2404 return current;
2405 }
2406 // $ANTLR end "ruleStringSymbol"
2407
2408
2409 // $ANTLR start "entryRuleComplexObject"
2410 // InternalSolverLanguage.g:817:1: entryRuleComplexObject returns [EObject current=null] : iv_ruleComplexObject= ruleComplexObject EOF ;
2411 public final EObject entryRuleComplexObject() throws RecognitionException {
2412 EObject current = null;
2413
2414 EObject iv_ruleComplexObject = null;
2415
2416
2417 try {
2418 // InternalSolverLanguage.g:817:54: (iv_ruleComplexObject= ruleComplexObject EOF )
2419 // InternalSolverLanguage.g:818:2: iv_ruleComplexObject= ruleComplexObject EOF
2420 {
2421 newCompositeNode(grammarAccess.getComplexObjectRule());
2422 pushFollow(FOLLOW_1);
2423 iv_ruleComplexObject=ruleComplexObject();
2424
2425 state._fsp--;
2426
2427 current =iv_ruleComplexObject;
2428 match(input,EOF,FOLLOW_2);
2429
2430 }
2431
2432 }
2433
2434 catch (RecognitionException re) {
2435 recover(input,re);
2436 appendSkippedTokens();
2437 }
2438 finally {
2439 }
2440 return current;
2441 }
2442 // $ANTLR end "entryRuleComplexObject"
2443
2444
2445 // $ANTLR start "ruleComplexObject"
2446 // InternalSolverLanguage.g:824:1: ruleComplexObject returns [EObject current=null] : (this_Object_0= ruleObject | this_AllInstances_1= ruleAllInstances | this_AllObjects_2= ruleAllObjects ) ;
2447 public final EObject ruleComplexObject() throws RecognitionException {
2448 EObject current = null;
2449
2450 EObject this_Object_0 = null;
2451
2452 EObject this_AllInstances_1 = null;
2453
2454 EObject this_AllObjects_2 = null;
2455
2456
2457
2458 enterRule();
2459
2460 try {
2461 // InternalSolverLanguage.g:830:2: ( (this_Object_0= ruleObject | this_AllInstances_1= ruleAllInstances | this_AllObjects_2= ruleAllObjects ) )
2462 // InternalSolverLanguage.g:831:2: (this_Object_0= ruleObject | this_AllInstances_1= ruleAllInstances | this_AllObjects_2= ruleAllObjects )
2463 {
2464 // InternalSolverLanguage.g:831:2: (this_Object_0= ruleObject | this_AllInstances_1= ruleAllInstances | this_AllObjects_2= ruleAllObjects )
2465 int alt12=3;
2466 switch ( input.LA(1) ) {
2467 case RULE_INT:
2468 case RULE_ID:
2469 case RULE_STRING:
2470 case 11:
2471 case 13:
2472 case 14:
2473 case 26:
2474 {
2475 alt12=1;
2476 }
2477 break;
2478 case 19:
2479 {
2480 alt12=2;
2481 }
2482 break;
2483 case 30:
2484 {
2485 alt12=3;
2486 }
2487 break;
2488 default:
2489 NoViableAltException nvae =
2490 new NoViableAltException("", 12, 0, input);
2491
2492 throw nvae;
2493 }
2494
2495 switch (alt12) {
2496 case 1 :
2497 // InternalSolverLanguage.g:832:3: this_Object_0= ruleObject
2498 {
2499
2500 newCompositeNode(grammarAccess.getComplexObjectAccess().getObjectParserRuleCall_0());
2501
2502 pushFollow(FOLLOW_2);
2503 this_Object_0=ruleObject();
2504
2505 state._fsp--;
2506
2507
2508 current = this_Object_0;
2509 afterParserOrEnumRuleCall();
2510
2511
2512 }
2513 break;
2514 case 2 :
2515 // InternalSolverLanguage.g:841:3: this_AllInstances_1= ruleAllInstances
2516 {
2517
2518 newCompositeNode(grammarAccess.getComplexObjectAccess().getAllInstancesParserRuleCall_1());
2519
2520 pushFollow(FOLLOW_2);
2521 this_AllInstances_1=ruleAllInstances();
2522
2523 state._fsp--;
2524
2525
2526 current = this_AllInstances_1;
2527 afterParserOrEnumRuleCall();
2528
2529
2530 }
2531 break;
2532 case 3 :
2533 // InternalSolverLanguage.g:850:3: this_AllObjects_2= ruleAllObjects
2534 {
2535
2536 newCompositeNode(grammarAccess.getComplexObjectAccess().getAllObjectsParserRuleCall_2());
2537
2538 pushFollow(FOLLOW_2);
2539 this_AllObjects_2=ruleAllObjects();
2540
2541 state._fsp--;
2542
2543
2544 current = this_AllObjects_2;
2545 afterParserOrEnumRuleCall();
2546
2547
2548 }
2549 break;
2550
2551 }
2552
2553
2554 }
2555
2556
2557 leaveRule();
2558
2559 }
2560
2561 catch (RecognitionException re) {
2562 recover(input,re);
2563 appendSkippedTokens();
2564 }
2565 finally {
2566 }
2567 return current;
2568 }
2569 // $ANTLR end "ruleComplexObject"
2570
2571
2572 // $ANTLR start "entryRuleObject"
2573 // InternalSolverLanguage.g:862:1: entryRuleObject returns [EObject current=null] : iv_ruleObject= ruleObject EOF ;
2574 public final EObject entryRuleObject() throws RecognitionException {
2575 EObject current = null;
2576
2577 EObject iv_ruleObject = null;
2578
2579
2580 try {
2581 // InternalSolverLanguage.g:862:47: (iv_ruleObject= ruleObject EOF )
2582 // InternalSolverLanguage.g:863:2: iv_ruleObject= ruleObject EOF
2583 {
2584 newCompositeNode(grammarAccess.getObjectRule());
2585 pushFollow(FOLLOW_1);
2586 iv_ruleObject=ruleObject();
2587
2588 state._fsp--;
2589
2590 current =iv_ruleObject;
2591 match(input,EOF,FOLLOW_2);
2592
2593 }
2594
2595 }
2596
2597 catch (RecognitionException re) {
2598 recover(input,re);
2599 appendSkippedTokens();
2600 }
2601 finally {
2602 }
2603 return current;
2604 }
2605 // $ANTLR end "entryRuleObject"
2606
2607
2608 // $ANTLR start "ruleObject"
2609 // InternalSolverLanguage.g:869:1: ruleObject returns [EObject current=null] : (this_NamedObject_0= ruleNamedObject | this_UnnamedObject_1= ruleUnnamedObject | this_DataObject_2= ruleDataObject ) ;
2610 public final EObject ruleObject() throws RecognitionException {
2611 EObject current = null;
2612
2613 EObject this_NamedObject_0 = null;
2614
2615 EObject this_UnnamedObject_1 = null;
2616
2617 EObject this_DataObject_2 = null;
2618
2619
2620
2621 enterRule();
2622
2623 try {
2624 // InternalSolverLanguage.g:875:2: ( (this_NamedObject_0= ruleNamedObject | this_UnnamedObject_1= ruleUnnamedObject | this_DataObject_2= ruleDataObject ) )
2625 // InternalSolverLanguage.g:876:2: (this_NamedObject_0= ruleNamedObject | this_UnnamedObject_1= ruleUnnamedObject | this_DataObject_2= ruleDataObject )
2626 {
2627 // InternalSolverLanguage.g:876:2: (this_NamedObject_0= ruleNamedObject | this_UnnamedObject_1= ruleUnnamedObject | this_DataObject_2= ruleDataObject )
2628 int alt13=3;
2629 switch ( input.LA(1) ) {
2630 case 26:
2631 {
2632 alt13=1;
2633 }
2634 break;
2635 case RULE_ID:
2636 {
2637 alt13=2;
2638 }
2639 break;
2640 case RULE_INT:
2641 case RULE_STRING:
2642 case 11:
2643 case 13:
2644 case 14:
2645 {
2646 alt13=3;
2647 }
2648 break;
2649 default:
2650 NoViableAltException nvae =
2651 new NoViableAltException("", 13, 0, input);
2652
2653 throw nvae;
2654 }
2655
2656 switch (alt13) {
2657 case 1 :
2658 // InternalSolverLanguage.g:877:3: this_NamedObject_0= ruleNamedObject
2659 {
2660
2661 newCompositeNode(grammarAccess.getObjectAccess().getNamedObjectParserRuleCall_0());
2662
2663 pushFollow(FOLLOW_2);
2664 this_NamedObject_0=ruleNamedObject();
2665
2666 state._fsp--;
2667
2668
2669 current = this_NamedObject_0;
2670 afterParserOrEnumRuleCall();
2671
2672
2673 }
2674 break;
2675 case 2 :
2676 // InternalSolverLanguage.g:886:3: this_UnnamedObject_1= ruleUnnamedObject
2677 {
2678
2679 newCompositeNode(grammarAccess.getObjectAccess().getUnnamedObjectParserRuleCall_1());
2680
2681 pushFollow(FOLLOW_2);
2682 this_UnnamedObject_1=ruleUnnamedObject();
2683
2684 state._fsp--;
2685
2686
2687 current = this_UnnamedObject_1;
2688 afterParserOrEnumRuleCall();
2689
2690
2691 }
2692 break;
2693 case 3 :
2694 // InternalSolverLanguage.g:895:3: this_DataObject_2= ruleDataObject
2695 {
2696
2697 newCompositeNode(grammarAccess.getObjectAccess().getDataObjectParserRuleCall_2());
2698
2699 pushFollow(FOLLOW_2);
2700 this_DataObject_2=ruleDataObject();
2701
2702 state._fsp--;
2703
2704
2705 current = this_DataObject_2;
2706 afterParserOrEnumRuleCall();
2707
2708
2709 }
2710 break;
2711
2712 }
2713
2714
2715 }
2716
2717
2718 leaveRule();
2719
2720 }
2721
2722 catch (RecognitionException re) {
2723 recover(input,re);
2724 appendSkippedTokens();
2725 }
2726 finally {
2727 }
2728 return current;
2729 }
2730 // $ANTLR end "ruleObject"
2731
2732
2733 // $ANTLR start "entryRuleNamedObject"
2734 // InternalSolverLanguage.g:907:1: entryRuleNamedObject returns [EObject current=null] : iv_ruleNamedObject= ruleNamedObject EOF ;
2735 public final EObject entryRuleNamedObject() throws RecognitionException {
2736 EObject current = null;
2737
2738 EObject iv_ruleNamedObject = null;
2739
2740
2741 try {
2742 // InternalSolverLanguage.g:907:52: (iv_ruleNamedObject= ruleNamedObject EOF )
2743 // InternalSolverLanguage.g:908:2: iv_ruleNamedObject= ruleNamedObject EOF
2744 {
2745 newCompositeNode(grammarAccess.getNamedObjectRule());
2746 pushFollow(FOLLOW_1);
2747 iv_ruleNamedObject=ruleNamedObject();
2748
2749 state._fsp--;
2750
2751 current =iv_ruleNamedObject;
2752 match(input,EOF,FOLLOW_2);
2753
2754 }
2755
2756 }
2757
2758 catch (RecognitionException re) {
2759 recover(input,re);
2760 appendSkippedTokens();
2761 }
2762 finally {
2763 }
2764 return current;
2765 }
2766 // $ANTLR end "entryRuleNamedObject"
2767
2768
2769 // $ANTLR start "ruleNamedObject"
2770 // InternalSolverLanguage.g:914:1: ruleNamedObject returns [EObject current=null] : (otherlv_0= '\\'' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '\\'' ) ;
2771 public final EObject ruleNamedObject() throws RecognitionException {
2772 EObject current = null;
2773
2774 Token otherlv_0=null;
2775 Token lv_name_1_0=null;
2776 Token otherlv_2=null;
2777
2778
2779 enterRule();
2780
2781 try {
2782 // InternalSolverLanguage.g:920:2: ( (otherlv_0= '\\'' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '\\'' ) )
2783 // InternalSolverLanguage.g:921:2: (otherlv_0= '\\'' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '\\'' )
2784 {
2785 // InternalSolverLanguage.g:921:2: (otherlv_0= '\\'' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '\\'' )
2786 // InternalSolverLanguage.g:922:3: otherlv_0= '\\'' ( (lv_name_1_0= RULE_ID ) ) otherlv_2= '\\''
2787 {
2788 otherlv_0=(Token)match(input,26,FOLLOW_10);
2789
2790 newLeafNode(otherlv_0, grammarAccess.getNamedObjectAccess().getApostropheKeyword_0());
2791
2792 // InternalSolverLanguage.g:926:3: ( (lv_name_1_0= RULE_ID ) )
2793 // InternalSolverLanguage.g:927:4: (lv_name_1_0= RULE_ID )
2794 {
2795 // InternalSolverLanguage.g:927:4: (lv_name_1_0= RULE_ID )
2796 // InternalSolverLanguage.g:928:5: lv_name_1_0= RULE_ID
2797 {
2798 lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_11);
2799
2800 newLeafNode(lv_name_1_0, grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0());
2801
2802
2803 if (current==null) {
2804 current = createModelElement(grammarAccess.getNamedObjectRule());
2805 }
2806 setWithLastConsumed(
2807 current,
2808 "name",
2809 lv_name_1_0,
2810 "org.eclipse.xtext.common.Terminals.ID");
2811
2812
2813 }
2814
2815
2816 }
2817
2818 otherlv_2=(Token)match(input,26,FOLLOW_2);
2819
2820 newLeafNode(otherlv_2, grammarAccess.getNamedObjectAccess().getApostropheKeyword_2());
2821
2822
2823 }
2824
2825
2826 }
2827
2828
2829 leaveRule();
2830
2831 }
2832
2833 catch (RecognitionException re) {
2834 recover(input,re);
2835 appendSkippedTokens();
2836 }
2837 finally {
2838 }
2839 return current;
2840 }
2841 // $ANTLR end "ruleNamedObject"
2842
2843
2844 // $ANTLR start "entryRuleUnnamedObject"
2845 // InternalSolverLanguage.g:952:1: entryRuleUnnamedObject returns [EObject current=null] : iv_ruleUnnamedObject= ruleUnnamedObject EOF ;
2846 public final EObject entryRuleUnnamedObject() throws RecognitionException {
2847 EObject current = null;
2848
2849 EObject iv_ruleUnnamedObject = null;
2850
2851
2852 try {
2853 // InternalSolverLanguage.g:952:54: (iv_ruleUnnamedObject= ruleUnnamedObject EOF )
2854 // InternalSolverLanguage.g:953:2: iv_ruleUnnamedObject= ruleUnnamedObject EOF
2855 {
2856 newCompositeNode(grammarAccess.getUnnamedObjectRule());
2857 pushFollow(FOLLOW_1);
2858 iv_ruleUnnamedObject=ruleUnnamedObject();
2859
2860 state._fsp--;
2861
2862 current =iv_ruleUnnamedObject;
2863 match(input,EOF,FOLLOW_2);
2864
2865 }
2866
2867 }
2868
2869 catch (RecognitionException re) {
2870 recover(input,re);
2871 appendSkippedTokens();
2872 }
2873 finally {
2874 }
2875 return current;
2876 }
2877 // $ANTLR end "entryRuleUnnamedObject"
2878
2879
2880 // $ANTLR start "ruleUnnamedObject"
2881 // InternalSolverLanguage.g:959:1: ruleUnnamedObject returns [EObject current=null] : ( (lv_name_0_0= RULE_ID ) ) ;
2882 public final EObject ruleUnnamedObject() throws RecognitionException {
2883 EObject current = null;
2884
2885 Token lv_name_0_0=null;
2886
2887
2888 enterRule();
2889
2890 try {
2891 // InternalSolverLanguage.g:965:2: ( ( (lv_name_0_0= RULE_ID ) ) )
2892 // InternalSolverLanguage.g:966:2: ( (lv_name_0_0= RULE_ID ) )
2893 {
2894 // InternalSolverLanguage.g:966:2: ( (lv_name_0_0= RULE_ID ) )
2895 // InternalSolverLanguage.g:967:3: (lv_name_0_0= RULE_ID )
2896 {
2897 // InternalSolverLanguage.g:967:3: (lv_name_0_0= RULE_ID )
2898 // InternalSolverLanguage.g:968:4: lv_name_0_0= RULE_ID
2899 {
2900 lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_2);
2901
2902 newLeafNode(lv_name_0_0, grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0());
2903
2904
2905 if (current==null) {
2906 current = createModelElement(grammarAccess.getUnnamedObjectRule());
2907 }
2908 setWithLastConsumed(
2909 current,
2910 "name",
2911 lv_name_0_0,
2912 "org.eclipse.xtext.common.Terminals.ID");
2913
2914
2915 }
2916
2917
2918 }
2919
2920
2921 }
2922
2923
2924 leaveRule();
2925
2926 }
2927
2928 catch (RecognitionException re) {
2929 recover(input,re);
2930 appendSkippedTokens();
2931 }
2932 finally {
2933 }
2934 return current;
2935 }
2936 // $ANTLR end "ruleUnnamedObject"
2937
2938
2939 // $ANTLR start "entryRuleDataObject"
2940 // InternalSolverLanguage.g:987:1: entryRuleDataObject returns [EObject current=null] : iv_ruleDataObject= ruleDataObject EOF ;
2941 public final EObject entryRuleDataObject() throws RecognitionException {
2942 EObject current = null;
2943
2944 EObject iv_ruleDataObject = null;
2945
2946
2947 try {
2948 // InternalSolverLanguage.g:987:51: (iv_ruleDataObject= ruleDataObject EOF )
2949 // InternalSolverLanguage.g:988:2: iv_ruleDataObject= ruleDataObject EOF
2950 {
2951 newCompositeNode(grammarAccess.getDataObjectRule());
2952 pushFollow(FOLLOW_1);
2953 iv_ruleDataObject=ruleDataObject();
2954
2955 state._fsp--;
2956
2957 current =iv_ruleDataObject;
2958 match(input,EOF,FOLLOW_2);
2959
2960 }
2961
2962 }
2963
2964 catch (RecognitionException re) {
2965 recover(input,re);
2966 appendSkippedTokens();
2967 }
2968 finally {
2969 }
2970 return current;
2971 }
2972 // $ANTLR end "entryRuleDataObject"
2973
2974
2975 // $ANTLR start "ruleDataObject"
2976 // InternalSolverLanguage.g:994:1: ruleDataObject returns [EObject current=null] : (this_BooleanObject_0= ruleBooleanObject | this_IntObject_1= ruleIntObject | this_RealObject_2= ruleRealObject | this_StringObject_3= ruleStringObject ) ;
2977 public final EObject ruleDataObject() throws RecognitionException {
2978 EObject current = null;
2979
2980 EObject this_BooleanObject_0 = null;
2981
2982 EObject this_IntObject_1 = null;
2983
2984 EObject this_RealObject_2 = null;
2985
2986 EObject this_StringObject_3 = null;
2987
2988
2989
2990 enterRule();
2991
2992 try {
2993 // InternalSolverLanguage.g:1000:2: ( (this_BooleanObject_0= ruleBooleanObject | this_IntObject_1= ruleIntObject | this_RealObject_2= ruleRealObject | this_StringObject_3= ruleStringObject ) )
2994 // InternalSolverLanguage.g:1001:2: (this_BooleanObject_0= ruleBooleanObject | this_IntObject_1= ruleIntObject | this_RealObject_2= ruleRealObject | this_StringObject_3= ruleStringObject )
2995 {
2996 // InternalSolverLanguage.g:1001:2: (this_BooleanObject_0= ruleBooleanObject | this_IntObject_1= ruleIntObject | this_RealObject_2= ruleRealObject | this_StringObject_3= ruleStringObject )
2997 int alt14=4;
2998 switch ( input.LA(1) ) {
2999 case 13:
3000 case 14:
3001 {
3002 alt14=1;
3003 }
3004 break;
3005 case 11:
3006 {
3007 int LA14_2 = input.LA(2);
3008
3009 if ( (LA14_2==RULE_INT) ) {
3010 int LA14_3 = input.LA(3);
3011
3012 if ( (LA14_3==12) ) {
3013 alt14=3;
3014 }
3015 else if ( (LA14_3==EOF||(LA14_3>=RULE_INT && LA14_3<=RULE_STRING)||LA14_3==11||(LA14_3>=13 && LA14_3<=14)||(LA14_3>=18 && LA14_3<=19)||LA14_3==26||LA14_3==30) ) {
3016 alt14=2;
3017 }
3018 else {
3019 NoViableAltException nvae =
3020 new NoViableAltException("", 14, 3, input);
3021
3022 throw nvae;
3023 }
3024 }
3025 else {
3026 NoViableAltException nvae =
3027 new NoViableAltException("", 14, 2, input);
3028
3029 throw nvae;
3030 }
3031 }
3032 break;
3033 case RULE_INT:
3034 {
3035 int LA14_3 = input.LA(2);
3036
3037 if ( (LA14_3==12) ) {
3038 alt14=3;
3039 }
3040 else if ( (LA14_3==EOF||(LA14_3>=RULE_INT && LA14_3<=RULE_STRING)||LA14_3==11||(LA14_3>=13 && LA14_3<=14)||(LA14_3>=18 && LA14_3<=19)||LA14_3==26||LA14_3==30) ) {
3041 alt14=2;
3042 }
3043 else {
3044 NoViableAltException nvae =
3045 new NoViableAltException("", 14, 3, input);
3046
3047 throw nvae;
3048 }
3049 }
3050 break;
3051 case RULE_STRING:
3052 {
3053 alt14=4;
3054 }
3055 break;
3056 default:
3057 NoViableAltException nvae =
3058 new NoViableAltException("", 14, 0, input);
3059
3060 throw nvae;
3061 }
3062
3063 switch (alt14) {
3064 case 1 :
3065 // InternalSolverLanguage.g:1002:3: this_BooleanObject_0= ruleBooleanObject
3066 {
3067
3068 newCompositeNode(grammarAccess.getDataObjectAccess().getBooleanObjectParserRuleCall_0());
3069
3070 pushFollow(FOLLOW_2);
3071 this_BooleanObject_0=ruleBooleanObject();
3072
3073 state._fsp--;
3074
3075
3076 current = this_BooleanObject_0;
3077 afterParserOrEnumRuleCall();
3078
3079
3080 }
3081 break;
3082 case 2 :
3083 // InternalSolverLanguage.g:1011:3: this_IntObject_1= ruleIntObject
3084 {
3085
3086 newCompositeNode(grammarAccess.getDataObjectAccess().getIntObjectParserRuleCall_1());
3087
3088 pushFollow(FOLLOW_2);
3089 this_IntObject_1=ruleIntObject();
3090
3091 state._fsp--;
3092
3093
3094 current = this_IntObject_1;
3095 afterParserOrEnumRuleCall();
3096
3097
3098 }
3099 break;
3100 case 3 :
3101 // InternalSolverLanguage.g:1020:3: this_RealObject_2= ruleRealObject
3102 {
3103
3104 newCompositeNode(grammarAccess.getDataObjectAccess().getRealObjectParserRuleCall_2());
3105
3106 pushFollow(FOLLOW_2);
3107 this_RealObject_2=ruleRealObject();
3108
3109 state._fsp--;
3110
3111
3112 current = this_RealObject_2;
3113 afterParserOrEnumRuleCall();
3114
3115
3116 }
3117 break;
3118 case 4 :
3119 // InternalSolverLanguage.g:1029:3: this_StringObject_3= ruleStringObject
3120 {
3121
3122 newCompositeNode(grammarAccess.getDataObjectAccess().getStringObjectParserRuleCall_3());
3123
3124 pushFollow(FOLLOW_2);
3125 this_StringObject_3=ruleStringObject();
3126
3127 state._fsp--;
3128
3129
3130 current = this_StringObject_3;
3131 afterParserOrEnumRuleCall();
3132
3133
3134 }
3135 break;
3136
3137 }
3138
3139
3140 }
3141
3142
3143 leaveRule();
3144
3145 }
3146
3147 catch (RecognitionException re) {
3148 recover(input,re);
3149 appendSkippedTokens();
3150 }
3151 finally {
3152 }
3153 return current;
3154 }
3155 // $ANTLR end "ruleDataObject"
3156
3157
3158 // $ANTLR start "entryRuleBooleanObject"
3159 // InternalSolverLanguage.g:1041:1: entryRuleBooleanObject returns [EObject current=null] : iv_ruleBooleanObject= ruleBooleanObject EOF ;
3160 public final EObject entryRuleBooleanObject() throws RecognitionException {
3161 EObject current = null;
3162
3163 EObject iv_ruleBooleanObject = null;
3164
3165
3166 try {
3167 // InternalSolverLanguage.g:1041:54: (iv_ruleBooleanObject= ruleBooleanObject EOF )
3168 // InternalSolverLanguage.g:1042:2: iv_ruleBooleanObject= ruleBooleanObject EOF
3169 {
3170 newCompositeNode(grammarAccess.getBooleanObjectRule());
3171 pushFollow(FOLLOW_1);
3172 iv_ruleBooleanObject=ruleBooleanObject();
3173
3174 state._fsp--;
3175
3176 current =iv_ruleBooleanObject;
3177 match(input,EOF,FOLLOW_2);
3178
3179 }
3180
3181 }
3182
3183 catch (RecognitionException re) {
3184 recover(input,re);
3185 appendSkippedTokens();
3186 }
3187 finally {
3188 }
3189 return current;
3190 }
3191 // $ANTLR end "entryRuleBooleanObject"
3192
3193
3194 // $ANTLR start "ruleBooleanObject"
3195 // InternalSolverLanguage.g:1048:1: ruleBooleanObject returns [EObject current=null] : ( (lv_value_0_0= ruleBooleanValue ) ) ;
3196 public final EObject ruleBooleanObject() throws RecognitionException {
3197 EObject current = null;
3198
3199 EObject lv_value_0_0 = null;
3200
3201
3202
3203 enterRule();
3204
3205 try {
3206 // InternalSolverLanguage.g:1054:2: ( ( (lv_value_0_0= ruleBooleanValue ) ) )
3207 // InternalSolverLanguage.g:1055:2: ( (lv_value_0_0= ruleBooleanValue ) )
3208 {
3209 // InternalSolverLanguage.g:1055:2: ( (lv_value_0_0= ruleBooleanValue ) )
3210 // InternalSolverLanguage.g:1056:3: (lv_value_0_0= ruleBooleanValue )
3211 {
3212 // InternalSolverLanguage.g:1056:3: (lv_value_0_0= ruleBooleanValue )
3213 // InternalSolverLanguage.g:1057:4: lv_value_0_0= ruleBooleanValue
3214 {
3215
3216 newCompositeNode(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0());
3217
3218 pushFollow(FOLLOW_2);
3219 lv_value_0_0=ruleBooleanValue();
3220
3221 state._fsp--;
3222
3223
3224 if (current==null) {
3225 current = createModelElementForParent(grammarAccess.getBooleanObjectRule());
3226 }
3227 set(
3228 current,
3229 "value",
3230 lv_value_0_0,
3231 "org.eclipse.viatra.solver.language.SolverLanguage.BooleanValue");
3232 afterParserOrEnumRuleCall();
3233
3234
3235 }
3236
3237
3238 }
3239
3240
3241 }
3242
3243
3244 leaveRule();
3245
3246 }
3247
3248 catch (RecognitionException re) {
3249 recover(input,re);
3250 appendSkippedTokens();
3251 }
3252 finally {
3253 }
3254 return current;
3255 }
3256 // $ANTLR end "ruleBooleanObject"
3257
3258
3259 // $ANTLR start "entryRuleIntObject"
3260 // InternalSolverLanguage.g:1077:1: entryRuleIntObject returns [EObject current=null] : iv_ruleIntObject= ruleIntObject EOF ;
3261 public final EObject entryRuleIntObject() throws RecognitionException {
3262 EObject current = null;
3263
3264 EObject iv_ruleIntObject = null;
3265
3266
3267 try {
3268 // InternalSolverLanguage.g:1077:50: (iv_ruleIntObject= ruleIntObject EOF )
3269 // InternalSolverLanguage.g:1078:2: iv_ruleIntObject= ruleIntObject EOF
3270 {
3271 newCompositeNode(grammarAccess.getIntObjectRule());
3272 pushFollow(FOLLOW_1);
3273 iv_ruleIntObject=ruleIntObject();
3274
3275 state._fsp--;
3276
3277 current =iv_ruleIntObject;
3278 match(input,EOF,FOLLOW_2);
3279
3280 }
3281
3282 }
3283
3284 catch (RecognitionException re) {
3285 recover(input,re);
3286 appendSkippedTokens();
3287 }
3288 finally {
3289 }
3290 return current;
3291 }
3292 // $ANTLR end "entryRuleIntObject"
3293
3294
3295 // $ANTLR start "ruleIntObject"
3296 // InternalSolverLanguage.g:1084:1: ruleIntObject returns [EObject current=null] : ( (lv_value_0_0= ruleINTLiteral ) ) ;
3297 public final EObject ruleIntObject() throws RecognitionException {
3298 EObject current = null;
3299
3300 AntlrDatatypeRuleToken lv_value_0_0 = null;
3301
3302
3303
3304 enterRule();
3305
3306 try {
3307 // InternalSolverLanguage.g:1090:2: ( ( (lv_value_0_0= ruleINTLiteral ) ) )
3308 // InternalSolverLanguage.g:1091:2: ( (lv_value_0_0= ruleINTLiteral ) )
3309 {
3310 // InternalSolverLanguage.g:1091:2: ( (lv_value_0_0= ruleINTLiteral ) )
3311 // InternalSolverLanguage.g:1092:3: (lv_value_0_0= ruleINTLiteral )
3312 {
3313 // InternalSolverLanguage.g:1092:3: (lv_value_0_0= ruleINTLiteral )
3314 // InternalSolverLanguage.g:1093:4: lv_value_0_0= ruleINTLiteral
3315 {
3316
3317 newCompositeNode(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0());
3318
3319 pushFollow(FOLLOW_2);
3320 lv_value_0_0=ruleINTLiteral();
3321
3322 state._fsp--;
3323
3324
3325 if (current==null) {
3326 current = createModelElementForParent(grammarAccess.getIntObjectRule());
3327 }
3328 set(
3329 current,
3330 "value",
3331 lv_value_0_0,
3332 "org.eclipse.viatra.solver.language.SolverLanguage.INTLiteral");
3333 afterParserOrEnumRuleCall();
3334
3335
3336 }
3337
3338
3339 }
3340
3341
3342 }
3343
3344
3345 leaveRule();
3346
3347 }
3348
3349 catch (RecognitionException re) {
3350 recover(input,re);
3351 appendSkippedTokens();
3352 }
3353 finally {
3354 }
3355 return current;
3356 }
3357 // $ANTLR end "ruleIntObject"
3358
3359
3360 // $ANTLR start "entryRuleRealObject"
3361 // InternalSolverLanguage.g:1113:1: entryRuleRealObject returns [EObject current=null] : iv_ruleRealObject= ruleRealObject EOF ;
3362 public final EObject entryRuleRealObject() throws RecognitionException {
3363 EObject current = null;
3364
3365 EObject iv_ruleRealObject = null;
3366
3367
3368 try {
3369 // InternalSolverLanguage.g:1113:51: (iv_ruleRealObject= ruleRealObject EOF )
3370 // InternalSolverLanguage.g:1114:2: iv_ruleRealObject= ruleRealObject EOF
3371 {
3372 newCompositeNode(grammarAccess.getRealObjectRule());
3373 pushFollow(FOLLOW_1);
3374 iv_ruleRealObject=ruleRealObject();
3375
3376 state._fsp--;
3377
3378 current =iv_ruleRealObject;
3379 match(input,EOF,FOLLOW_2);
3380
3381 }
3382
3383 }
3384
3385 catch (RecognitionException re) {
3386 recover(input,re);
3387 appendSkippedTokens();
3388 }
3389 finally {
3390 }
3391 return current;
3392 }
3393 // $ANTLR end "entryRuleRealObject"
3394
3395
3396 // $ANTLR start "ruleRealObject"
3397 // InternalSolverLanguage.g:1120:1: ruleRealObject returns [EObject current=null] : ( (lv_value_0_0= ruleREALLiteral ) ) ;
3398 public final EObject ruleRealObject() throws RecognitionException {
3399 EObject current = null;
3400
3401 AntlrDatatypeRuleToken lv_value_0_0 = null;
3402
3403
3404
3405 enterRule();
3406
3407 try {
3408 // InternalSolverLanguage.g:1126:2: ( ( (lv_value_0_0= ruleREALLiteral ) ) )
3409 // InternalSolverLanguage.g:1127:2: ( (lv_value_0_0= ruleREALLiteral ) )
3410 {
3411 // InternalSolverLanguage.g:1127:2: ( (lv_value_0_0= ruleREALLiteral ) )
3412 // InternalSolverLanguage.g:1128:3: (lv_value_0_0= ruleREALLiteral )
3413 {
3414 // InternalSolverLanguage.g:1128:3: (lv_value_0_0= ruleREALLiteral )
3415 // InternalSolverLanguage.g:1129:4: lv_value_0_0= ruleREALLiteral
3416 {
3417
3418 newCompositeNode(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0());
3419
3420 pushFollow(FOLLOW_2);
3421 lv_value_0_0=ruleREALLiteral();
3422
3423 state._fsp--;
3424
3425
3426 if (current==null) {
3427 current = createModelElementForParent(grammarAccess.getRealObjectRule());
3428 }
3429 set(
3430 current,
3431 "value",
3432 lv_value_0_0,
3433 "org.eclipse.viatra.solver.language.SolverLanguage.REALLiteral");
3434 afterParserOrEnumRuleCall();
3435
3436
3437 }
3438
3439
3440 }
3441
3442
3443 }
3444
3445
3446 leaveRule();
3447
3448 }
3449
3450 catch (RecognitionException re) {
3451 recover(input,re);
3452 appendSkippedTokens();
3453 }
3454 finally {
3455 }
3456 return current;
3457 }
3458 // $ANTLR end "ruleRealObject"
3459
3460
3461 // $ANTLR start "entryRuleStringObject"
3462 // InternalSolverLanguage.g:1149:1: entryRuleStringObject returns [EObject current=null] : iv_ruleStringObject= ruleStringObject EOF ;
3463 public final EObject entryRuleStringObject() throws RecognitionException {
3464 EObject current = null;
3465
3466 EObject iv_ruleStringObject = null;
3467
3468
3469 try {
3470 // InternalSolverLanguage.g:1149:53: (iv_ruleStringObject= ruleStringObject EOF )
3471 // InternalSolverLanguage.g:1150:2: iv_ruleStringObject= ruleStringObject EOF
3472 {
3473 newCompositeNode(grammarAccess.getStringObjectRule());
3474 pushFollow(FOLLOW_1);
3475 iv_ruleStringObject=ruleStringObject();
3476
3477 state._fsp--;
3478
3479 current =iv_ruleStringObject;
3480 match(input,EOF,FOLLOW_2);
3481
3482 }
3483
3484 }
3485
3486 catch (RecognitionException re) {
3487 recover(input,re);
3488 appendSkippedTokens();
3489 }
3490 finally {
3491 }
3492 return current;
3493 }
3494 // $ANTLR end "entryRuleStringObject"
3495
3496
3497 // $ANTLR start "ruleStringObject"
3498 // InternalSolverLanguage.g:1156:1: ruleStringObject returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ;
3499 public final EObject ruleStringObject() throws RecognitionException {
3500 EObject current = null;
3501
3502 Token lv_value_0_0=null;
3503
3504
3505 enterRule();
3506
3507 try {
3508 // InternalSolverLanguage.g:1162:2: ( ( (lv_value_0_0= RULE_STRING ) ) )
3509 // InternalSolverLanguage.g:1163:2: ( (lv_value_0_0= RULE_STRING ) )
3510 {
3511 // InternalSolverLanguage.g:1163:2: ( (lv_value_0_0= RULE_STRING ) )
3512 // InternalSolverLanguage.g:1164:3: (lv_value_0_0= RULE_STRING )
3513 {
3514 // InternalSolverLanguage.g:1164:3: (lv_value_0_0= RULE_STRING )
3515 // InternalSolverLanguage.g:1165:4: lv_value_0_0= RULE_STRING
3516 {
3517 lv_value_0_0=(Token)match(input,RULE_STRING,FOLLOW_2);
3518
3519 newLeafNode(lv_value_0_0, grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0());
3520
3521
3522 if (current==null) {
3523 current = createModelElement(grammarAccess.getStringObjectRule());
3524 }
3525 setWithLastConsumed(
3526 current,
3527 "value",
3528 lv_value_0_0,
3529 "org.eclipse.viatra.solver.language.SolverLanguage.STRING");
3530
3531
3532 }
3533
3534
3535 }
3536
3537
3538 }
3539
3540
3541 leaveRule();
3542
3543 }
3544
3545 catch (RecognitionException re) {
3546 recover(input,re);
3547 appendSkippedTokens();
3548 }
3549 finally {
3550 }
3551 return current;
3552 }
3553 // $ANTLR end "ruleStringObject"
3554
3555
3556 // $ANTLR start "entryRulePredicate"
3557 // InternalSolverLanguage.g:1184:1: entryRulePredicate returns [EObject current=null] : iv_rulePredicate= rulePredicate EOF ;
3558 public final EObject entryRulePredicate() throws RecognitionException {
3559 EObject current = null;
3560
3561 EObject iv_rulePredicate = null;
3562
3563
3564 try {
3565 // InternalSolverLanguage.g:1184:50: (iv_rulePredicate= rulePredicate EOF )
3566 // InternalSolverLanguage.g:1185:2: iv_rulePredicate= rulePredicate EOF
3567 {
3568 newCompositeNode(grammarAccess.getPredicateRule());
3569 pushFollow(FOLLOW_1);
3570 iv_rulePredicate=rulePredicate();
3571
3572 state._fsp--;
3573
3574 current =iv_rulePredicate;
3575 match(input,EOF,FOLLOW_2);
3576
3577 }
3578
3579 }
3580
3581 catch (RecognitionException re) {
3582 recover(input,re);
3583 appendSkippedTokens();
3584 }
3585 finally {
3586 }
3587 return current;
3588 }
3589 // $ANTLR end "entryRulePredicate"
3590
3591
3592 // $ANTLR start "rulePredicate"
3593 // InternalSolverLanguage.g:1191:1: rulePredicate returns [EObject current=null] : (this_PredicateSymbol_0= rulePredicateSymbol | this_ErrorPredicate_1= ruleErrorPredicate ) ;
3594 public final EObject rulePredicate() throws RecognitionException {
3595 EObject current = null;
3596
3597 EObject this_PredicateSymbol_0 = null;
3598
3599 EObject this_ErrorPredicate_1 = null;
3600
3601
3602
3603 enterRule();
3604
3605 try {
3606 // InternalSolverLanguage.g:1197:2: ( (this_PredicateSymbol_0= rulePredicateSymbol | this_ErrorPredicate_1= ruleErrorPredicate ) )
3607 // InternalSolverLanguage.g:1198:2: (this_PredicateSymbol_0= rulePredicateSymbol | this_ErrorPredicate_1= ruleErrorPredicate )
3608 {
3609 // InternalSolverLanguage.g:1198:2: (this_PredicateSymbol_0= rulePredicateSymbol | this_ErrorPredicate_1= ruleErrorPredicate )
3610 int alt15=2;
3611 int LA15_0 = input.LA(1);
3612
3613 if ( (LA15_0==27) ) {
3614 alt15=1;
3615 }
3616 else if ( (LA15_0==16) ) {
3617 alt15=2;
3618 }
3619 else {
3620 NoViableAltException nvae =
3621 new NoViableAltException("", 15, 0, input);
3622
3623 throw nvae;
3624 }
3625 switch (alt15) {
3626 case 1 :
3627 // InternalSolverLanguage.g:1199:3: this_PredicateSymbol_0= rulePredicateSymbol
3628 {
3629
3630 newCompositeNode(grammarAccess.getPredicateAccess().getPredicateSymbolParserRuleCall_0());
3631
3632 pushFollow(FOLLOW_2);
3633 this_PredicateSymbol_0=rulePredicateSymbol();
3634
3635 state._fsp--;
3636
3637
3638 current = this_PredicateSymbol_0;
3639 afterParserOrEnumRuleCall();
3640
3641
3642 }
3643 break;
3644 case 2 :
3645 // InternalSolverLanguage.g:1208:3: this_ErrorPredicate_1= ruleErrorPredicate
3646 {
3647
3648 newCompositeNode(grammarAccess.getPredicateAccess().getErrorPredicateParserRuleCall_1());
3649
3650 pushFollow(FOLLOW_2);
3651 this_ErrorPredicate_1=ruleErrorPredicate();
3652
3653 state._fsp--;
3654
3655
3656 current = this_ErrorPredicate_1;
3657 afterParserOrEnumRuleCall();
3658
3659
3660 }
3661 break;
3662
3663 }
3664
3665
3666 }
3667
3668
3669 leaveRule();
3670
3671 }
3672
3673 catch (RecognitionException re) {
3674 recover(input,re);
3675 appendSkippedTokens();
3676 }
3677 finally {
3678 }
3679 return current;
3680 }
3681 // $ANTLR end "rulePredicate"
3682
3683
3684 // $ANTLR start "entryRulePredicateSymbol"
3685 // InternalSolverLanguage.g:1220:1: entryRulePredicateSymbol returns [EObject current=null] : iv_rulePredicateSymbol= rulePredicateSymbol EOF ;
3686 public final EObject entryRulePredicateSymbol() throws RecognitionException {
3687 EObject current = null;
3688
3689 EObject iv_rulePredicateSymbol = null;
3690
3691
3692 try {
3693 // InternalSolverLanguage.g:1220:56: (iv_rulePredicateSymbol= rulePredicateSymbol EOF )
3694 // InternalSolverLanguage.g:1221:2: iv_rulePredicateSymbol= rulePredicateSymbol EOF
3695 {
3696 newCompositeNode(grammarAccess.getPredicateSymbolRule());
3697 pushFollow(FOLLOW_1);
3698 iv_rulePredicateSymbol=rulePredicateSymbol();
3699
3700 state._fsp--;
3701
3702 current =iv_rulePredicateSymbol;
3703 match(input,EOF,FOLLOW_2);
3704
3705 }
3706
3707 }
3708
3709 catch (RecognitionException re) {
3710 recover(input,re);
3711 appendSkippedTokens();
3712 }
3713 finally {
3714 }
3715 return current;
3716 }
3717 // $ANTLR end "entryRulePredicateSymbol"
3718
3719
3720 // $ANTLR start "rulePredicateSymbol"
3721 // InternalSolverLanguage.g:1227:1: rulePredicateSymbol returns [EObject current=null] : (otherlv_0= 'predicate' ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= '(' ( (lv_parameters_3_0= ruleParameter ) )* otherlv_4= ')' otherlv_5= ':' (otherlv_6= 'false' | ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* ) ) otherlv_10= '.' ) ;
3722 public final EObject rulePredicateSymbol() throws RecognitionException {
3723 EObject current = null;
3724
3725 Token otherlv_0=null;
3726 Token otherlv_2=null;
3727 Token otherlv_4=null;
3728 Token otherlv_5=null;
3729 Token otherlv_6=null;
3730 Token otherlv_8=null;
3731 Token otherlv_10=null;
3732 EObject lv_symbol_1_0 = null;
3733
3734 EObject lv_parameters_3_0 = null;
3735
3736 EObject lv_bodies_7_0 = null;
3737
3738 EObject lv_bodies_9_0 = null;
3739
3740
3741
3742 enterRule();
3743
3744 try {
3745 // InternalSolverLanguage.g:1233:2: ( (otherlv_0= 'predicate' ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= '(' ( (lv_parameters_3_0= ruleParameter ) )* otherlv_4= ')' otherlv_5= ':' (otherlv_6= 'false' | ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* ) ) otherlv_10= '.' ) )
3746 // InternalSolverLanguage.g:1234:2: (otherlv_0= 'predicate' ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= '(' ( (lv_parameters_3_0= ruleParameter ) )* otherlv_4= ')' otherlv_5= ':' (otherlv_6= 'false' | ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* ) ) otherlv_10= '.' )
3747 {
3748 // InternalSolverLanguage.g:1234:2: (otherlv_0= 'predicate' ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= '(' ( (lv_parameters_3_0= ruleParameter ) )* otherlv_4= ')' otherlv_5= ':' (otherlv_6= 'false' | ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* ) ) otherlv_10= '.' )
3749 // InternalSolverLanguage.g:1235:3: otherlv_0= 'predicate' ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= '(' ( (lv_parameters_3_0= ruleParameter ) )* otherlv_4= ')' otherlv_5= ':' (otherlv_6= 'false' | ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* ) ) otherlv_10= '.'
3750 {
3751 otherlv_0=(Token)match(input,27,FOLLOW_10);
3752
3753 newLeafNode(otherlv_0, grammarAccess.getPredicateSymbolAccess().getPredicateKeyword_0());
3754
3755 // InternalSolverLanguage.g:1239:3: ( (lv_symbol_1_0= ruleModelSymbol ) )
3756 // InternalSolverLanguage.g:1240:4: (lv_symbol_1_0= ruleModelSymbol )
3757 {
3758 // InternalSolverLanguage.g:1240:4: (lv_symbol_1_0= ruleModelSymbol )
3759 // InternalSolverLanguage.g:1241:5: lv_symbol_1_0= ruleModelSymbol
3760 {
3761
3762 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getSymbolModelSymbolParserRuleCall_1_0());
3763
3764 pushFollow(FOLLOW_6);
3765 lv_symbol_1_0=ruleModelSymbol();
3766
3767 state._fsp--;
3768
3769
3770 if (current==null) {
3771 current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
3772 }
3773 set(
3774 current,
3775 "symbol",
3776 lv_symbol_1_0,
3777 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
3778 afterParserOrEnumRuleCall();
3779
3780
3781 }
3782
3783
3784 }
3785
3786 otherlv_2=(Token)match(input,17,FOLLOW_12);
3787
3788 newLeafNode(otherlv_2, grammarAccess.getPredicateSymbolAccess().getLeftParenthesisKeyword_2());
3789
3790 // InternalSolverLanguage.g:1262:3: ( (lv_parameters_3_0= ruleParameter ) )*
3791 loop16:
3792 do {
3793 int alt16=2;
3794 int LA16_0 = input.LA(1);
3795
3796 if ( (LA16_0==RULE_ID) ) {
3797 alt16=1;
3798 }
3799
3800
3801 switch (alt16) {
3802 case 1 :
3803 // InternalSolverLanguage.g:1263:4: (lv_parameters_3_0= ruleParameter )
3804 {
3805 // InternalSolverLanguage.g:1263:4: (lv_parameters_3_0= ruleParameter )
3806 // InternalSolverLanguage.g:1264:5: lv_parameters_3_0= ruleParameter
3807 {
3808
3809 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getParametersParameterParserRuleCall_3_0());
3810
3811 pushFollow(FOLLOW_12);
3812 lv_parameters_3_0=ruleParameter();
3813
3814 state._fsp--;
3815
3816
3817 if (current==null) {
3818 current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
3819 }
3820 add(
3821 current,
3822 "parameters",
3823 lv_parameters_3_0,
3824 "org.eclipse.viatra.solver.language.SolverLanguage.Parameter");
3825 afterParserOrEnumRuleCall();
3826
3827
3828 }
3829
3830
3831 }
3832 break;
3833
3834 default :
3835 break loop16;
3836 }
3837 } while (true);
3838
3839 otherlv_4=(Token)match(input,18,FOLLOW_8);
3840
3841 newLeafNode(otherlv_4, grammarAccess.getPredicateSymbolAccess().getRightParenthesisKeyword_4());
3842
3843 otherlv_5=(Token)match(input,19,FOLLOW_13);
3844
3845 newLeafNode(otherlv_5, grammarAccess.getPredicateSymbolAccess().getColonKeyword_5());
3846
3847 // InternalSolverLanguage.g:1289:3: (otherlv_6= 'false' | ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* ) )
3848 int alt18=2;
3849 int LA18_0 = input.LA(1);
3850
3851 if ( (LA18_0==14) ) {
3852 alt18=1;
3853 }
3854 else if ( (LA18_0==EOF||LA18_0==RULE_ID||(LA18_0>=11 && LA18_0<=13)||(LA18_0>=28 && LA18_0<=29)) ) {
3855 alt18=2;
3856 }
3857 else {
3858 NoViableAltException nvae =
3859 new NoViableAltException("", 18, 0, input);
3860
3861 throw nvae;
3862 }
3863 switch (alt18) {
3864 case 1 :
3865 // InternalSolverLanguage.g:1290:4: otherlv_6= 'false'
3866 {
3867 otherlv_6=(Token)match(input,14,FOLLOW_5);
3868
3869 newLeafNode(otherlv_6, grammarAccess.getPredicateSymbolAccess().getFalseKeyword_6_0());
3870
3871
3872 }
3873 break;
3874 case 2 :
3875 // InternalSolverLanguage.g:1295:4: ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* )
3876 {
3877 // InternalSolverLanguage.g:1295:4: ( ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )* )
3878 // InternalSolverLanguage.g:1296:5: ( (lv_bodies_7_0= rulePatternBody ) ) (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )*
3879 {
3880 // InternalSolverLanguage.g:1296:5: ( (lv_bodies_7_0= rulePatternBody ) )
3881 // InternalSolverLanguage.g:1297:6: (lv_bodies_7_0= rulePatternBody )
3882 {
3883 // InternalSolverLanguage.g:1297:6: (lv_bodies_7_0= rulePatternBody )
3884 // InternalSolverLanguage.g:1298:7: lv_bodies_7_0= rulePatternBody
3885 {
3886
3887 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_0_0());
3888
3889 pushFollow(FOLLOW_14);
3890 lv_bodies_7_0=rulePatternBody();
3891
3892 state._fsp--;
3893
3894
3895 if (current==null) {
3896 current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
3897 }
3898 add(
3899 current,
3900 "bodies",
3901 lv_bodies_7_0,
3902 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
3903 afterParserOrEnumRuleCall();
3904
3905
3906 }
3907
3908
3909 }
3910
3911 // InternalSolverLanguage.g:1315:5: (otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) ) )*
3912 loop17:
3913 do {
3914 int alt17=2;
3915 int LA17_0 = input.LA(1);
3916
3917 if ( (LA17_0==28) ) {
3918 alt17=1;
3919 }
3920
3921
3922 switch (alt17) {
3923 case 1 :
3924 // InternalSolverLanguage.g:1316:6: otherlv_8= '|' ( (lv_bodies_9_0= rulePatternBody ) )
3925 {
3926 otherlv_8=(Token)match(input,28,FOLLOW_15);
3927
3928 newLeafNode(otherlv_8, grammarAccess.getPredicateSymbolAccess().getVerticalLineKeyword_6_1_1_0());
3929
3930 // InternalSolverLanguage.g:1320:6: ( (lv_bodies_9_0= rulePatternBody ) )
3931 // InternalSolverLanguage.g:1321:7: (lv_bodies_9_0= rulePatternBody )
3932 {
3933 // InternalSolverLanguage.g:1321:7: (lv_bodies_9_0= rulePatternBody )
3934 // InternalSolverLanguage.g:1322:8: lv_bodies_9_0= rulePatternBody
3935 {
3936
3937 newCompositeNode(grammarAccess.getPredicateSymbolAccess().getBodiesPatternBodyParserRuleCall_6_1_1_1_0());
3938
3939 pushFollow(FOLLOW_14);
3940 lv_bodies_9_0=rulePatternBody();
3941
3942 state._fsp--;
3943
3944
3945 if (current==null) {
3946 current = createModelElementForParent(grammarAccess.getPredicateSymbolRule());
3947 }
3948 add(
3949 current,
3950 "bodies",
3951 lv_bodies_9_0,
3952 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
3953 afterParserOrEnumRuleCall();
3954
3955
3956 }
3957
3958
3959 }
3960
3961
3962 }
3963 break;
3964
3965 default :
3966 break loop17;
3967 }
3968 } while (true);
3969
3970
3971 }
3972
3973
3974 }
3975 break;
3976
3977 }
3978
3979 otherlv_10=(Token)match(input,12,FOLLOW_2);
3980
3981 newLeafNode(otherlv_10, grammarAccess.getPredicateSymbolAccess().getFullStopKeyword_7());
3982
3983
3984 }
3985
3986
3987 }
3988
3989
3990 leaveRule();
3991
3992 }
3993
3994 catch (RecognitionException re) {
3995 recover(input,re);
3996 appendSkippedTokens();
3997 }
3998 finally {
3999 }
4000 return current;
4001 }
4002 // $ANTLR end "rulePredicateSymbol"
4003
4004
4005 // $ANTLR start "entryRuleErrorPredicate"
4006 // InternalSolverLanguage.g:1350:1: entryRuleErrorPredicate returns [EObject current=null] : iv_ruleErrorPredicate= ruleErrorPredicate EOF ;
4007 public final EObject entryRuleErrorPredicate() throws RecognitionException {
4008 EObject current = null;
4009
4010 EObject iv_ruleErrorPredicate = null;
4011
4012
4013 try {
4014 // InternalSolverLanguage.g:1350:55: (iv_ruleErrorPredicate= ruleErrorPredicate EOF )
4015 // InternalSolverLanguage.g:1351:2: iv_ruleErrorPredicate= ruleErrorPredicate EOF
4016 {
4017 newCompositeNode(grammarAccess.getErrorPredicateRule());
4018 pushFollow(FOLLOW_1);
4019 iv_ruleErrorPredicate=ruleErrorPredicate();
4020
4021 state._fsp--;
4022
4023 current =iv_ruleErrorPredicate;
4024 match(input,EOF,FOLLOW_2);
4025
4026 }
4027
4028 }
4029
4030 catch (RecognitionException re) {
4031 recover(input,re);
4032 appendSkippedTokens();
4033 }
4034 finally {
4035 }
4036 return current;
4037 }
4038 // $ANTLR end "entryRuleErrorPredicate"
4039
4040
4041 // $ANTLR start "ruleErrorPredicate"
4042 // InternalSolverLanguage.g:1357:1: ruleErrorPredicate returns [EObject current=null] : ( () otherlv_1= 'error' ( (lv_name_2_0= RULE_ID ) )? (otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')' ) otherlv_6= ':' (otherlv_7= 'false' | ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* ) ) otherlv_11= '.' ) ;
4043 public final EObject ruleErrorPredicate() throws RecognitionException {
4044 EObject current = null;
4045
4046 Token otherlv_1=null;
4047 Token lv_name_2_0=null;
4048 Token otherlv_3=null;
4049 Token otherlv_5=null;
4050 Token otherlv_6=null;
4051 Token otherlv_7=null;
4052 Token otherlv_9=null;
4053 Token otherlv_11=null;
4054 EObject lv_parameters_4_0 = null;
4055
4056 EObject lv_bodies_8_0 = null;
4057
4058 EObject lv_bodies_10_0 = null;
4059
4060
4061
4062 enterRule();
4063
4064 try {
4065 // InternalSolverLanguage.g:1363:2: ( ( () otherlv_1= 'error' ( (lv_name_2_0= RULE_ID ) )? (otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')' ) otherlv_6= ':' (otherlv_7= 'false' | ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* ) ) otherlv_11= '.' ) )
4066 // InternalSolverLanguage.g:1364:2: ( () otherlv_1= 'error' ( (lv_name_2_0= RULE_ID ) )? (otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')' ) otherlv_6= ':' (otherlv_7= 'false' | ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* ) ) otherlv_11= '.' )
4067 {
4068 // InternalSolverLanguage.g:1364:2: ( () otherlv_1= 'error' ( (lv_name_2_0= RULE_ID ) )? (otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')' ) otherlv_6= ':' (otherlv_7= 'false' | ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* ) ) otherlv_11= '.' )
4069 // InternalSolverLanguage.g:1365:3: () otherlv_1= 'error' ( (lv_name_2_0= RULE_ID ) )? (otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')' ) otherlv_6= ':' (otherlv_7= 'false' | ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* ) ) otherlv_11= '.'
4070 {
4071 // InternalSolverLanguage.g:1365:3: ()
4072 // InternalSolverLanguage.g:1366:4:
4073 {
4074
4075 current = forceCreateModelElement(
4076 grammarAccess.getErrorPredicateAccess().getErrorPredicateAction_0(),
4077 current);
4078
4079
4080 }
4081
4082 otherlv_1=(Token)match(input,16,FOLLOW_16);
4083
4084 newLeafNode(otherlv_1, grammarAccess.getErrorPredicateAccess().getErrorKeyword_1());
4085
4086 // InternalSolverLanguage.g:1376:3: ( (lv_name_2_0= RULE_ID ) )?
4087 int alt19=2;
4088 int LA19_0 = input.LA(1);
4089
4090 if ( (LA19_0==RULE_ID) ) {
4091 alt19=1;
4092 }
4093 switch (alt19) {
4094 case 1 :
4095 // InternalSolverLanguage.g:1377:4: (lv_name_2_0= RULE_ID )
4096 {
4097 // InternalSolverLanguage.g:1377:4: (lv_name_2_0= RULE_ID )
4098 // InternalSolverLanguage.g:1378:5: lv_name_2_0= RULE_ID
4099 {
4100 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_6);
4101
4102 newLeafNode(lv_name_2_0, grammarAccess.getErrorPredicateAccess().getNameIDTerminalRuleCall_2_0());
4103
4104
4105 if (current==null) {
4106 current = createModelElement(grammarAccess.getErrorPredicateRule());
4107 }
4108 setWithLastConsumed(
4109 current,
4110 "name",
4111 lv_name_2_0,
4112 "org.eclipse.xtext.common.Terminals.ID");
4113
4114
4115 }
4116
4117
4118 }
4119 break;
4120
4121 }
4122
4123 // InternalSolverLanguage.g:1394:3: (otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')' )
4124 // InternalSolverLanguage.g:1395:4: otherlv_3= '(' ( (lv_parameters_4_0= ruleParameter ) )* otherlv_5= ')'
4125 {
4126 otherlv_3=(Token)match(input,17,FOLLOW_12);
4127
4128 newLeafNode(otherlv_3, grammarAccess.getErrorPredicateAccess().getLeftParenthesisKeyword_3_0());
4129
4130 // InternalSolverLanguage.g:1399:4: ( (lv_parameters_4_0= ruleParameter ) )*
4131 loop20:
4132 do {
4133 int alt20=2;
4134 int LA20_0 = input.LA(1);
4135
4136 if ( (LA20_0==RULE_ID) ) {
4137 alt20=1;
4138 }
4139
4140
4141 switch (alt20) {
4142 case 1 :
4143 // InternalSolverLanguage.g:1400:5: (lv_parameters_4_0= ruleParameter )
4144 {
4145 // InternalSolverLanguage.g:1400:5: (lv_parameters_4_0= ruleParameter )
4146 // InternalSolverLanguage.g:1401:6: lv_parameters_4_0= ruleParameter
4147 {
4148
4149 newCompositeNode(grammarAccess.getErrorPredicateAccess().getParametersParameterParserRuleCall_3_1_0());
4150
4151 pushFollow(FOLLOW_12);
4152 lv_parameters_4_0=ruleParameter();
4153
4154 state._fsp--;
4155
4156
4157 if (current==null) {
4158 current = createModelElementForParent(grammarAccess.getErrorPredicateRule());
4159 }
4160 add(
4161 current,
4162 "parameters",
4163 lv_parameters_4_0,
4164 "org.eclipse.viatra.solver.language.SolverLanguage.Parameter");
4165 afterParserOrEnumRuleCall();
4166
4167
4168 }
4169
4170
4171 }
4172 break;
4173
4174 default :
4175 break loop20;
4176 }
4177 } while (true);
4178
4179 otherlv_5=(Token)match(input,18,FOLLOW_8);
4180
4181 newLeafNode(otherlv_5, grammarAccess.getErrorPredicateAccess().getRightParenthesisKeyword_3_2());
4182
4183
4184 }
4185
4186 otherlv_6=(Token)match(input,19,FOLLOW_13);
4187
4188 newLeafNode(otherlv_6, grammarAccess.getErrorPredicateAccess().getColonKeyword_4());
4189
4190 // InternalSolverLanguage.g:1427:3: (otherlv_7= 'false' | ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* ) )
4191 int alt22=2;
4192 int LA22_0 = input.LA(1);
4193
4194 if ( (LA22_0==14) ) {
4195 alt22=1;
4196 }
4197 else if ( (LA22_0==EOF||LA22_0==RULE_ID||(LA22_0>=11 && LA22_0<=13)||(LA22_0>=28 && LA22_0<=29)) ) {
4198 alt22=2;
4199 }
4200 else {
4201 NoViableAltException nvae =
4202 new NoViableAltException("", 22, 0, input);
4203
4204 throw nvae;
4205 }
4206 switch (alt22) {
4207 case 1 :
4208 // InternalSolverLanguage.g:1428:4: otherlv_7= 'false'
4209 {
4210 otherlv_7=(Token)match(input,14,FOLLOW_5);
4211
4212 newLeafNode(otherlv_7, grammarAccess.getErrorPredicateAccess().getFalseKeyword_5_0());
4213
4214
4215 }
4216 break;
4217 case 2 :
4218 // InternalSolverLanguage.g:1433:4: ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* )
4219 {
4220 // InternalSolverLanguage.g:1433:4: ( ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )* )
4221 // InternalSolverLanguage.g:1434:5: ( (lv_bodies_8_0= rulePatternBody ) ) (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )*
4222 {
4223 // InternalSolverLanguage.g:1434:5: ( (lv_bodies_8_0= rulePatternBody ) )
4224 // InternalSolverLanguage.g:1435:6: (lv_bodies_8_0= rulePatternBody )
4225 {
4226 // InternalSolverLanguage.g:1435:6: (lv_bodies_8_0= rulePatternBody )
4227 // InternalSolverLanguage.g:1436:7: lv_bodies_8_0= rulePatternBody
4228 {
4229
4230 newCompositeNode(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_0_0());
4231
4232 pushFollow(FOLLOW_14);
4233 lv_bodies_8_0=rulePatternBody();
4234
4235 state._fsp--;
4236
4237
4238 if (current==null) {
4239 current = createModelElementForParent(grammarAccess.getErrorPredicateRule());
4240 }
4241 add(
4242 current,
4243 "bodies",
4244 lv_bodies_8_0,
4245 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
4246 afterParserOrEnumRuleCall();
4247
4248
4249 }
4250
4251
4252 }
4253
4254 // InternalSolverLanguage.g:1453:5: (otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) ) )*
4255 loop21:
4256 do {
4257 int alt21=2;
4258 int LA21_0 = input.LA(1);
4259
4260 if ( (LA21_0==28) ) {
4261 alt21=1;
4262 }
4263
4264
4265 switch (alt21) {
4266 case 1 :
4267 // InternalSolverLanguage.g:1454:6: otherlv_9= '|' ( (lv_bodies_10_0= rulePatternBody ) )
4268 {
4269 otherlv_9=(Token)match(input,28,FOLLOW_15);
4270
4271 newLeafNode(otherlv_9, grammarAccess.getErrorPredicateAccess().getVerticalLineKeyword_5_1_1_0());
4272
4273 // InternalSolverLanguage.g:1458:6: ( (lv_bodies_10_0= rulePatternBody ) )
4274 // InternalSolverLanguage.g:1459:7: (lv_bodies_10_0= rulePatternBody )
4275 {
4276 // InternalSolverLanguage.g:1459:7: (lv_bodies_10_0= rulePatternBody )
4277 // InternalSolverLanguage.g:1460:8: lv_bodies_10_0= rulePatternBody
4278 {
4279
4280 newCompositeNode(grammarAccess.getErrorPredicateAccess().getBodiesPatternBodyParserRuleCall_5_1_1_1_0());
4281
4282 pushFollow(FOLLOW_14);
4283 lv_bodies_10_0=rulePatternBody();
4284
4285 state._fsp--;
4286
4287
4288 if (current==null) {
4289 current = createModelElementForParent(grammarAccess.getErrorPredicateRule());
4290 }
4291 add(
4292 current,
4293 "bodies",
4294 lv_bodies_10_0,
4295 "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
4296 afterParserOrEnumRuleCall();
4297
4298
4299 }
4300
4301
4302 }
4303
4304
4305 }
4306 break;
4307
4308 default :
4309 break loop21;
4310 }
4311 } while (true);
4312
4313
4314 }
4315
4316
4317 }
4318 break;
4319
4320 }
4321
4322 otherlv_11=(Token)match(input,12,FOLLOW_2);
4323
4324 newLeafNode(otherlv_11, grammarAccess.getErrorPredicateAccess().getFullStopKeyword_6());
4325
4326
4327 }
4328
4329
4330 }
4331
4332
4333 leaveRule();
4334
4335 }
4336
4337 catch (RecognitionException re) {
4338 recover(input,re);
4339 appendSkippedTokens();
4340 }
4341 finally {
4342 }
4343 return current;
4344 }
4345 // $ANTLR end "ruleErrorPredicate"
4346
4347
4348 // $ANTLR start "entryRuleParameter"
4349 // InternalSolverLanguage.g:1488:1: entryRuleParameter returns [EObject current=null] : iv_ruleParameter= ruleParameter EOF ;
4350 public final EObject entryRuleParameter() throws RecognitionException {
4351 EObject current = null;
4352
4353 EObject iv_ruleParameter = null;
4354
4355
4356 try {
4357 // InternalSolverLanguage.g:1488:50: (iv_ruleParameter= ruleParameter EOF )
4358 // InternalSolverLanguage.g:1489:2: iv_ruleParameter= ruleParameter EOF
4359 {
4360 newCompositeNode(grammarAccess.getParameterRule());
4361 pushFollow(FOLLOW_1);
4362 iv_ruleParameter=ruleParameter();
4363
4364 state._fsp--;
4365
4366 current =iv_ruleParameter;
4367 match(input,EOF,FOLLOW_2);
4368
4369 }
4370
4371 }
4372
4373 catch (RecognitionException re) {
4374 recover(input,re);
4375 appendSkippedTokens();
4376 }
4377 finally {
4378 }
4379 return current;
4380 }
4381 // $ANTLR end "entryRuleParameter"
4382
4383
4384 // $ANTLR start "ruleParameter"
4385 // InternalSolverLanguage.g:1495:1: ruleParameter returns [EObject current=null] : ( ( (lv_variable_0_0= ruleVariable ) ) (otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) ) )? ) ;
4386 public final EObject ruleParameter() throws RecognitionException {
4387 EObject current = null;
4388
4389 Token otherlv_1=null;
4390 EObject lv_variable_0_0 = null;
4391
4392 EObject lv_type_2_0 = null;
4393
4394
4395
4396 enterRule();
4397
4398 try {
4399 // InternalSolverLanguage.g:1501:2: ( ( ( (lv_variable_0_0= ruleVariable ) ) (otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) ) )? ) )
4400 // InternalSolverLanguage.g:1502:2: ( ( (lv_variable_0_0= ruleVariable ) ) (otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) ) )? )
4401 {
4402 // InternalSolverLanguage.g:1502:2: ( ( (lv_variable_0_0= ruleVariable ) ) (otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) ) )? )
4403 // InternalSolverLanguage.g:1503:3: ( (lv_variable_0_0= ruleVariable ) ) (otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) ) )?
4404 {
4405 // InternalSolverLanguage.g:1503:3: ( (lv_variable_0_0= ruleVariable ) )
4406 // InternalSolverLanguage.g:1504:4: (lv_variable_0_0= ruleVariable )
4407 {
4408 // InternalSolverLanguage.g:1504:4: (lv_variable_0_0= ruleVariable )
4409 // InternalSolverLanguage.g:1505:5: lv_variable_0_0= ruleVariable
4410 {
4411
4412 newCompositeNode(grammarAccess.getParameterAccess().getVariableVariableParserRuleCall_0_0());
4413
4414 pushFollow(FOLLOW_17);
4415 lv_variable_0_0=ruleVariable();
4416
4417 state._fsp--;
4418
4419
4420 if (current==null) {
4421 current = createModelElementForParent(grammarAccess.getParameterRule());
4422 }
4423 set(
4424 current,
4425 "variable",
4426 lv_variable_0_0,
4427 "org.eclipse.viatra.solver.language.SolverLanguage.Variable");
4428 afterParserOrEnumRuleCall();
4429
4430
4431 }
4432
4433
4434 }
4435
4436 // InternalSolverLanguage.g:1522:3: (otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) ) )?
4437 int alt23=2;
4438 int LA23_0 = input.LA(1);
4439
4440 if ( (LA23_0==19) ) {
4441 alt23=1;
4442 }
4443 switch (alt23) {
4444 case 1 :
4445 // InternalSolverLanguage.g:1523:4: otherlv_1= ':' ( (lv_type_2_0= ruleSymbol ) )
4446 {
4447 otherlv_1=(Token)match(input,19,FOLLOW_18);
4448
4449 newLeafNode(otherlv_1, grammarAccess.getParameterAccess().getColonKeyword_1_0());
4450
4451 // InternalSolverLanguage.g:1527:4: ( (lv_type_2_0= ruleSymbol ) )
4452 // InternalSolverLanguage.g:1528:5: (lv_type_2_0= ruleSymbol )
4453 {
4454 // InternalSolverLanguage.g:1528:5: (lv_type_2_0= ruleSymbol )
4455 // InternalSolverLanguage.g:1529:6: lv_type_2_0= ruleSymbol
4456 {
4457
4458 newCompositeNode(grammarAccess.getParameterAccess().getTypeSymbolParserRuleCall_1_1_0());
4459
4460 pushFollow(FOLLOW_2);
4461 lv_type_2_0=ruleSymbol();
4462
4463 state._fsp--;
4464
4465
4466 if (current==null) {
4467 current = createModelElementForParent(grammarAccess.getParameterRule());
4468 }
4469 set(
4470 current,
4471 "type",
4472 lv_type_2_0,
4473 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
4474 afterParserOrEnumRuleCall();
4475
4476
4477 }
4478
4479
4480 }
4481
4482
4483 }
4484 break;
4485
4486 }
4487
4488
4489 }
4490
4491
4492 }
4493
4494
4495 leaveRule();
4496
4497 }
4498
4499 catch (RecognitionException re) {
4500 recover(input,re);
4501 appendSkippedTokens();
4502 }
4503 finally {
4504 }
4505 return current;
4506 }
4507 // $ANTLR end "ruleParameter"
4508
4509
4510 // $ANTLR start "entryRulePatternBody"
4511 // InternalSolverLanguage.g:1551:1: entryRulePatternBody returns [EObject current=null] : iv_rulePatternBody= rulePatternBody EOF ;
4512 public final EObject entryRulePatternBody() throws RecognitionException {
4513 EObject current = null;
4514
4515 EObject iv_rulePatternBody = null;
4516
4517
4518 try {
4519 // InternalSolverLanguage.g:1551:52: (iv_rulePatternBody= rulePatternBody EOF )
4520 // InternalSolverLanguage.g:1552:2: iv_rulePatternBody= rulePatternBody EOF
4521 {
4522 newCompositeNode(grammarAccess.getPatternBodyRule());
4523 pushFollow(FOLLOW_1);
4524 iv_rulePatternBody=rulePatternBody();
4525
4526 state._fsp--;
4527
4528 current =iv_rulePatternBody;
4529 match(input,EOF,FOLLOW_2);
4530
4531 }
4532
4533 }
4534
4535 catch (RecognitionException re) {
4536 recover(input,re);
4537 appendSkippedTokens();
4538 }
4539 finally {
4540 }
4541 return current;
4542 }
4543 // $ANTLR end "entryRulePatternBody"
4544
4545
4546 // $ANTLR start "rulePatternBody"
4547 // InternalSolverLanguage.g:1558:1: rulePatternBody returns [EObject current=null] : ( () (otherlv_1= 'true' | ( (lv_constraints_2_0= ruleConstraint ) )* ) ) ;
4548 public final EObject rulePatternBody() throws RecognitionException {
4549 EObject current = null;
4550
4551 Token otherlv_1=null;
4552 EObject lv_constraints_2_0 = null;
4553
4554
4555
4556 enterRule();
4557
4558 try {
4559 // InternalSolverLanguage.g:1564:2: ( ( () (otherlv_1= 'true' | ( (lv_constraints_2_0= ruleConstraint ) )* ) ) )
4560 // InternalSolverLanguage.g:1565:2: ( () (otherlv_1= 'true' | ( (lv_constraints_2_0= ruleConstraint ) )* ) )
4561 {
4562 // InternalSolverLanguage.g:1565:2: ( () (otherlv_1= 'true' | ( (lv_constraints_2_0= ruleConstraint ) )* ) )
4563 // InternalSolverLanguage.g:1566:3: () (otherlv_1= 'true' | ( (lv_constraints_2_0= ruleConstraint ) )* )
4564 {
4565 // InternalSolverLanguage.g:1566:3: ()
4566 // InternalSolverLanguage.g:1567:4:
4567 {
4568
4569 current = forceCreateModelElement(
4570 grammarAccess.getPatternBodyAccess().getPatternBodyAction_0(),
4571 current);
4572
4573
4574 }
4575
4576 // InternalSolverLanguage.g:1573:3: (otherlv_1= 'true' | ( (lv_constraints_2_0= ruleConstraint ) )* )
4577 int alt25=2;
4578 int LA25_0 = input.LA(1);
4579
4580 if ( (LA25_0==13) ) {
4581 alt25=1;
4582 }
4583 else if ( (LA25_0==EOF||LA25_0==RULE_ID||(LA25_0>=11 && LA25_0<=12)||(LA25_0>=28 && LA25_0<=29)) ) {
4584 alt25=2;
4585 }
4586 else {
4587 NoViableAltException nvae =
4588 new NoViableAltException("", 25, 0, input);
4589
4590 throw nvae;
4591 }
4592 switch (alt25) {
4593 case 1 :
4594 // InternalSolverLanguage.g:1574:4: otherlv_1= 'true'
4595 {
4596 otherlv_1=(Token)match(input,13,FOLLOW_2);
4597
4598 newLeafNode(otherlv_1, grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0());
4599
4600
4601 }
4602 break;
4603 case 2 :
4604 // InternalSolverLanguage.g:1579:4: ( (lv_constraints_2_0= ruleConstraint ) )*
4605 {
4606 // InternalSolverLanguage.g:1579:4: ( (lv_constraints_2_0= ruleConstraint ) )*
4607 loop24:
4608 do {
4609 int alt24=2;
4610 int LA24_0 = input.LA(1);
4611
4612 if ( (LA24_0==RULE_ID||LA24_0==11||LA24_0==29) ) {
4613 alt24=1;
4614 }
4615
4616
4617 switch (alt24) {
4618 case 1 :
4619 // InternalSolverLanguage.g:1580:5: (lv_constraints_2_0= ruleConstraint )
4620 {
4621 // InternalSolverLanguage.g:1580:5: (lv_constraints_2_0= ruleConstraint )
4622 // InternalSolverLanguage.g:1581:6: lv_constraints_2_0= ruleConstraint
4623 {
4624
4625 newCompositeNode(grammarAccess.getPatternBodyAccess().getConstraintsConstraintParserRuleCall_1_1_0());
4626
4627 pushFollow(FOLLOW_19);
4628 lv_constraints_2_0=ruleConstraint();
4629
4630 state._fsp--;
4631
4632
4633 if (current==null) {
4634 current = createModelElementForParent(grammarAccess.getPatternBodyRule());
4635 }
4636 add(
4637 current,
4638 "constraints",
4639 lv_constraints_2_0,
4640 "org.eclipse.viatra.solver.language.SolverLanguage.Constraint");
4641 afterParserOrEnumRuleCall();
4642
4643
4644 }
4645
4646
4647 }
4648 break;
4649
4650 default :
4651 break loop24;
4652 }
4653 } while (true);
4654
4655
4656 }
4657 break;
4658
4659 }
4660
4661
4662 }
4663
4664
4665 }
4666
4667
4668 leaveRule();
4669
4670 }
4671
4672 catch (RecognitionException re) {
4673 recover(input,re);
4674 appendSkippedTokens();
4675 }
4676 finally {
4677 }
4678 return current;
4679 }
4680 // $ANTLR end "rulePatternBody"
4681
4682
4683 // $ANTLR start "entryRulePolarity"
4684 // InternalSolverLanguage.g:1603:1: entryRulePolarity returns [EObject current=null] : iv_rulePolarity= rulePolarity EOF ;
4685 public final EObject entryRulePolarity() throws RecognitionException {
4686 EObject current = null;
4687
4688 EObject iv_rulePolarity = null;
4689
4690
4691 try {
4692 // InternalSolverLanguage.g:1603:49: (iv_rulePolarity= rulePolarity EOF )
4693 // InternalSolverLanguage.g:1604:2: iv_rulePolarity= rulePolarity EOF
4694 {
4695 newCompositeNode(grammarAccess.getPolarityRule());
4696 pushFollow(FOLLOW_1);
4697 iv_rulePolarity=rulePolarity();
4698
4699 state._fsp--;
4700
4701 current =iv_rulePolarity;
4702 match(input,EOF,FOLLOW_2);
4703
4704 }
4705
4706 }
4707
4708 catch (RecognitionException re) {
4709 recover(input,re);
4710 appendSkippedTokens();
4711 }
4712 finally {
4713 }
4714 return current;
4715 }
4716 // $ANTLR end "entryRulePolarity"
4717
4718
4719 // $ANTLR start "rulePolarity"
4720 // InternalSolverLanguage.g:1610:1: rulePolarity returns [EObject current=null] : ( ( () otherlv_1= '+' ) | ( () otherlv_3= '-' ) ) ;
4721 public final EObject rulePolarity() throws RecognitionException {
4722 EObject current = null;
4723
4724 Token otherlv_1=null;
4725 Token otherlv_3=null;
4726
4727
4728 enterRule();
4729
4730 try {
4731 // InternalSolverLanguage.g:1616:2: ( ( ( () otherlv_1= '+' ) | ( () otherlv_3= '-' ) ) )
4732 // InternalSolverLanguage.g:1617:2: ( ( () otherlv_1= '+' ) | ( () otherlv_3= '-' ) )
4733 {
4734 // InternalSolverLanguage.g:1617:2: ( ( () otherlv_1= '+' ) | ( () otherlv_3= '-' ) )
4735 int alt26=2;
4736 int LA26_0 = input.LA(1);
4737
4738 if ( (LA26_0==29) ) {
4739 alt26=1;
4740 }
4741 else if ( (LA26_0==11) ) {
4742 alt26=2;
4743 }
4744 else {
4745 NoViableAltException nvae =
4746 new NoViableAltException("", 26, 0, input);
4747
4748 throw nvae;
4749 }
4750 switch (alt26) {
4751 case 1 :
4752 // InternalSolverLanguage.g:1618:3: ( () otherlv_1= '+' )
4753 {
4754 // InternalSolverLanguage.g:1618:3: ( () otherlv_1= '+' )
4755 // InternalSolverLanguage.g:1619:4: () otherlv_1= '+'
4756 {
4757 // InternalSolverLanguage.g:1619:4: ()
4758 // InternalSolverLanguage.g:1620:5:
4759 {
4760
4761 current = forceCreateModelElement(
4762 grammarAccess.getPolarityAccess().getPositiveAction_0_0(),
4763 current);
4764
4765
4766 }
4767
4768 otherlv_1=(Token)match(input,29,FOLLOW_2);
4769
4770 newLeafNode(otherlv_1, grammarAccess.getPolarityAccess().getPlusSignKeyword_0_1());
4771
4772
4773 }
4774
4775
4776 }
4777 break;
4778 case 2 :
4779 // InternalSolverLanguage.g:1632:3: ( () otherlv_3= '-' )
4780 {
4781 // InternalSolverLanguage.g:1632:3: ( () otherlv_3= '-' )
4782 // InternalSolverLanguage.g:1633:4: () otherlv_3= '-'
4783 {
4784 // InternalSolverLanguage.g:1633:4: ()
4785 // InternalSolverLanguage.g:1634:5:
4786 {
4787
4788 current = forceCreateModelElement(
4789 grammarAccess.getPolarityAccess().getNegativeAction_1_0(),
4790 current);
4791
4792
4793 }
4794
4795 otherlv_3=(Token)match(input,11,FOLLOW_2);
4796
4797 newLeafNode(otherlv_3, grammarAccess.getPolarityAccess().getHyphenMinusKeyword_1_1());
4798
4799
4800 }
4801
4802
4803 }
4804 break;
4805
4806 }
4807
4808
4809 }
4810
4811
4812 leaveRule();
4813
4814 }
4815
4816 catch (RecognitionException re) {
4817 recover(input,re);
4818 appendSkippedTokens();
4819 }
4820 finally {
4821 }
4822 return current;
4823 }
4824 // $ANTLR end "rulePolarity"
4825
4826
4827 // $ANTLR start "entryRuleConstraint"
4828 // InternalSolverLanguage.g:1649:1: entryRuleConstraint returns [EObject current=null] : iv_ruleConstraint= ruleConstraint EOF ;
4829 public final EObject entryRuleConstraint() throws RecognitionException {
4830 EObject current = null;
4831
4832 EObject iv_ruleConstraint = null;
4833
4834
4835 try {
4836 // InternalSolverLanguage.g:1649:51: (iv_ruleConstraint= ruleConstraint EOF )
4837 // InternalSolverLanguage.g:1650:2: iv_ruleConstraint= ruleConstraint EOF
4838 {
4839 newCompositeNode(grammarAccess.getConstraintRule());
4840 pushFollow(FOLLOW_1);
4841 iv_ruleConstraint=ruleConstraint();
4842
4843 state._fsp--;
4844
4845 current =iv_ruleConstraint;
4846 match(input,EOF,FOLLOW_2);
4847
4848 }
4849
4850 }
4851
4852 catch (RecognitionException re) {
4853 recover(input,re);
4854 appendSkippedTokens();
4855 }
4856 finally {
4857 }
4858 return current;
4859 }
4860 // $ANTLR end "entryRuleConstraint"
4861
4862
4863 // $ANTLR start "ruleConstraint"
4864 // InternalSolverLanguage.g:1656:1: ruleConstraint returns [EObject current=null] : ( ( (lv_polarity_0_0= rulePolarity ) )? ( (lv_symbol_1_0= ruleModelSymbol ) ) ( (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' ) | ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' ) ) ) ;
4865 public final EObject ruleConstraint() throws RecognitionException {
4866 EObject current = null;
4867
4868 Token otherlv_2=null;
4869 Token otherlv_4=null;
4870 Token otherlv_6=null;
4871 Token otherlv_9=null;
4872 EObject lv_polarity_0_0 = null;
4873
4874 EObject lv_symbol_1_0 = null;
4875
4876 EObject lv_params_3_0 = null;
4877
4878 EObject lv_closureType_5_0 = null;
4879
4880 EObject lv_params_7_0 = null;
4881
4882 EObject lv_params_8_0 = null;
4883
4884
4885
4886 enterRule();
4887
4888 try {
4889 // InternalSolverLanguage.g:1662:2: ( ( ( (lv_polarity_0_0= rulePolarity ) )? ( (lv_symbol_1_0= ruleModelSymbol ) ) ( (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' ) | ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' ) ) ) )
4890 // InternalSolverLanguage.g:1663:2: ( ( (lv_polarity_0_0= rulePolarity ) )? ( (lv_symbol_1_0= ruleModelSymbol ) ) ( (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' ) | ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' ) ) )
4891 {
4892 // InternalSolverLanguage.g:1663:2: ( ( (lv_polarity_0_0= rulePolarity ) )? ( (lv_symbol_1_0= ruleModelSymbol ) ) ( (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' ) | ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' ) ) )
4893 // InternalSolverLanguage.g:1664:3: ( (lv_polarity_0_0= rulePolarity ) )? ( (lv_symbol_1_0= ruleModelSymbol ) ) ( (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' ) | ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' ) )
4894 {
4895 // InternalSolverLanguage.g:1664:3: ( (lv_polarity_0_0= rulePolarity ) )?
4896 int alt27=2;
4897 int LA27_0 = input.LA(1);
4898
4899 if ( (LA27_0==11||LA27_0==29) ) {
4900 alt27=1;
4901 }
4902 switch (alt27) {
4903 case 1 :
4904 // InternalSolverLanguage.g:1665:4: (lv_polarity_0_0= rulePolarity )
4905 {
4906 // InternalSolverLanguage.g:1665:4: (lv_polarity_0_0= rulePolarity )
4907 // InternalSolverLanguage.g:1666:5: lv_polarity_0_0= rulePolarity
4908 {
4909
4910 newCompositeNode(grammarAccess.getConstraintAccess().getPolarityPolarityParserRuleCall_0_0());
4911
4912 pushFollow(FOLLOW_10);
4913 lv_polarity_0_0=rulePolarity();
4914
4915 state._fsp--;
4916
4917
4918 if (current==null) {
4919 current = createModelElementForParent(grammarAccess.getConstraintRule());
4920 }
4921 set(
4922 current,
4923 "polarity",
4924 lv_polarity_0_0,
4925 "org.eclipse.viatra.solver.language.SolverLanguage.Polarity");
4926 afterParserOrEnumRuleCall();
4927
4928
4929 }
4930
4931
4932 }
4933 break;
4934
4935 }
4936
4937 // InternalSolverLanguage.g:1683:3: ( (lv_symbol_1_0= ruleModelSymbol ) )
4938 // InternalSolverLanguage.g:1684:4: (lv_symbol_1_0= ruleModelSymbol )
4939 {
4940 // InternalSolverLanguage.g:1684:4: (lv_symbol_1_0= ruleModelSymbol )
4941 // InternalSolverLanguage.g:1685:5: lv_symbol_1_0= ruleModelSymbol
4942 {
4943
4944 newCompositeNode(grammarAccess.getConstraintAccess().getSymbolModelSymbolParserRuleCall_1_0());
4945
4946 pushFollow(FOLLOW_20);
4947 lv_symbol_1_0=ruleModelSymbol();
4948
4949 state._fsp--;
4950
4951
4952 if (current==null) {
4953 current = createModelElementForParent(grammarAccess.getConstraintRule());
4954 }
4955 set(
4956 current,
4957 "symbol",
4958 lv_symbol_1_0,
4959 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
4960 afterParserOrEnumRuleCall();
4961
4962
4963 }
4964
4965
4966 }
4967
4968 // InternalSolverLanguage.g:1702:3: ( (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' ) | ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' ) )
4969 int alt29=2;
4970 int LA29_0 = input.LA(1);
4971
4972 if ( (LA29_0==17) ) {
4973 alt29=1;
4974 }
4975 else if ( ((LA29_0>=29 && LA29_0<=30)) ) {
4976 alt29=2;
4977 }
4978 else {
4979 NoViableAltException nvae =
4980 new NoViableAltException("", 29, 0, input);
4981
4982 throw nvae;
4983 }
4984 switch (alt29) {
4985 case 1 :
4986 // InternalSolverLanguage.g:1703:4: (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' )
4987 {
4988 // InternalSolverLanguage.g:1703:4: (otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')' )
4989 // InternalSolverLanguage.g:1704:5: otherlv_2= '(' ( (lv_params_3_0= ruleLiteral ) )* otherlv_4= ')'
4990 {
4991 otherlv_2=(Token)match(input,17,FOLLOW_21);
4992
4993 newLeafNode(otherlv_2, grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_0_0());
4994
4995 // InternalSolverLanguage.g:1708:5: ( (lv_params_3_0= ruleLiteral ) )*
4996 loop28:
4997 do {
4998 int alt28=2;
4999 int LA28_0 = input.LA(1);
5000
5001 if ( ((LA28_0>=RULE_INT && LA28_0<=RULE_STRING)||LA28_0==11||(LA28_0>=13 && LA28_0<=14)) ) {
5002 alt28=1;
5003 }
5004
5005
5006 switch (alt28) {
5007 case 1 :
5008 // InternalSolverLanguage.g:1709:6: (lv_params_3_0= ruleLiteral )
5009 {
5010 // InternalSolverLanguage.g:1709:6: (lv_params_3_0= ruleLiteral )
5011 // InternalSolverLanguage.g:1710:7: lv_params_3_0= ruleLiteral
5012 {
5013
5014 newCompositeNode(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_0_1_0());
5015
5016 pushFollow(FOLLOW_21);
5017 lv_params_3_0=ruleLiteral();
5018
5019 state._fsp--;
5020
5021
5022 if (current==null) {
5023 current = createModelElementForParent(grammarAccess.getConstraintRule());
5024 }
5025 add(
5026 current,
5027 "params",
5028 lv_params_3_0,
5029 "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
5030 afterParserOrEnumRuleCall();
5031
5032
5033 }
5034
5035
5036 }
5037 break;
5038
5039 default :
5040 break loop28;
5041 }
5042 } while (true);
5043
5044 otherlv_4=(Token)match(input,18,FOLLOW_2);
5045
5046 newLeafNode(otherlv_4, grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_0_2());
5047
5048
5049 }
5050
5051
5052 }
5053 break;
5054 case 2 :
5055 // InternalSolverLanguage.g:1733:4: ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' )
5056 {
5057 // InternalSolverLanguage.g:1733:4: ( ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')' )
5058 // InternalSolverLanguage.g:1734:5: ( (lv_closureType_5_0= ruleClosureType ) ) otherlv_6= '(' ( (lv_params_7_0= ruleLiteral ) ) ( (lv_params_8_0= ruleLiteral ) ) otherlv_9= ')'
5059 {
5060 // InternalSolverLanguage.g:1734:5: ( (lv_closureType_5_0= ruleClosureType ) )
5061 // InternalSolverLanguage.g:1735:6: (lv_closureType_5_0= ruleClosureType )
5062 {
5063 // InternalSolverLanguage.g:1735:6: (lv_closureType_5_0= ruleClosureType )
5064 // InternalSolverLanguage.g:1736:7: lv_closureType_5_0= ruleClosureType
5065 {
5066
5067 newCompositeNode(grammarAccess.getConstraintAccess().getClosureTypeClosureTypeParserRuleCall_2_1_0_0());
5068
5069 pushFollow(FOLLOW_6);
5070 lv_closureType_5_0=ruleClosureType();
5071
5072 state._fsp--;
5073
5074
5075 if (current==null) {
5076 current = createModelElementForParent(grammarAccess.getConstraintRule());
5077 }
5078 set(
5079 current,
5080 "closureType",
5081 lv_closureType_5_0,
5082 "org.eclipse.viatra.solver.language.SolverLanguage.ClosureType");
5083 afterParserOrEnumRuleCall();
5084
5085
5086 }
5087
5088
5089 }
5090
5091 otherlv_6=(Token)match(input,17,FOLLOW_22);
5092
5093 newLeafNode(otherlv_6, grammarAccess.getConstraintAccess().getLeftParenthesisKeyword_2_1_1());
5094
5095 // InternalSolverLanguage.g:1757:5: ( (lv_params_7_0= ruleLiteral ) )
5096 // InternalSolverLanguage.g:1758:6: (lv_params_7_0= ruleLiteral )
5097 {
5098 // InternalSolverLanguage.g:1758:6: (lv_params_7_0= ruleLiteral )
5099 // InternalSolverLanguage.g:1759:7: lv_params_7_0= ruleLiteral
5100 {
5101
5102 newCompositeNode(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_2_0());
5103
5104 pushFollow(FOLLOW_22);
5105 lv_params_7_0=ruleLiteral();
5106
5107 state._fsp--;
5108
5109
5110 if (current==null) {
5111 current = createModelElementForParent(grammarAccess.getConstraintRule());
5112 }
5113 add(
5114 current,
5115 "params",
5116 lv_params_7_0,
5117 "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
5118 afterParserOrEnumRuleCall();
5119
5120
5121 }
5122
5123
5124 }
5125
5126 // InternalSolverLanguage.g:1776:5: ( (lv_params_8_0= ruleLiteral ) )
5127 // InternalSolverLanguage.g:1777:6: (lv_params_8_0= ruleLiteral )
5128 {
5129 // InternalSolverLanguage.g:1777:6: (lv_params_8_0= ruleLiteral )
5130 // InternalSolverLanguage.g:1778:7: lv_params_8_0= ruleLiteral
5131 {
5132
5133 newCompositeNode(grammarAccess.getConstraintAccess().getParamsLiteralParserRuleCall_2_1_3_0());
5134
5135 pushFollow(FOLLOW_23);
5136 lv_params_8_0=ruleLiteral();
5137
5138 state._fsp--;
5139
5140
5141 if (current==null) {
5142 current = createModelElementForParent(grammarAccess.getConstraintRule());
5143 }
5144 add(
5145 current,
5146 "params",
5147 lv_params_8_0,
5148 "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
5149 afterParserOrEnumRuleCall();
5150
5151
5152 }
5153
5154
5155 }
5156
5157 otherlv_9=(Token)match(input,18,FOLLOW_2);
5158
5159 newLeafNode(otherlv_9, grammarAccess.getConstraintAccess().getRightParenthesisKeyword_2_1_4());
5160
5161
5162 }
5163
5164
5165 }
5166 break;
5167
5168 }
5169
5170
5171 }
5172
5173
5174 }
5175
5176
5177 leaveRule();
5178
5179 }
5180
5181 catch (RecognitionException re) {
5182 recover(input,re);
5183 appendSkippedTokens();
5184 }
5185 finally {
5186 }
5187 return current;
5188 }
5189 // $ANTLR end "ruleConstraint"
5190
5191
5192 // $ANTLR start "entryRuleClosureType"
5193 // InternalSolverLanguage.g:1805:1: entryRuleClosureType returns [EObject current=null] : iv_ruleClosureType= ruleClosureType EOF ;
5194 public final EObject entryRuleClosureType() throws RecognitionException {
5195 EObject current = null;
5196
5197 EObject iv_ruleClosureType = null;
5198
5199
5200 try {
5201 // InternalSolverLanguage.g:1805:52: (iv_ruleClosureType= ruleClosureType EOF )
5202 // InternalSolverLanguage.g:1806:2: iv_ruleClosureType= ruleClosureType EOF
5203 {
5204 newCompositeNode(grammarAccess.getClosureTypeRule());
5205 pushFollow(FOLLOW_1);
5206 iv_ruleClosureType=ruleClosureType();
5207
5208 state._fsp--;
5209
5210 current =iv_ruleClosureType;
5211 match(input,EOF,FOLLOW_2);
5212
5213 }
5214
5215 }
5216
5217 catch (RecognitionException re) {
5218 recover(input,re);
5219 appendSkippedTokens();
5220 }
5221 finally {
5222 }
5223 return current;
5224 }
5225 // $ANTLR end "entryRuleClosureType"
5226
5227
5228 // $ANTLR start "ruleClosureType"
5229 // InternalSolverLanguage.g:1812:1: ruleClosureType returns [EObject current=null] : ( ( () otherlv_1= '*' ) | ( () otherlv_3= '+' ) ) ;
5230 public final EObject ruleClosureType() throws RecognitionException {
5231 EObject current = null;
5232
5233 Token otherlv_1=null;
5234 Token otherlv_3=null;
5235
5236
5237 enterRule();
5238
5239 try {
5240 // InternalSolverLanguage.g:1818:2: ( ( ( () otherlv_1= '*' ) | ( () otherlv_3= '+' ) ) )
5241 // InternalSolverLanguage.g:1819:2: ( ( () otherlv_1= '*' ) | ( () otherlv_3= '+' ) )
5242 {
5243 // InternalSolverLanguage.g:1819:2: ( ( () otherlv_1= '*' ) | ( () otherlv_3= '+' ) )
5244 int alt30=2;
5245 int LA30_0 = input.LA(1);
5246
5247 if ( (LA30_0==30) ) {
5248 alt30=1;
5249 }
5250 else if ( (LA30_0==29) ) {
5251 alt30=2;
5252 }
5253 else {
5254 NoViableAltException nvae =
5255 new NoViableAltException("", 30, 0, input);
5256
5257 throw nvae;
5258 }
5259 switch (alt30) {
5260 case 1 :
5261 // InternalSolverLanguage.g:1820:3: ( () otherlv_1= '*' )
5262 {
5263 // InternalSolverLanguage.g:1820:3: ( () otherlv_1= '*' )
5264 // InternalSolverLanguage.g:1821:4: () otherlv_1= '*'
5265 {
5266 // InternalSolverLanguage.g:1821:4: ()
5267 // InternalSolverLanguage.g:1822:5:
5268 {
5269
5270 current = forceCreateModelElement(
5271 grammarAccess.getClosureTypeAccess().getReflexiveClosureAction_0_0(),
5272 current);
5273
5274
5275 }
5276
5277 otherlv_1=(Token)match(input,30,FOLLOW_2);
5278
5279 newLeafNode(otherlv_1, grammarAccess.getClosureTypeAccess().getAsteriskKeyword_0_1());
5280
5281
5282 }
5283
5284
5285 }
5286 break;
5287 case 2 :
5288 // InternalSolverLanguage.g:1834:3: ( () otherlv_3= '+' )
5289 {
5290 // InternalSolverLanguage.g:1834:3: ( () otherlv_3= '+' )
5291 // InternalSolverLanguage.g:1835:4: () otherlv_3= '+'
5292 {
5293 // InternalSolverLanguage.g:1835:4: ()
5294 // InternalSolverLanguage.g:1836:5:
5295 {
5296
5297 current = forceCreateModelElement(
5298 grammarAccess.getClosureTypeAccess().getIrreflexiveClosureAction_1_0(),
5299 current);
5300
5301
5302 }
5303
5304 otherlv_3=(Token)match(input,29,FOLLOW_2);
5305
5306 newLeafNode(otherlv_3, grammarAccess.getClosureTypeAccess().getPlusSignKeyword_1_1());
5307
5308
5309 }
5310
5311
5312 }
5313 break;
5314
5315 }
5316
5317
5318 }
5319
5320
5321 leaveRule();
5322
5323 }
5324
5325 catch (RecognitionException re) {
5326 recover(input,re);
5327 appendSkippedTokens();
5328 }
5329 finally {
5330 }
5331 return current;
5332 }
5333 // $ANTLR end "ruleClosureType"
5334
5335
5336 // $ANTLR start "entryRuleLiteral"
5337 // InternalSolverLanguage.g:1851:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ;
5338 public final EObject entryRuleLiteral() throws RecognitionException {
5339 EObject current = null;
5340
5341 EObject iv_ruleLiteral = null;
5342
5343
5344 try {
5345 // InternalSolverLanguage.g:1851:48: (iv_ruleLiteral= ruleLiteral EOF )
5346 // InternalSolverLanguage.g:1852:2: iv_ruleLiteral= ruleLiteral EOF
5347 {
5348 newCompositeNode(grammarAccess.getLiteralRule());
5349 pushFollow(FOLLOW_1);
5350 iv_ruleLiteral=ruleLiteral();
5351
5352 state._fsp--;
5353
5354 current =iv_ruleLiteral;
5355 match(input,EOF,FOLLOW_2);
5356
5357 }
5358
5359 }
5360
5361 catch (RecognitionException re) {
5362 recover(input,re);
5363 appendSkippedTokens();
5364 }
5365 finally {
5366 }
5367 return current;
5368 }
5369 // $ANTLR end "entryRuleLiteral"
5370
5371
5372 // $ANTLR start "ruleLiteral"
5373 // InternalSolverLanguage.g:1858:1: ruleLiteral returns [EObject current=null] : (this_Variable_0= ruleVariable | this_DataObject_1= ruleDataObject ) ;
5374 public final EObject ruleLiteral() throws RecognitionException {
5375 EObject current = null;
5376
5377 EObject this_Variable_0 = null;
5378
5379 EObject this_DataObject_1 = null;
5380
5381
5382
5383 enterRule();
5384
5385 try {
5386 // InternalSolverLanguage.g:1864:2: ( (this_Variable_0= ruleVariable | this_DataObject_1= ruleDataObject ) )
5387 // InternalSolverLanguage.g:1865:2: (this_Variable_0= ruleVariable | this_DataObject_1= ruleDataObject )
5388 {
5389 // InternalSolverLanguage.g:1865:2: (this_Variable_0= ruleVariable | this_DataObject_1= ruleDataObject )
5390 int alt31=2;
5391 int LA31_0 = input.LA(1);
5392
5393 if ( (LA31_0==RULE_ID) ) {
5394 alt31=1;
5395 }
5396 else if ( (LA31_0==RULE_INT||LA31_0==RULE_STRING||LA31_0==11||(LA31_0>=13 && LA31_0<=14)) ) {
5397 alt31=2;
5398 }
5399 else {
5400 NoViableAltException nvae =
5401 new NoViableAltException("", 31, 0, input);
5402
5403 throw nvae;
5404 }
5405 switch (alt31) {
5406 case 1 :
5407 // InternalSolverLanguage.g:1866:3: this_Variable_0= ruleVariable
5408 {
5409
5410 newCompositeNode(grammarAccess.getLiteralAccess().getVariableParserRuleCall_0());
5411
5412 pushFollow(FOLLOW_2);
5413 this_Variable_0=ruleVariable();
5414
5415 state._fsp--;
5416
5417
5418 current = this_Variable_0;
5419 afterParserOrEnumRuleCall();
5420
5421
5422 }
5423 break;
5424 case 2 :
5425 // InternalSolverLanguage.g:1875:3: this_DataObject_1= ruleDataObject
5426 {
5427
5428 newCompositeNode(grammarAccess.getLiteralAccess().getDataObjectParserRuleCall_1());
5429
5430 pushFollow(FOLLOW_2);
5431 this_DataObject_1=ruleDataObject();
5432
5433 state._fsp--;
5434
5435
5436 current = this_DataObject_1;
5437 afterParserOrEnumRuleCall();
5438
5439
5440 }
5441 break;
5442
5443 }
5444
5445
5446 }
5447
5448
5449 leaveRule();
5450
5451 }
5452
5453 catch (RecognitionException re) {
5454 recover(input,re);
5455 appendSkippedTokens();
5456 }
5457 finally {
5458 }
5459 return current;
5460 }
5461 // $ANTLR end "ruleLiteral"
5462
5463
5464 // $ANTLR start "entryRuleVariable"
5465 // InternalSolverLanguage.g:1887:1: entryRuleVariable returns [EObject current=null] : iv_ruleVariable= ruleVariable EOF ;
5466 public final EObject entryRuleVariable() throws RecognitionException {
5467 EObject current = null;
5468
5469 EObject iv_ruleVariable = null;
5470
5471
5472 try {
5473 // InternalSolverLanguage.g:1887:49: (iv_ruleVariable= ruleVariable EOF )
5474 // InternalSolverLanguage.g:1888:2: iv_ruleVariable= ruleVariable EOF
5475 {
5476 newCompositeNode(grammarAccess.getVariableRule());
5477 pushFollow(FOLLOW_1);
5478 iv_ruleVariable=ruleVariable();
5479
5480 state._fsp--;
5481
5482 current =iv_ruleVariable;
5483 match(input,EOF,FOLLOW_2);
5484
5485 }
5486
5487 }
5488
5489 catch (RecognitionException re) {
5490 recover(input,re);
5491 appendSkippedTokens();
5492 }
5493 finally {
5494 }
5495 return current;
5496 }
5497 // $ANTLR end "entryRuleVariable"
5498
5499
5500 // $ANTLR start "ruleVariable"
5501 // InternalSolverLanguage.g:1894:1: ruleVariable returns [EObject current=null] : ( (lv_name_0_0= RULE_ID ) ) ;
5502 public final EObject ruleVariable() throws RecognitionException {
5503 EObject current = null;
5504
5505 Token lv_name_0_0=null;
5506
5507
5508 enterRule();
5509
5510 try {
5511 // InternalSolverLanguage.g:1900:2: ( ( (lv_name_0_0= RULE_ID ) ) )
5512 // InternalSolverLanguage.g:1901:2: ( (lv_name_0_0= RULE_ID ) )
5513 {
5514 // InternalSolverLanguage.g:1901:2: ( (lv_name_0_0= RULE_ID ) )
5515 // InternalSolverLanguage.g:1902:3: (lv_name_0_0= RULE_ID )
5516 {
5517 // InternalSolverLanguage.g:1902:3: (lv_name_0_0= RULE_ID )
5518 // InternalSolverLanguage.g:1903:4: lv_name_0_0= RULE_ID
5519 {
5520 lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_2);
5521
5522 newLeafNode(lv_name_0_0, grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0());
5523
5524
5525 if (current==null) {
5526 current = createModelElement(grammarAccess.getVariableRule());
5527 }
5528 setWithLastConsumed(
5529 current,
5530 "name",
5531 lv_name_0_0,
5532 "org.eclipse.xtext.common.Terminals.ID");
5533
5534
5535 }
5536
5537
5538 }
5539
5540
5541 }
5542
5543
5544 leaveRule();
5545
5546 }
5547
5548 catch (RecognitionException re) {
5549 recover(input,re);
5550 appendSkippedTokens();
5551 }
5552 finally {
5553 }
5554 return current;
5555 }
5556 // $ANTLR end "ruleVariable"
5557
5558
5559 // $ANTLR start "entryRuleAllInstances"
5560 // InternalSolverLanguage.g:1922:1: entryRuleAllInstances returns [EObject current=null] : iv_ruleAllInstances= ruleAllInstances EOF ;
5561 public final EObject entryRuleAllInstances() throws RecognitionException {
5562 EObject current = null;
5563
5564 EObject iv_ruleAllInstances = null;
5565
5566
5567 try {
5568 // InternalSolverLanguage.g:1922:53: (iv_ruleAllInstances= ruleAllInstances EOF )
5569 // InternalSolverLanguage.g:1923:2: iv_ruleAllInstances= ruleAllInstances EOF
5570 {
5571 newCompositeNode(grammarAccess.getAllInstancesRule());
5572 pushFollow(FOLLOW_1);
5573 iv_ruleAllInstances=ruleAllInstances();
5574
5575 state._fsp--;
5576
5577 current =iv_ruleAllInstances;
5578 match(input,EOF,FOLLOW_2);
5579
5580 }
5581
5582 }
5583
5584 catch (RecognitionException re) {
5585 recover(input,re);
5586 appendSkippedTokens();
5587 }
5588 finally {
5589 }
5590 return current;
5591 }
5592 // $ANTLR end "entryRuleAllInstances"
5593
5594
5595 // $ANTLR start "ruleAllInstances"
5596 // InternalSolverLanguage.g:1929:1: ruleAllInstances returns [EObject current=null] : (otherlv_0= ':' ( (lv_symbol_1_0= ruleSymbol ) ) ) ;
5597 public final EObject ruleAllInstances() throws RecognitionException {
5598 EObject current = null;
5599
5600 Token otherlv_0=null;
5601 EObject lv_symbol_1_0 = null;
5602
5603
5604
5605 enterRule();
5606
5607 try {
5608 // InternalSolverLanguage.g:1935:2: ( (otherlv_0= ':' ( (lv_symbol_1_0= ruleSymbol ) ) ) )
5609 // InternalSolverLanguage.g:1936:2: (otherlv_0= ':' ( (lv_symbol_1_0= ruleSymbol ) ) )
5610 {
5611 // InternalSolverLanguage.g:1936:2: (otherlv_0= ':' ( (lv_symbol_1_0= ruleSymbol ) ) )
5612 // InternalSolverLanguage.g:1937:3: otherlv_0= ':' ( (lv_symbol_1_0= ruleSymbol ) )
5613 {
5614 otherlv_0=(Token)match(input,19,FOLLOW_18);
5615
5616 newLeafNode(otherlv_0, grammarAccess.getAllInstancesAccess().getColonKeyword_0());
5617
5618 // InternalSolverLanguage.g:1941:3: ( (lv_symbol_1_0= ruleSymbol ) )
5619 // InternalSolverLanguage.g:1942:4: (lv_symbol_1_0= ruleSymbol )
5620 {
5621 // InternalSolverLanguage.g:1942:4: (lv_symbol_1_0= ruleSymbol )
5622 // InternalSolverLanguage.g:1943:5: lv_symbol_1_0= ruleSymbol
5623 {
5624
5625 newCompositeNode(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0());
5626
5627 pushFollow(FOLLOW_2);
5628 lv_symbol_1_0=ruleSymbol();
5629
5630 state._fsp--;
5631
5632
5633 if (current==null) {
5634 current = createModelElementForParent(grammarAccess.getAllInstancesRule());
5635 }
5636 set(
5637 current,
5638 "symbol",
5639 lv_symbol_1_0,
5640 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
5641 afterParserOrEnumRuleCall();
5642
5643
5644 }
5645
5646
5647 }
5648
5649
5650 }
5651
5652
5653 }
5654
5655
5656 leaveRule();
5657
5658 }
5659
5660 catch (RecognitionException re) {
5661 recover(input,re);
5662 appendSkippedTokens();
5663 }
5664 finally {
5665 }
5666 return current;
5667 }
5668 // $ANTLR end "ruleAllInstances"
5669
5670
5671 // $ANTLR start "entryRuleAllObjects"
5672 // InternalSolverLanguage.g:1964:1: entryRuleAllObjects returns [EObject current=null] : iv_ruleAllObjects= ruleAllObjects EOF ;
5673 public final EObject entryRuleAllObjects() throws RecognitionException {
5674 EObject current = null;
5675
5676 EObject iv_ruleAllObjects = null;
5677
5678
5679 try {
5680 // InternalSolverLanguage.g:1964:51: (iv_ruleAllObjects= ruleAllObjects EOF )
5681 // InternalSolverLanguage.g:1965:2: iv_ruleAllObjects= ruleAllObjects EOF
5682 {
5683 newCompositeNode(grammarAccess.getAllObjectsRule());
5684 pushFollow(FOLLOW_1);
5685 iv_ruleAllObjects=ruleAllObjects();
5686
5687 state._fsp--;
5688
5689 current =iv_ruleAllObjects;
5690 match(input,EOF,FOLLOW_2);
5691
5692 }
5693
5694 }
5695
5696 catch (RecognitionException re) {
5697 recover(input,re);
5698 appendSkippedTokens();
5699 }
5700 finally {
5701 }
5702 return current;
5703 }
5704 // $ANTLR end "entryRuleAllObjects"
5705
5706
5707 // $ANTLR start "ruleAllObjects"
5708 // InternalSolverLanguage.g:1971:1: ruleAllObjects returns [EObject current=null] : ( () otherlv_1= '*' ) ;
5709 public final EObject ruleAllObjects() throws RecognitionException {
5710 EObject current = null;
5711
5712 Token otherlv_1=null;
5713
5714
5715 enterRule();
5716
5717 try {
5718 // InternalSolverLanguage.g:1977:2: ( ( () otherlv_1= '*' ) )
5719 // InternalSolverLanguage.g:1978:2: ( () otherlv_1= '*' )
5720 {
5721 // InternalSolverLanguage.g:1978:2: ( () otherlv_1= '*' )
5722 // InternalSolverLanguage.g:1979:3: () otherlv_1= '*'
5723 {
5724 // InternalSolverLanguage.g:1979:3: ()
5725 // InternalSolverLanguage.g:1980:4:
5726 {
5727
5728 current = forceCreateModelElement(
5729 grammarAccess.getAllObjectsAccess().getAllObjectsAction_0(),
5730 current);
5731
5732
5733 }
5734
5735 otherlv_1=(Token)match(input,30,FOLLOW_2);
5736
5737 newLeafNode(otherlv_1, grammarAccess.getAllObjectsAccess().getAsteriskKeyword_1());
5738
5739
5740 }
5741
5742
5743 }
5744
5745
5746 leaveRule();
5747
5748 }
5749
5750 catch (RecognitionException re) {
5751 recover(input,re);
5752 appendSkippedTokens();
5753 }
5754 finally {
5755 }
5756 return current;
5757 }
5758 // $ANTLR end "ruleAllObjects"
5759
5760
5761 // $ANTLR start "entryRuleDefaultInterpretation"
5762 // InternalSolverLanguage.g:1994:1: entryRuleDefaultInterpretation returns [EObject current=null] : iv_ruleDefaultInterpretation= ruleDefaultInterpretation EOF ;
5763 public final EObject entryRuleDefaultInterpretation() throws RecognitionException {
5764 EObject current = null;
5765
5766 EObject iv_ruleDefaultInterpretation = null;
5767
5768
5769 try {
5770 // InternalSolverLanguage.g:1994:62: (iv_ruleDefaultInterpretation= ruleDefaultInterpretation EOF )
5771 // InternalSolverLanguage.g:1995:2: iv_ruleDefaultInterpretation= ruleDefaultInterpretation EOF
5772 {
5773 newCompositeNode(grammarAccess.getDefaultInterpretationRule());
5774 pushFollow(FOLLOW_1);
5775 iv_ruleDefaultInterpretation=ruleDefaultInterpretation();
5776
5777 state._fsp--;
5778
5779 current =iv_ruleDefaultInterpretation;
5780 match(input,EOF,FOLLOW_2);
5781
5782 }
5783
5784 }
5785
5786 catch (RecognitionException re) {
5787 recover(input,re);
5788 appendSkippedTokens();
5789 }
5790 finally {
5791 }
5792 return current;
5793 }
5794 // $ANTLR end "entryRuleDefaultInterpretation"
5795
5796
5797 // $ANTLR start "ruleDefaultInterpretation"
5798 // InternalSolverLanguage.g:2001:1: ruleDefaultInterpretation returns [EObject current=null] : (otherlv_0= 'default' ( (lv_interpretation_1_0= ruleBasicInterpretation ) ) ) ;
5799 public final EObject ruleDefaultInterpretation() throws RecognitionException {
5800 EObject current = null;
5801
5802 Token otherlv_0=null;
5803 EObject lv_interpretation_1_0 = null;
5804
5805
5806
5807 enterRule();
5808
5809 try {
5810 // InternalSolverLanguage.g:2007:2: ( (otherlv_0= 'default' ( (lv_interpretation_1_0= ruleBasicInterpretation ) ) ) )
5811 // InternalSolverLanguage.g:2008:2: (otherlv_0= 'default' ( (lv_interpretation_1_0= ruleBasicInterpretation ) ) )
5812 {
5813 // InternalSolverLanguage.g:2008:2: (otherlv_0= 'default' ( (lv_interpretation_1_0= ruleBasicInterpretation ) ) )
5814 // InternalSolverLanguage.g:2009:3: otherlv_0= 'default' ( (lv_interpretation_1_0= ruleBasicInterpretation ) )
5815 {
5816 otherlv_0=(Token)match(input,31,FOLLOW_18);
5817
5818 newLeafNode(otherlv_0, grammarAccess.getDefaultInterpretationAccess().getDefaultKeyword_0());
5819
5820 // InternalSolverLanguage.g:2013:3: ( (lv_interpretation_1_0= ruleBasicInterpretation ) )
5821 // InternalSolverLanguage.g:2014:4: (lv_interpretation_1_0= ruleBasicInterpretation )
5822 {
5823 // InternalSolverLanguage.g:2014:4: (lv_interpretation_1_0= ruleBasicInterpretation )
5824 // InternalSolverLanguage.g:2015:5: lv_interpretation_1_0= ruleBasicInterpretation
5825 {
5826
5827 newCompositeNode(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0());
5828
5829 pushFollow(FOLLOW_2);
5830 lv_interpretation_1_0=ruleBasicInterpretation();
5831
5832 state._fsp--;
5833
5834
5835 if (current==null) {
5836 current = createModelElementForParent(grammarAccess.getDefaultInterpretationRule());
5837 }
5838 set(
5839 current,
5840 "interpretation",
5841 lv_interpretation_1_0,
5842 "org.eclipse.viatra.solver.language.SolverLanguage.BasicInterpretation");
5843 afterParserOrEnumRuleCall();
5844
5845
5846 }
5847
5848
5849 }
5850
5851
5852 }
5853
5854
5855 }
5856
5857
5858 leaveRule();
5859
5860 }
5861
5862 catch (RecognitionException re) {
5863 recover(input,re);
5864 appendSkippedTokens();
5865 }
5866 finally {
5867 }
5868 return current;
5869 }
5870 // $ANTLR end "ruleDefaultInterpretation"
5871
5872
5873 // $ANTLR start "entryRuleCDInterpretation"
5874 // InternalSolverLanguage.g:2036:1: entryRuleCDInterpretation returns [EObject current=null] : iv_ruleCDInterpretation= ruleCDInterpretation EOF ;
5875 public final EObject entryRuleCDInterpretation() throws RecognitionException {
5876 EObject current = null;
5877
5878 EObject iv_ruleCDInterpretation = null;
5879
5880
5881 try {
5882 // InternalSolverLanguage.g:2036:57: (iv_ruleCDInterpretation= ruleCDInterpretation EOF )
5883 // InternalSolverLanguage.g:2037:2: iv_ruleCDInterpretation= ruleCDInterpretation EOF
5884 {
5885 newCompositeNode(grammarAccess.getCDInterpretationRule());
5886 pushFollow(FOLLOW_1);
5887 iv_ruleCDInterpretation=ruleCDInterpretation();
5888
5889 state._fsp--;
5890
5891 current =iv_ruleCDInterpretation;
5892 match(input,EOF,FOLLOW_2);
5893
5894 }
5895
5896 }
5897
5898 catch (RecognitionException re) {
5899 recover(input,re);
5900 appendSkippedTokens();
5901 }
5902 finally {
5903 }
5904 return current;
5905 }
5906 // $ANTLR end "entryRuleCDInterpretation"
5907
5908
5909 // $ANTLR start "ruleCDInterpretation"
5910 // InternalSolverLanguage.g:2043:1: ruleCDInterpretation returns [EObject current=null] : (this_ClassInterpretation_0= ruleClassInterpretation | this_EnumInterpretation_1= ruleEnumInterpretation | this_GlobalRelationInterpretation_2= ruleGlobalRelationInterpretation ) ;
5911 public final EObject ruleCDInterpretation() throws RecognitionException {
5912 EObject current = null;
5913
5914 EObject this_ClassInterpretation_0 = null;
5915
5916 EObject this_EnumInterpretation_1 = null;
5917
5918 EObject this_GlobalRelationInterpretation_2 = null;
5919
5920
5921
5922 enterRule();
5923
5924 try {
5925 // InternalSolverLanguage.g:2049:2: ( (this_ClassInterpretation_0= ruleClassInterpretation | this_EnumInterpretation_1= ruleEnumInterpretation | this_GlobalRelationInterpretation_2= ruleGlobalRelationInterpretation ) )
5926 // InternalSolverLanguage.g:2050:2: (this_ClassInterpretation_0= ruleClassInterpretation | this_EnumInterpretation_1= ruleEnumInterpretation | this_GlobalRelationInterpretation_2= ruleGlobalRelationInterpretation )
5927 {
5928 // InternalSolverLanguage.g:2050:2: (this_ClassInterpretation_0= ruleClassInterpretation | this_EnumInterpretation_1= ruleEnumInterpretation | this_GlobalRelationInterpretation_2= ruleGlobalRelationInterpretation )
5929 int alt32=3;
5930 switch ( input.LA(1) ) {
5931 case 32:
5932 {
5933 alt32=1;
5934 }
5935 break;
5936 case 37:
5937 {
5938 alt32=2;
5939 }
5940 break;
5941 case 38:
5942 {
5943 alt32=3;
5944 }
5945 break;
5946 default:
5947 NoViableAltException nvae =
5948 new NoViableAltException("", 32, 0, input);
5949
5950 throw nvae;
5951 }
5952
5953 switch (alt32) {
5954 case 1 :
5955 // InternalSolverLanguage.g:2051:3: this_ClassInterpretation_0= ruleClassInterpretation
5956 {
5957
5958 newCompositeNode(grammarAccess.getCDInterpretationAccess().getClassInterpretationParserRuleCall_0());
5959
5960 pushFollow(FOLLOW_2);
5961 this_ClassInterpretation_0=ruleClassInterpretation();
5962
5963 state._fsp--;
5964
5965
5966 current = this_ClassInterpretation_0;
5967 afterParserOrEnumRuleCall();
5968
5969
5970 }
5971 break;
5972 case 2 :
5973 // InternalSolverLanguage.g:2060:3: this_EnumInterpretation_1= ruleEnumInterpretation
5974 {
5975
5976 newCompositeNode(grammarAccess.getCDInterpretationAccess().getEnumInterpretationParserRuleCall_1());
5977
5978 pushFollow(FOLLOW_2);
5979 this_EnumInterpretation_1=ruleEnumInterpretation();
5980
5981 state._fsp--;
5982
5983
5984 current = this_EnumInterpretation_1;
5985 afterParserOrEnumRuleCall();
5986
5987
5988 }
5989 break;
5990 case 3 :
5991 // InternalSolverLanguage.g:2069:3: this_GlobalRelationInterpretation_2= ruleGlobalRelationInterpretation
5992 {
5993
5994 newCompositeNode(grammarAccess.getCDInterpretationAccess().getGlobalRelationInterpretationParserRuleCall_2());
5995
5996 pushFollow(FOLLOW_2);
5997 this_GlobalRelationInterpretation_2=ruleGlobalRelationInterpretation();
5998
5999 state._fsp--;
6000
6001
6002 current = this_GlobalRelationInterpretation_2;
6003 afterParserOrEnumRuleCall();
6004
6005
6006 }
6007 break;
6008
6009 }
6010
6011
6012 }
6013
6014
6015 leaveRule();
6016
6017 }
6018
6019 catch (RecognitionException re) {
6020 recover(input,re);
6021 appendSkippedTokens();
6022 }
6023 finally {
6024 }
6025 return current;
6026 }
6027 // $ANTLR end "ruleCDInterpretation"
6028
6029
6030 // $ANTLR start "entryRuleClassInterpretation"
6031 // InternalSolverLanguage.g:2081:1: entryRuleClassInterpretation returns [EObject current=null] : iv_ruleClassInterpretation= ruleClassInterpretation EOF ;
6032 public final EObject entryRuleClassInterpretation() throws RecognitionException {
6033 EObject current = null;
6034
6035 EObject iv_ruleClassInterpretation = null;
6036
6037
6038 try {
6039 // InternalSolverLanguage.g:2081:60: (iv_ruleClassInterpretation= ruleClassInterpretation EOF )
6040 // InternalSolverLanguage.g:2082:2: iv_ruleClassInterpretation= ruleClassInterpretation EOF
6041 {
6042 newCompositeNode(grammarAccess.getClassInterpretationRule());
6043 pushFollow(FOLLOW_1);
6044 iv_ruleClassInterpretation=ruleClassInterpretation();
6045
6046 state._fsp--;
6047
6048 current =iv_ruleClassInterpretation;
6049 match(input,EOF,FOLLOW_2);
6050
6051 }
6052
6053 }
6054
6055 catch (RecognitionException re) {
6056 recover(input,re);
6057 appendSkippedTokens();
6058 }
6059 finally {
6060 }
6061 return current;
6062 }
6063 // $ANTLR end "entryRuleClassInterpretation"
6064
6065
6066 // $ANTLR start "ruleClassInterpretation"
6067 // InternalSolverLanguage.g:2088:1: ruleClassInterpretation returns [EObject current=null] : ( ( (lv_abstract_0_0= 'abstract' ) ) otherlv_1= 'class' ( (lv_symbol_2_0= ruleModelSymbol ) ) (otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+ )? otherlv_5= '{' ( (lv_fielt_6_0= ruleFieldRelationInterpretation ) )* otherlv_7= '}' ) ;
6068 public final EObject ruleClassInterpretation() throws RecognitionException {
6069 EObject current = null;
6070
6071 Token lv_abstract_0_0=null;
6072 Token otherlv_1=null;
6073 Token otherlv_3=null;
6074 Token otherlv_5=null;
6075 Token otherlv_7=null;
6076 EObject lv_symbol_2_0 = null;
6077
6078 EObject lv_supertypes_4_0 = null;
6079
6080 EObject lv_fielt_6_0 = null;
6081
6082
6083
6084 enterRule();
6085
6086 try {
6087 // InternalSolverLanguage.g:2094:2: ( ( ( (lv_abstract_0_0= 'abstract' ) ) otherlv_1= 'class' ( (lv_symbol_2_0= ruleModelSymbol ) ) (otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+ )? otherlv_5= '{' ( (lv_fielt_6_0= ruleFieldRelationInterpretation ) )* otherlv_7= '}' ) )
6088 // InternalSolverLanguage.g:2095:2: ( ( (lv_abstract_0_0= 'abstract' ) ) otherlv_1= 'class' ( (lv_symbol_2_0= ruleModelSymbol ) ) (otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+ )? otherlv_5= '{' ( (lv_fielt_6_0= ruleFieldRelationInterpretation ) )* otherlv_7= '}' )
6089 {
6090 // InternalSolverLanguage.g:2095:2: ( ( (lv_abstract_0_0= 'abstract' ) ) otherlv_1= 'class' ( (lv_symbol_2_0= ruleModelSymbol ) ) (otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+ )? otherlv_5= '{' ( (lv_fielt_6_0= ruleFieldRelationInterpretation ) )* otherlv_7= '}' )
6091 // InternalSolverLanguage.g:2096:3: ( (lv_abstract_0_0= 'abstract' ) ) otherlv_1= 'class' ( (lv_symbol_2_0= ruleModelSymbol ) ) (otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+ )? otherlv_5= '{' ( (lv_fielt_6_0= ruleFieldRelationInterpretation ) )* otherlv_7= '}'
6092 {
6093 // InternalSolverLanguage.g:2096:3: ( (lv_abstract_0_0= 'abstract' ) )
6094 // InternalSolverLanguage.g:2097:4: (lv_abstract_0_0= 'abstract' )
6095 {
6096 // InternalSolverLanguage.g:2097:4: (lv_abstract_0_0= 'abstract' )
6097 // InternalSolverLanguage.g:2098:5: lv_abstract_0_0= 'abstract'
6098 {
6099 lv_abstract_0_0=(Token)match(input,32,FOLLOW_24);
6100
6101 newLeafNode(lv_abstract_0_0, grammarAccess.getClassInterpretationAccess().getAbstractAbstractKeyword_0_0());
6102
6103
6104 if (current==null) {
6105 current = createModelElement(grammarAccess.getClassInterpretationRule());
6106 }
6107 setWithLastConsumed(current, "abstract", true, "abstract");
6108
6109
6110 }
6111
6112
6113 }
6114
6115 otherlv_1=(Token)match(input,33,FOLLOW_10);
6116
6117 newLeafNode(otherlv_1, grammarAccess.getClassInterpretationAccess().getClassKeyword_1());
6118
6119 // InternalSolverLanguage.g:2114:3: ( (lv_symbol_2_0= ruleModelSymbol ) )
6120 // InternalSolverLanguage.g:2115:4: (lv_symbol_2_0= ruleModelSymbol )
6121 {
6122 // InternalSolverLanguage.g:2115:4: (lv_symbol_2_0= ruleModelSymbol )
6123 // InternalSolverLanguage.g:2116:5: lv_symbol_2_0= ruleModelSymbol
6124 {
6125
6126 newCompositeNode(grammarAccess.getClassInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
6127
6128 pushFollow(FOLLOW_25);
6129 lv_symbol_2_0=ruleModelSymbol();
6130
6131 state._fsp--;
6132
6133
6134 if (current==null) {
6135 current = createModelElementForParent(grammarAccess.getClassInterpretationRule());
6136 }
6137 set(
6138 current,
6139 "symbol",
6140 lv_symbol_2_0,
6141 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
6142 afterParserOrEnumRuleCall();
6143
6144
6145 }
6146
6147
6148 }
6149
6150 // InternalSolverLanguage.g:2133:3: (otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+ )?
6151 int alt34=2;
6152 int LA34_0 = input.LA(1);
6153
6154 if ( (LA34_0==34) ) {
6155 alt34=1;
6156 }
6157 switch (alt34) {
6158 case 1 :
6159 // InternalSolverLanguage.g:2134:4: otherlv_3= 'extends' ( (lv_supertypes_4_0= ruleModelSymbol ) )+
6160 {
6161 otherlv_3=(Token)match(input,34,FOLLOW_10);
6162
6163 newLeafNode(otherlv_3, grammarAccess.getClassInterpretationAccess().getExtendsKeyword_3_0());
6164
6165 // InternalSolverLanguage.g:2138:4: ( (lv_supertypes_4_0= ruleModelSymbol ) )+
6166 int cnt33=0;
6167 loop33:
6168 do {
6169 int alt33=2;
6170 int LA33_0 = input.LA(1);
6171
6172 if ( (LA33_0==RULE_ID) ) {
6173 alt33=1;
6174 }
6175
6176
6177 switch (alt33) {
6178 case 1 :
6179 // InternalSolverLanguage.g:2139:5: (lv_supertypes_4_0= ruleModelSymbol )
6180 {
6181 // InternalSolverLanguage.g:2139:5: (lv_supertypes_4_0= ruleModelSymbol )
6182 // InternalSolverLanguage.g:2140:6: lv_supertypes_4_0= ruleModelSymbol
6183 {
6184
6185 newCompositeNode(grammarAccess.getClassInterpretationAccess().getSupertypesModelSymbolParserRuleCall_3_1_0());
6186
6187 pushFollow(FOLLOW_26);
6188 lv_supertypes_4_0=ruleModelSymbol();
6189
6190 state._fsp--;
6191
6192
6193 if (current==null) {
6194 current = createModelElementForParent(grammarAccess.getClassInterpretationRule());
6195 }
6196 add(
6197 current,
6198 "supertypes",
6199 lv_supertypes_4_0,
6200 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
6201 afterParserOrEnumRuleCall();
6202
6203
6204 }
6205
6206
6207 }
6208 break;
6209
6210 default :
6211 if ( cnt33 >= 1 ) break loop33;
6212 EarlyExitException eee =
6213 new EarlyExitException(33, input);
6214 throw eee;
6215 }
6216 cnt33++;
6217 } while (true);
6218
6219
6220 }
6221 break;
6222
6223 }
6224
6225 otherlv_5=(Token)match(input,35,FOLLOW_27);
6226
6227 newLeafNode(otherlv_5, grammarAccess.getClassInterpretationAccess().getLeftCurlyBracketKeyword_4());
6228
6229 // InternalSolverLanguage.g:2162:3: ( (lv_fielt_6_0= ruleFieldRelationInterpretation ) )*
6230 loop35:
6231 do {
6232 int alt35=2;
6233 int LA35_0 = input.LA(1);
6234
6235 if ( (LA35_0==38) ) {
6236 alt35=1;
6237 }
6238
6239
6240 switch (alt35) {
6241 case 1 :
6242 // InternalSolverLanguage.g:2163:4: (lv_fielt_6_0= ruleFieldRelationInterpretation )
6243 {
6244 // InternalSolverLanguage.g:2163:4: (lv_fielt_6_0= ruleFieldRelationInterpretation )
6245 // InternalSolverLanguage.g:2164:5: lv_fielt_6_0= ruleFieldRelationInterpretation
6246 {
6247
6248 newCompositeNode(grammarAccess.getClassInterpretationAccess().getFieltFieldRelationInterpretationParserRuleCall_5_0());
6249
6250 pushFollow(FOLLOW_27);
6251 lv_fielt_6_0=ruleFieldRelationInterpretation();
6252
6253 state._fsp--;
6254
6255
6256 if (current==null) {
6257 current = createModelElementForParent(grammarAccess.getClassInterpretationRule());
6258 }
6259 add(
6260 current,
6261 "fielt",
6262 lv_fielt_6_0,
6263 "org.eclipse.viatra.solver.language.SolverLanguage.FieldRelationInterpretation");
6264 afterParserOrEnumRuleCall();
6265
6266
6267 }
6268
6269
6270 }
6271 break;
6272
6273 default :
6274 break loop35;
6275 }
6276 } while (true);
6277
6278 otherlv_7=(Token)match(input,36,FOLLOW_2);
6279
6280 newLeafNode(otherlv_7, grammarAccess.getClassInterpretationAccess().getRightCurlyBracketKeyword_6());
6281
6282
6283 }
6284
6285
6286 }
6287
6288
6289 leaveRule();
6290
6291 }
6292
6293 catch (RecognitionException re) {
6294 recover(input,re);
6295 appendSkippedTokens();
6296 }
6297 finally {
6298 }
6299 return current;
6300 }
6301 // $ANTLR end "ruleClassInterpretation"
6302
6303
6304 // $ANTLR start "entryRuleEnumInterpretation"
6305 // InternalSolverLanguage.g:2189:1: entryRuleEnumInterpretation returns [EObject current=null] : iv_ruleEnumInterpretation= ruleEnumInterpretation EOF ;
6306 public final EObject entryRuleEnumInterpretation() throws RecognitionException {
6307 EObject current = null;
6308
6309 EObject iv_ruleEnumInterpretation = null;
6310
6311
6312 try {
6313 // InternalSolverLanguage.g:2189:59: (iv_ruleEnumInterpretation= ruleEnumInterpretation EOF )
6314 // InternalSolverLanguage.g:2190:2: iv_ruleEnumInterpretation= ruleEnumInterpretation EOF
6315 {
6316 newCompositeNode(grammarAccess.getEnumInterpretationRule());
6317 pushFollow(FOLLOW_1);
6318 iv_ruleEnumInterpretation=ruleEnumInterpretation();
6319
6320 state._fsp--;
6321
6322 current =iv_ruleEnumInterpretation;
6323 match(input,EOF,FOLLOW_2);
6324
6325 }
6326
6327 }
6328
6329 catch (RecognitionException re) {
6330 recover(input,re);
6331 appendSkippedTokens();
6332 }
6333 finally {
6334 }
6335 return current;
6336 }
6337 // $ANTLR end "entryRuleEnumInterpretation"
6338
6339
6340 // $ANTLR start "ruleEnumInterpretation"
6341 // InternalSolverLanguage.g:2196:1: ruleEnumInterpretation returns [EObject current=null] : (otherlv_0= 'enum' ( (lv_Symbol_1_0= ruleModelSymbol ) ) otherlv_2= '{' ( (lv_objects_3_0= ruleNamedObject ) )+ otherlv_4= '}' ) ;
6342 public final EObject ruleEnumInterpretation() throws RecognitionException {
6343 EObject current = null;
6344
6345 Token otherlv_0=null;
6346 Token otherlv_2=null;
6347 Token otherlv_4=null;
6348 EObject lv_Symbol_1_0 = null;
6349
6350 EObject lv_objects_3_0 = null;
6351
6352
6353
6354 enterRule();
6355
6356 try {
6357 // InternalSolverLanguage.g:2202:2: ( (otherlv_0= 'enum' ( (lv_Symbol_1_0= ruleModelSymbol ) ) otherlv_2= '{' ( (lv_objects_3_0= ruleNamedObject ) )+ otherlv_4= '}' ) )
6358 // InternalSolverLanguage.g:2203:2: (otherlv_0= 'enum' ( (lv_Symbol_1_0= ruleModelSymbol ) ) otherlv_2= '{' ( (lv_objects_3_0= ruleNamedObject ) )+ otherlv_4= '}' )
6359 {
6360 // InternalSolverLanguage.g:2203:2: (otherlv_0= 'enum' ( (lv_Symbol_1_0= ruleModelSymbol ) ) otherlv_2= '{' ( (lv_objects_3_0= ruleNamedObject ) )+ otherlv_4= '}' )
6361 // InternalSolverLanguage.g:2204:3: otherlv_0= 'enum' ( (lv_Symbol_1_0= ruleModelSymbol ) ) otherlv_2= '{' ( (lv_objects_3_0= ruleNamedObject ) )+ otherlv_4= '}'
6362 {
6363 otherlv_0=(Token)match(input,37,FOLLOW_10);
6364
6365 newLeafNode(otherlv_0, grammarAccess.getEnumInterpretationAccess().getEnumKeyword_0());
6366
6367 // InternalSolverLanguage.g:2208:3: ( (lv_Symbol_1_0= ruleModelSymbol ) )
6368 // InternalSolverLanguage.g:2209:4: (lv_Symbol_1_0= ruleModelSymbol )
6369 {
6370 // InternalSolverLanguage.g:2209:4: (lv_Symbol_1_0= ruleModelSymbol )
6371 // InternalSolverLanguage.g:2210:5: lv_Symbol_1_0= ruleModelSymbol
6372 {
6373
6374 newCompositeNode(grammarAccess.getEnumInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
6375
6376 pushFollow(FOLLOW_28);
6377 lv_Symbol_1_0=ruleModelSymbol();
6378
6379 state._fsp--;
6380
6381
6382 if (current==null) {
6383 current = createModelElementForParent(grammarAccess.getEnumInterpretationRule());
6384 }
6385 set(
6386 current,
6387 "Symbol",
6388 lv_Symbol_1_0,
6389 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
6390 afterParserOrEnumRuleCall();
6391
6392
6393 }
6394
6395
6396 }
6397
6398 otherlv_2=(Token)match(input,35,FOLLOW_11);
6399
6400 newLeafNode(otherlv_2, grammarAccess.getEnumInterpretationAccess().getLeftCurlyBracketKeyword_2());
6401
6402 // InternalSolverLanguage.g:2231:3: ( (lv_objects_3_0= ruleNamedObject ) )+
6403 int cnt36=0;
6404 loop36:
6405 do {
6406 int alt36=2;
6407 int LA36_0 = input.LA(1);
6408
6409 if ( (LA36_0==26) ) {
6410 alt36=1;
6411 }
6412
6413
6414 switch (alt36) {
6415 case 1 :
6416 // InternalSolverLanguage.g:2232:4: (lv_objects_3_0= ruleNamedObject )
6417 {
6418 // InternalSolverLanguage.g:2232:4: (lv_objects_3_0= ruleNamedObject )
6419 // InternalSolverLanguage.g:2233:5: lv_objects_3_0= ruleNamedObject
6420 {
6421
6422 newCompositeNode(grammarAccess.getEnumInterpretationAccess().getObjectsNamedObjectParserRuleCall_3_0());
6423
6424 pushFollow(FOLLOW_29);
6425 lv_objects_3_0=ruleNamedObject();
6426
6427 state._fsp--;
6428
6429
6430 if (current==null) {
6431 current = createModelElementForParent(grammarAccess.getEnumInterpretationRule());
6432 }
6433 add(
6434 current,
6435 "objects",
6436 lv_objects_3_0,
6437 "org.eclipse.viatra.solver.language.SolverLanguage.NamedObject");
6438 afterParserOrEnumRuleCall();
6439
6440
6441 }
6442
6443
6444 }
6445 break;
6446
6447 default :
6448 if ( cnt36 >= 1 ) break loop36;
6449 EarlyExitException eee =
6450 new EarlyExitException(36, input);
6451 throw eee;
6452 }
6453 cnt36++;
6454 } while (true);
6455
6456 otherlv_4=(Token)match(input,36,FOLLOW_2);
6457
6458 newLeafNode(otherlv_4, grammarAccess.getEnumInterpretationAccess().getRightCurlyBracketKeyword_4());
6459
6460
6461 }
6462
6463
6464 }
6465
6466
6467 leaveRule();
6468
6469 }
6470
6471 catch (RecognitionException re) {
6472 recover(input,re);
6473 appendSkippedTokens();
6474 }
6475 finally {
6476 }
6477 return current;
6478 }
6479 // $ANTLR end "ruleEnumInterpretation"
6480
6481
6482 // $ANTLR start "entryRuleFieldRelationInterpretation"
6483 // InternalSolverLanguage.g:2258:1: entryRuleFieldRelationInterpretation returns [EObject current=null] : iv_ruleFieldRelationInterpretation= ruleFieldRelationInterpretation EOF ;
6484 public final EObject entryRuleFieldRelationInterpretation() throws RecognitionException {
6485 EObject current = null;
6486
6487 EObject iv_ruleFieldRelationInterpretation = null;
6488
6489
6490 try {
6491 // InternalSolverLanguage.g:2258:68: (iv_ruleFieldRelationInterpretation= ruleFieldRelationInterpretation EOF )
6492 // InternalSolverLanguage.g:2259:2: iv_ruleFieldRelationInterpretation= ruleFieldRelationInterpretation EOF
6493 {
6494 newCompositeNode(grammarAccess.getFieldRelationInterpretationRule());
6495 pushFollow(FOLLOW_1);
6496 iv_ruleFieldRelationInterpretation=ruleFieldRelationInterpretation();
6497
6498 state._fsp--;
6499
6500 current =iv_ruleFieldRelationInterpretation;
6501 match(input,EOF,FOLLOW_2);
6502
6503 }
6504
6505 }
6506
6507 catch (RecognitionException re) {
6508 recover(input,re);
6509 appendSkippedTokens();
6510 }
6511 finally {
6512 }
6513 return current;
6514 }
6515 // $ANTLR end "entryRuleFieldRelationInterpretation"
6516
6517
6518 // $ANTLR start "ruleFieldRelationInterpretation"
6519 // InternalSolverLanguage.g:2265:1: ruleFieldRelationInterpretation returns [EObject current=null] : ( ( (lv_containment_0_0= 'containment' ) ) ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= ':' ( (lv_multiplicity_3_0= ruleMultiplicityDefinition ) )? ( (lv_target_4_0= ruleSymbol ) ) ) ;
6520 public final EObject ruleFieldRelationInterpretation() throws RecognitionException {
6521 EObject current = null;
6522
6523 Token lv_containment_0_0=null;
6524 Token otherlv_2=null;
6525 EObject lv_symbol_1_0 = null;
6526
6527 EObject lv_multiplicity_3_0 = null;
6528
6529 EObject lv_target_4_0 = null;
6530
6531
6532
6533 enterRule();
6534
6535 try {
6536 // InternalSolverLanguage.g:2271:2: ( ( ( (lv_containment_0_0= 'containment' ) ) ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= ':' ( (lv_multiplicity_3_0= ruleMultiplicityDefinition ) )? ( (lv_target_4_0= ruleSymbol ) ) ) )
6537 // InternalSolverLanguage.g:2272:2: ( ( (lv_containment_0_0= 'containment' ) ) ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= ':' ( (lv_multiplicity_3_0= ruleMultiplicityDefinition ) )? ( (lv_target_4_0= ruleSymbol ) ) )
6538 {
6539 // InternalSolverLanguage.g:2272:2: ( ( (lv_containment_0_0= 'containment' ) ) ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= ':' ( (lv_multiplicity_3_0= ruleMultiplicityDefinition ) )? ( (lv_target_4_0= ruleSymbol ) ) )
6540 // InternalSolverLanguage.g:2273:3: ( (lv_containment_0_0= 'containment' ) ) ( (lv_symbol_1_0= ruleModelSymbol ) ) otherlv_2= ':' ( (lv_multiplicity_3_0= ruleMultiplicityDefinition ) )? ( (lv_target_4_0= ruleSymbol ) )
6541 {
6542 // InternalSolverLanguage.g:2273:3: ( (lv_containment_0_0= 'containment' ) )
6543 // InternalSolverLanguage.g:2274:4: (lv_containment_0_0= 'containment' )
6544 {
6545 // InternalSolverLanguage.g:2274:4: (lv_containment_0_0= 'containment' )
6546 // InternalSolverLanguage.g:2275:5: lv_containment_0_0= 'containment'
6547 {
6548 lv_containment_0_0=(Token)match(input,38,FOLLOW_10);
6549
6550 newLeafNode(lv_containment_0_0, grammarAccess.getFieldRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
6551
6552
6553 if (current==null) {
6554 current = createModelElement(grammarAccess.getFieldRelationInterpretationRule());
6555 }
6556 setWithLastConsumed(current, "containment", true, "containment");
6557
6558
6559 }
6560
6561
6562 }
6563
6564 // InternalSolverLanguage.g:2287:3: ( (lv_symbol_1_0= ruleModelSymbol ) )
6565 // InternalSolverLanguage.g:2288:4: (lv_symbol_1_0= ruleModelSymbol )
6566 {
6567 // InternalSolverLanguage.g:2288:4: (lv_symbol_1_0= ruleModelSymbol )
6568 // InternalSolverLanguage.g:2289:5: lv_symbol_1_0= ruleModelSymbol
6569 {
6570
6571 newCompositeNode(grammarAccess.getFieldRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_1_0());
6572
6573 pushFollow(FOLLOW_8);
6574 lv_symbol_1_0=ruleModelSymbol();
6575
6576 state._fsp--;
6577
6578
6579 if (current==null) {
6580 current = createModelElementForParent(grammarAccess.getFieldRelationInterpretationRule());
6581 }
6582 set(
6583 current,
6584 "symbol",
6585 lv_symbol_1_0,
6586 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
6587 afterParserOrEnumRuleCall();
6588
6589
6590 }
6591
6592
6593 }
6594
6595 otherlv_2=(Token)match(input,19,FOLLOW_30);
6596
6597 newLeafNode(otherlv_2, grammarAccess.getFieldRelationInterpretationAccess().getColonKeyword_2());
6598
6599 // InternalSolverLanguage.g:2310:3: ( (lv_multiplicity_3_0= ruleMultiplicityDefinition ) )?
6600 int alt37=2;
6601 int LA37_0 = input.LA(1);
6602
6603 if ( (LA37_0==RULE_INT) ) {
6604 alt37=1;
6605 }
6606 switch (alt37) {
6607 case 1 :
6608 // InternalSolverLanguage.g:2311:4: (lv_multiplicity_3_0= ruleMultiplicityDefinition )
6609 {
6610 // InternalSolverLanguage.g:2311:4: (lv_multiplicity_3_0= ruleMultiplicityDefinition )
6611 // InternalSolverLanguage.g:2312:5: lv_multiplicity_3_0= ruleMultiplicityDefinition
6612 {
6613
6614 newCompositeNode(grammarAccess.getFieldRelationInterpretationAccess().getMultiplicityMultiplicityDefinitionParserRuleCall_3_0());
6615
6616 pushFollow(FOLLOW_18);
6617 lv_multiplicity_3_0=ruleMultiplicityDefinition();
6618
6619 state._fsp--;
6620
6621
6622 if (current==null) {
6623 current = createModelElementForParent(grammarAccess.getFieldRelationInterpretationRule());
6624 }
6625 set(
6626 current,
6627 "multiplicity",
6628 lv_multiplicity_3_0,
6629 "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
6630 afterParserOrEnumRuleCall();
6631
6632
6633 }
6634
6635
6636 }
6637 break;
6638
6639 }
6640
6641 // InternalSolverLanguage.g:2329:3: ( (lv_target_4_0= ruleSymbol ) )
6642 // InternalSolverLanguage.g:2330:4: (lv_target_4_0= ruleSymbol )
6643 {
6644 // InternalSolverLanguage.g:2330:4: (lv_target_4_0= ruleSymbol )
6645 // InternalSolverLanguage.g:2331:5: lv_target_4_0= ruleSymbol
6646 {
6647
6648 newCompositeNode(grammarAccess.getFieldRelationInterpretationAccess().getTargetSymbolParserRuleCall_4_0());
6649
6650 pushFollow(FOLLOW_2);
6651 lv_target_4_0=ruleSymbol();
6652
6653 state._fsp--;
6654
6655
6656 if (current==null) {
6657 current = createModelElementForParent(grammarAccess.getFieldRelationInterpretationRule());
6658 }
6659 set(
6660 current,
6661 "target",
6662 lv_target_4_0,
6663 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
6664 afterParserOrEnumRuleCall();
6665
6666
6667 }
6668
6669
6670 }
6671
6672
6673 }
6674
6675
6676 }
6677
6678
6679 leaveRule();
6680
6681 }
6682
6683 catch (RecognitionException re) {
6684 recover(input,re);
6685 appendSkippedTokens();
6686 }
6687 finally {
6688 }
6689 return current;
6690 }
6691 // $ANTLR end "ruleFieldRelationInterpretation"
6692
6693
6694 // $ANTLR start "entryRuleGlobalRelationInterpretation"
6695 // InternalSolverLanguage.g:2352:1: entryRuleGlobalRelationInterpretation returns [EObject current=null] : iv_ruleGlobalRelationInterpretation= ruleGlobalRelationInterpretation EOF ;
6696 public final EObject entryRuleGlobalRelationInterpretation() throws RecognitionException {
6697 EObject current = null;
6698
6699 EObject iv_ruleGlobalRelationInterpretation = null;
6700
6701
6702 try {
6703 // InternalSolverLanguage.g:2352:69: (iv_ruleGlobalRelationInterpretation= ruleGlobalRelationInterpretation EOF )
6704 // InternalSolverLanguage.g:2353:2: iv_ruleGlobalRelationInterpretation= ruleGlobalRelationInterpretation EOF
6705 {
6706 newCompositeNode(grammarAccess.getGlobalRelationInterpretationRule());
6707 pushFollow(FOLLOW_1);
6708 iv_ruleGlobalRelationInterpretation=ruleGlobalRelationInterpretation();
6709
6710 state._fsp--;
6711
6712 current =iv_ruleGlobalRelationInterpretation;
6713 match(input,EOF,FOLLOW_2);
6714
6715 }
6716
6717 }
6718
6719 catch (RecognitionException re) {
6720 recover(input,re);
6721 appendSkippedTokens();
6722 }
6723 finally {
6724 }
6725 return current;
6726 }
6727 // $ANTLR end "entryRuleGlobalRelationInterpretation"
6728
6729
6730 // $ANTLR start "ruleGlobalRelationInterpretation"
6731 // InternalSolverLanguage.g:2359:1: ruleGlobalRelationInterpretation returns [EObject current=null] : ( ( (lv_containment_0_0= 'containment' ) ) otherlv_1= 'relation' ( (lv_symbol_2_0= ruleModelSymbol ) ) otherlv_3= ':' ( (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition ) )? ( (lv_source_5_0= ruleSymbol ) ) ( (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition ) )? ( (lv_target_7_0= ruleSymbol ) ) ) ;
6732 public final EObject ruleGlobalRelationInterpretation() throws RecognitionException {
6733 EObject current = null;
6734
6735 Token lv_containment_0_0=null;
6736 Token otherlv_1=null;
6737 Token otherlv_3=null;
6738 EObject lv_symbol_2_0 = null;
6739
6740 EObject lv_sourceMultiplicity_4_0 = null;
6741
6742 EObject lv_source_5_0 = null;
6743
6744 EObject lv_targetMultiplicity_6_0 = null;
6745
6746 EObject lv_target_7_0 = null;
6747
6748
6749
6750 enterRule();
6751
6752 try {
6753 // InternalSolverLanguage.g:2365:2: ( ( ( (lv_containment_0_0= 'containment' ) ) otherlv_1= 'relation' ( (lv_symbol_2_0= ruleModelSymbol ) ) otherlv_3= ':' ( (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition ) )? ( (lv_source_5_0= ruleSymbol ) ) ( (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition ) )? ( (lv_target_7_0= ruleSymbol ) ) ) )
6754 // InternalSolverLanguage.g:2366:2: ( ( (lv_containment_0_0= 'containment' ) ) otherlv_1= 'relation' ( (lv_symbol_2_0= ruleModelSymbol ) ) otherlv_3= ':' ( (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition ) )? ( (lv_source_5_0= ruleSymbol ) ) ( (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition ) )? ( (lv_target_7_0= ruleSymbol ) ) )
6755 {
6756 // InternalSolverLanguage.g:2366:2: ( ( (lv_containment_0_0= 'containment' ) ) otherlv_1= 'relation' ( (lv_symbol_2_0= ruleModelSymbol ) ) otherlv_3= ':' ( (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition ) )? ( (lv_source_5_0= ruleSymbol ) ) ( (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition ) )? ( (lv_target_7_0= ruleSymbol ) ) )
6757 // InternalSolverLanguage.g:2367:3: ( (lv_containment_0_0= 'containment' ) ) otherlv_1= 'relation' ( (lv_symbol_2_0= ruleModelSymbol ) ) otherlv_3= ':' ( (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition ) )? ( (lv_source_5_0= ruleSymbol ) ) ( (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition ) )? ( (lv_target_7_0= ruleSymbol ) )
6758 {
6759 // InternalSolverLanguage.g:2367:3: ( (lv_containment_0_0= 'containment' ) )
6760 // InternalSolverLanguage.g:2368:4: (lv_containment_0_0= 'containment' )
6761 {
6762 // InternalSolverLanguage.g:2368:4: (lv_containment_0_0= 'containment' )
6763 // InternalSolverLanguage.g:2369:5: lv_containment_0_0= 'containment'
6764 {
6765 lv_containment_0_0=(Token)match(input,38,FOLLOW_31);
6766
6767 newLeafNode(lv_containment_0_0, grammarAccess.getGlobalRelationInterpretationAccess().getContainmentContainmentKeyword_0_0());
6768
6769
6770 if (current==null) {
6771 current = createModelElement(grammarAccess.getGlobalRelationInterpretationRule());
6772 }
6773 setWithLastConsumed(current, "containment", true, "containment");
6774
6775
6776 }
6777
6778
6779 }
6780
6781 otherlv_1=(Token)match(input,39,FOLLOW_10);
6782
6783 newLeafNode(otherlv_1, grammarAccess.getGlobalRelationInterpretationAccess().getRelationKeyword_1());
6784
6785 // InternalSolverLanguage.g:2385:3: ( (lv_symbol_2_0= ruleModelSymbol ) )
6786 // InternalSolverLanguage.g:2386:4: (lv_symbol_2_0= ruleModelSymbol )
6787 {
6788 // InternalSolverLanguage.g:2386:4: (lv_symbol_2_0= ruleModelSymbol )
6789 // InternalSolverLanguage.g:2387:5: lv_symbol_2_0= ruleModelSymbol
6790 {
6791
6792 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getSymbolModelSymbolParserRuleCall_2_0());
6793
6794 pushFollow(FOLLOW_8);
6795 lv_symbol_2_0=ruleModelSymbol();
6796
6797 state._fsp--;
6798
6799
6800 if (current==null) {
6801 current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
6802 }
6803 set(
6804 current,
6805 "symbol",
6806 lv_symbol_2_0,
6807 "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
6808 afterParserOrEnumRuleCall();
6809
6810
6811 }
6812
6813
6814 }
6815
6816 otherlv_3=(Token)match(input,19,FOLLOW_30);
6817
6818 newLeafNode(otherlv_3, grammarAccess.getGlobalRelationInterpretationAccess().getColonKeyword_3());
6819
6820 // InternalSolverLanguage.g:2408:3: ( (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition ) )?
6821 int alt38=2;
6822 int LA38_0 = input.LA(1);
6823
6824 if ( (LA38_0==RULE_INT) ) {
6825 alt38=1;
6826 }
6827 switch (alt38) {
6828 case 1 :
6829 // InternalSolverLanguage.g:2409:4: (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition )
6830 {
6831 // InternalSolverLanguage.g:2409:4: (lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition )
6832 // InternalSolverLanguage.g:2410:5: lv_sourceMultiplicity_4_0= ruleMultiplicityDefinition
6833 {
6834
6835 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0());
6836
6837 pushFollow(FOLLOW_18);
6838 lv_sourceMultiplicity_4_0=ruleMultiplicityDefinition();
6839
6840 state._fsp--;
6841
6842
6843 if (current==null) {
6844 current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
6845 }
6846 set(
6847 current,
6848 "sourceMultiplicity",
6849 lv_sourceMultiplicity_4_0,
6850 "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
6851 afterParserOrEnumRuleCall();
6852
6853
6854 }
6855
6856
6857 }
6858 break;
6859
6860 }
6861
6862 // InternalSolverLanguage.g:2427:3: ( (lv_source_5_0= ruleSymbol ) )
6863 // InternalSolverLanguage.g:2428:4: (lv_source_5_0= ruleSymbol )
6864 {
6865 // InternalSolverLanguage.g:2428:4: (lv_source_5_0= ruleSymbol )
6866 // InternalSolverLanguage.g:2429:5: lv_source_5_0= ruleSymbol
6867 {
6868
6869 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getSourceSymbolParserRuleCall_5_0());
6870
6871 pushFollow(FOLLOW_30);
6872 lv_source_5_0=ruleSymbol();
6873
6874 state._fsp--;
6875
6876
6877 if (current==null) {
6878 current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
6879 }
6880 set(
6881 current,
6882 "source",
6883 lv_source_5_0,
6884 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
6885 afterParserOrEnumRuleCall();
6886
6887
6888 }
6889
6890
6891 }
6892
6893 // InternalSolverLanguage.g:2446:3: ( (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition ) )?
6894 int alt39=2;
6895 int LA39_0 = input.LA(1);
6896
6897 if ( (LA39_0==RULE_INT) ) {
6898 alt39=1;
6899 }
6900 switch (alt39) {
6901 case 1 :
6902 // InternalSolverLanguage.g:2447:4: (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition )
6903 {
6904 // InternalSolverLanguage.g:2447:4: (lv_targetMultiplicity_6_0= ruleMultiplicityDefinition )
6905 // InternalSolverLanguage.g:2448:5: lv_targetMultiplicity_6_0= ruleMultiplicityDefinition
6906 {
6907
6908 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0());
6909
6910 pushFollow(FOLLOW_18);
6911 lv_targetMultiplicity_6_0=ruleMultiplicityDefinition();
6912
6913 state._fsp--;
6914
6915
6916 if (current==null) {
6917 current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
6918 }
6919 set(
6920 current,
6921 "targetMultiplicity",
6922 lv_targetMultiplicity_6_0,
6923 "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
6924 afterParserOrEnumRuleCall();
6925
6926
6927 }
6928
6929
6930 }
6931 break;
6932
6933 }
6934
6935 // InternalSolverLanguage.g:2465:3: ( (lv_target_7_0= ruleSymbol ) )
6936 // InternalSolverLanguage.g:2466:4: (lv_target_7_0= ruleSymbol )
6937 {
6938 // InternalSolverLanguage.g:2466:4: (lv_target_7_0= ruleSymbol )
6939 // InternalSolverLanguage.g:2467:5: lv_target_7_0= ruleSymbol
6940 {
6941
6942 newCompositeNode(grammarAccess.getGlobalRelationInterpretationAccess().getTargetSymbolParserRuleCall_7_0());
6943
6944 pushFollow(FOLLOW_2);
6945 lv_target_7_0=ruleSymbol();
6946
6947 state._fsp--;
6948
6949
6950 if (current==null) {
6951 current = createModelElementForParent(grammarAccess.getGlobalRelationInterpretationRule());
6952 }
6953 set(
6954 current,
6955 "target",
6956 lv_target_7_0,
6957 "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
6958 afterParserOrEnumRuleCall();
6959
6960
6961 }
6962
6963
6964 }
6965
6966
6967 }
6968
6969
6970 }
6971
6972
6973 leaveRule();
6974
6975 }
6976
6977 catch (RecognitionException re) {
6978 recover(input,re);
6979 appendSkippedTokens();
6980 }
6981 finally {
6982 }
6983 return current;
6984 }
6985 // $ANTLR end "ruleGlobalRelationInterpretation"
6986
6987
6988 // $ANTLR start "entryRuleMultiplicityDefinition"
6989 // InternalSolverLanguage.g:2488:1: entryRuleMultiplicityDefinition returns [EObject current=null] : iv_ruleMultiplicityDefinition= ruleMultiplicityDefinition EOF ;
6990 public final EObject entryRuleMultiplicityDefinition() throws RecognitionException {
6991 EObject current = null;
6992
6993 EObject iv_ruleMultiplicityDefinition = null;
6994
6995
6996 try {
6997 // InternalSolverLanguage.g:2488:63: (iv_ruleMultiplicityDefinition= ruleMultiplicityDefinition EOF )
6998 // InternalSolverLanguage.g:2489:2: iv_ruleMultiplicityDefinition= ruleMultiplicityDefinition EOF
6999 {
7000 newCompositeNode(grammarAccess.getMultiplicityDefinitionRule());
7001 pushFollow(FOLLOW_1);
7002 iv_ruleMultiplicityDefinition=ruleMultiplicityDefinition();
7003
7004 state._fsp--;
7005
7006 current =iv_ruleMultiplicityDefinition;
7007 match(input,EOF,FOLLOW_2);
7008
7009 }
7010
7011 }
7012
7013 catch (RecognitionException re) {
7014 recover(input,re);
7015 appendSkippedTokens();
7016 }
7017 finally {
7018 }
7019 return current;
7020 }
7021 // $ANTLR end "entryRuleMultiplicityDefinition"
7022
7023
7024 // $ANTLR start "ruleMultiplicityDefinition"
7025 // InternalSolverLanguage.g:2495:1: ruleMultiplicityDefinition returns [EObject current=null] : ( ( (lv_lower_0_0= RULE_INT ) ) otherlv_1= '..' ( ( (lv_upper_2_0= RULE_INT ) ) | ( (lv_unlimitedUpper_3_0= '*' ) ) ) ) ;
7026 public final EObject ruleMultiplicityDefinition() throws RecognitionException {
7027 EObject current = null;
7028
7029 Token lv_lower_0_0=null;
7030 Token otherlv_1=null;
7031 Token lv_upper_2_0=null;
7032 Token lv_unlimitedUpper_3_0=null;
7033
7034
7035 enterRule();
7036
7037 try {
7038 // InternalSolverLanguage.g:2501:2: ( ( ( (lv_lower_0_0= RULE_INT ) ) otherlv_1= '..' ( ( (lv_upper_2_0= RULE_INT ) ) | ( (lv_unlimitedUpper_3_0= '*' ) ) ) ) )
7039 // InternalSolverLanguage.g:2502:2: ( ( (lv_lower_0_0= RULE_INT ) ) otherlv_1= '..' ( ( (lv_upper_2_0= RULE_INT ) ) | ( (lv_unlimitedUpper_3_0= '*' ) ) ) )
7040 {
7041 // InternalSolverLanguage.g:2502:2: ( ( (lv_lower_0_0= RULE_INT ) ) otherlv_1= '..' ( ( (lv_upper_2_0= RULE_INT ) ) | ( (lv_unlimitedUpper_3_0= '*' ) ) ) )
7042 // InternalSolverLanguage.g:2503:3: ( (lv_lower_0_0= RULE_INT ) ) otherlv_1= '..' ( ( (lv_upper_2_0= RULE_INT ) ) | ( (lv_unlimitedUpper_3_0= '*' ) ) )
7043 {
7044 // InternalSolverLanguage.g:2503:3: ( (lv_lower_0_0= RULE_INT ) )
7045 // InternalSolverLanguage.g:2504:4: (lv_lower_0_0= RULE_INT )
7046 {
7047 // InternalSolverLanguage.g:2504:4: (lv_lower_0_0= RULE_INT )
7048 // InternalSolverLanguage.g:2505:5: lv_lower_0_0= RULE_INT
7049 {
7050 lv_lower_0_0=(Token)match(input,RULE_INT,FOLLOW_32);
7051
7052 newLeafNode(lv_lower_0_0, grammarAccess.getMultiplicityDefinitionAccess().getLowerINTTerminalRuleCall_0_0());
7053
7054
7055 if (current==null) {
7056 current = createModelElement(grammarAccess.getMultiplicityDefinitionRule());
7057 }
7058 setWithLastConsumed(
7059 current,
7060 "lower",
7061 lv_lower_0_0,
7062 "org.eclipse.xtext.common.Terminals.INT");
7063
7064
7065 }
7066
7067
7068 }
7069
7070 otherlv_1=(Token)match(input,40,FOLLOW_33);
7071
7072 newLeafNode(otherlv_1, grammarAccess.getMultiplicityDefinitionAccess().getFullStopFullStopKeyword_1());
7073
7074 // InternalSolverLanguage.g:2525:3: ( ( (lv_upper_2_0= RULE_INT ) ) | ( (lv_unlimitedUpper_3_0= '*' ) ) )
7075 int alt40=2;
7076 int LA40_0 = input.LA(1);
7077
7078 if ( (LA40_0==RULE_INT) ) {
7079 alt40=1;
7080 }
7081 else if ( (LA40_0==30) ) {
7082 alt40=2;
7083 }
7084 else {
7085 NoViableAltException nvae =
7086 new NoViableAltException("", 40, 0, input);
7087
7088 throw nvae;
7089 }
7090 switch (alt40) {
7091 case 1 :
7092 // InternalSolverLanguage.g:2526:4: ( (lv_upper_2_0= RULE_INT ) )
7093 {
7094 // InternalSolverLanguage.g:2526:4: ( (lv_upper_2_0= RULE_INT ) )
7095 // InternalSolverLanguage.g:2527:5: (lv_upper_2_0= RULE_INT )
7096 {
7097 // InternalSolverLanguage.g:2527:5: (lv_upper_2_0= RULE_INT )
7098 // InternalSolverLanguage.g:2528:6: lv_upper_2_0= RULE_INT
7099 {
7100 lv_upper_2_0=(Token)match(input,RULE_INT,FOLLOW_2);
7101
7102 newLeafNode(lv_upper_2_0, grammarAccess.getMultiplicityDefinitionAccess().getUpperINTTerminalRuleCall_2_0_0());
7103
7104
7105 if (current==null) {
7106 current = createModelElement(grammarAccess.getMultiplicityDefinitionRule());
7107 }
7108 setWithLastConsumed(
7109 current,
7110 "upper",
7111 lv_upper_2_0,
7112 "org.eclipse.xtext.common.Terminals.INT");
7113
7114
7115 }
7116
7117
7118 }
7119
7120
7121 }
7122 break;
7123 case 2 :
7124 // InternalSolverLanguage.g:2545:4: ( (lv_unlimitedUpper_3_0= '*' ) )
7125 {
7126 // InternalSolverLanguage.g:2545:4: ( (lv_unlimitedUpper_3_0= '*' ) )
7127 // InternalSolverLanguage.g:2546:5: (lv_unlimitedUpper_3_0= '*' )
7128 {
7129 // InternalSolverLanguage.g:2546:5: (lv_unlimitedUpper_3_0= '*' )
7130 // InternalSolverLanguage.g:2547:6: lv_unlimitedUpper_3_0= '*'
7131 {
7132 lv_unlimitedUpper_3_0=(Token)match(input,30,FOLLOW_2);
7133
7134 newLeafNode(lv_unlimitedUpper_3_0, grammarAccess.getMultiplicityDefinitionAccess().getUnlimitedUpperAsteriskKeyword_2_1_0());
7135
7136
7137 if (current==null) {
7138 current = createModelElement(grammarAccess.getMultiplicityDefinitionRule());
7139 }
7140 setWithLastConsumed(current, "unlimitedUpper", true, "*");
7141
7142
7143 }
7144
7145
7146 }
7147
7148
7149 }
7150 break;
7151
7152 }
7153
7154
7155 }
7156
7157
7158 }
7159
7160
7161 leaveRule();
7162
7163 }
7164
7165 catch (RecognitionException re) {
7166 recover(input,re);
7167 appendSkippedTokens();
7168 }
7169 finally {
7170 }
7171 return current;
7172 }
7173 // $ANTLR end "ruleMultiplicityDefinition"
7174
7175 // Delegated rules
7176
7177
7178
7179
7180 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
7181 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
7182 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x000000618BF10022L});
7183 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000010L});
7184 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000001000L});
7185 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000020000L});
7186 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x00000000440C6870L});
7187 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000080000L});
7188 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x000000000001E000L});
7189 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000000020L});
7190 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000004000000L});
7191 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000040020L});
7192 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000030007820L});
7193 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000010001000L});
7194 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000030003820L});
7195 public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000020020L});
7196 public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000080002L});
7197 public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000003F00020L});
7198 public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000020000822L});
7199 public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000060020000L});
7200 public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000004046870L});
7201 public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000004006870L});
7202 public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000000040000L});
7203 public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000200000000L});
7204 public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000C00000000L});
7205 public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000800000020L});
7206 public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000005000000000L});
7207 public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000800000000L});
7208 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000001004000000L});
7209 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000003F00030L});
7210 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000008000000000L});
7211 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000010000000000L});
7212 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000040000010L});
7213
7214} \ No newline at end of file
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/scoping/AbstractSolverLanguageScopeProvider.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/scoping/AbstractSolverLanguageScopeProvider.java
new file mode 100644
index 00000000..52cb01b5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/scoping/AbstractSolverLanguageScopeProvider.java
@@ -0,0 +1,9 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.scoping;
5
6import org.eclipse.xtext.scoping.impl.DelegatingScopeProvider;
7
8public abstract class AbstractSolverLanguageScopeProvider extends DelegatingScopeProvider {
9}
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
new file mode 100644
index 00000000..80f9a02e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java
@@ -0,0 +1,781 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.serializer;
5
6import com.google.inject.Inject;
7import java.util.Set;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.emf.ecore.EPackage;
10import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
11import org.eclipse.viatra.solver.language.solverLanguage.AllInstances;
12import org.eclipse.viatra.solver.language.solverLanguage.AllObjects;
13import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
14import org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse;
15import org.eclipse.viatra.solver.language.solverLanguage.BooleanObject;
16import org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol;
17import org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue;
18import org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation;
19import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
20import org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation;
21import org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation;
22import org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol;
23import org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate;
24import org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol;
25import org.eclipse.viatra.solver.language.solverLanguage.False;
26import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
27import org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation;
28import org.eclipse.viatra.solver.language.solverLanguage.IntObject;
29import org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol;
30import org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure;
31import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
32import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
33import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
34import org.eclipse.viatra.solver.language.solverLanguage.Negative;
35import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
36import org.eclipse.viatra.solver.language.solverLanguage.Positive;
37import org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol;
38import org.eclipse.viatra.solver.language.solverLanguage.Problem;
39import org.eclipse.viatra.solver.language.solverLanguage.RealObject;
40import org.eclipse.viatra.solver.language.solverLanguage.RealSymbol;
41import org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure;
42import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
43import org.eclipse.viatra.solver.language.solverLanguage.StringObject;
44import org.eclipse.viatra.solver.language.solverLanguage.StringSymbol;
45import org.eclipse.viatra.solver.language.solverLanguage.True;
46import org.eclipse.viatra.solver.language.solverLanguage.Unknown;
47import org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject;
48import org.eclipse.viatra.solver.language.solverLanguage.Variable;
49import org.eclipse.xtext.Action;
50import org.eclipse.xtext.Parameter;
51import org.eclipse.xtext.ParserRule;
52import org.eclipse.xtext.serializer.ISerializationContext;
53import org.eclipse.xtext.serializer.acceptor.SequenceFeeder;
54import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer;
55import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient;
56
57@SuppressWarnings("all")
58public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticSequencer {
59
60 @Inject
61 private SolverLanguageGrammarAccess grammarAccess;
62
63 @Override
64 public void sequence(ISerializationContext context, EObject semanticObject) {
65 EPackage epackage = semanticObject.eClass().getEPackage();
66 ParserRule rule = context.getParserRule();
67 Action action = context.getAssignedAction();
68 Set<Parameter> parameters = context.getEnabledBooleanParameters();
69 if (epackage == SolverLanguagePackage.eINSTANCE)
70 switch (semanticObject.eClass().getClassifierID()) {
71 case SolverLanguagePackage.ALL_INSTANCES:
72 sequence_AllInstances(context, (AllInstances) semanticObject);
73 return;
74 case SolverLanguagePackage.ALL_OBJECTS:
75 sequence_AllObjects(context, (AllObjects) semanticObject);
76 return;
77 case SolverLanguagePackage.BASIC_INTERPRETATION:
78 sequence_BasicInterpretation(context, (BasicInterpretation) semanticObject);
79 return;
80 case SolverLanguagePackage.BOOLEAN_FALSE:
81 sequence_BooleanValue(context, (BooleanFalse) semanticObject);
82 return;
83 case SolverLanguagePackage.BOOLEAN_OBJECT:
84 sequence_BooleanObject(context, (BooleanObject) semanticObject);
85 return;
86 case SolverLanguagePackage.BOOLEAN_SYMBOL:
87 sequence_BooleanSymbol(context, (BooleanSymbol) semanticObject);
88 return;
89 case SolverLanguagePackage.BOOLEAN_TRUE:
90 sequence_BooleanValue(context, (BooleanTrue) semanticObject);
91 return;
92 case SolverLanguagePackage.CLASS_INTERPRETATION:
93 sequence_ClassInterpretation(context, (ClassInterpretation) semanticObject);
94 return;
95 case SolverLanguagePackage.CONSTRAINT:
96 sequence_Constraint(context, (Constraint) semanticObject);
97 return;
98 case SolverLanguagePackage.DEFAULT_INTERPRETATION:
99 sequence_DefaultInterpretation(context, (DefaultInterpretation) semanticObject);
100 return;
101 case SolverLanguagePackage.ENUM_INTERPRETATION:
102 sequence_EnumInterpretation(context, (EnumInterpretation) semanticObject);
103 return;
104 case SolverLanguagePackage.EQUALS_SYMBOL:
105 sequence_EqualsSymbol(context, (EqualsSymbol) semanticObject);
106 return;
107 case SolverLanguagePackage.ERROR:
108 sequence_TruthValue(context, (org.eclipse.viatra.solver.language.solverLanguage.Error) semanticObject);
109 return;
110 case SolverLanguagePackage.ERROR_PREDICATE:
111 sequence_ErrorPredicate(context, (ErrorPredicate) semanticObject);
112 return;
113 case SolverLanguagePackage.EXIST_SYMBOL:
114 sequence_ExistSymbol(context, (ExistSymbol) semanticObject);
115 return;
116 case SolverLanguagePackage.FALSE:
117 sequence_TruthValue(context, (False) semanticObject);
118 return;
119 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION:
120 sequence_FieldRelationInterpretation(context, (FieldRelationInterpretation) semanticObject);
121 return;
122 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION:
123 sequence_GlobalRelationInterpretation(context, (GlobalRelationInterpretation) semanticObject);
124 return;
125 case SolverLanguagePackage.INT_OBJECT:
126 sequence_IntObject(context, (IntObject) semanticObject);
127 return;
128 case SolverLanguagePackage.INTEGER_SYMBOL:
129 sequence_IntegerSymbol(context, (IntegerSymbol) semanticObject);
130 return;
131 case SolverLanguagePackage.IRREFLEXIVE_CLOSURE:
132 sequence_ClosureType(context, (IrreflexiveClosure) semanticObject);
133 return;
134 case SolverLanguagePackage.MODEL_SYMBOL:
135 sequence_ModelSymbol(context, (ModelSymbol) semanticObject);
136 return;
137 case SolverLanguagePackage.MULTIPLICITY_DEFINITION:
138 sequence_MultiplicityDefinition(context, (MultiplicityDefinition) semanticObject);
139 return;
140 case SolverLanguagePackage.NAMED_OBJECT:
141 sequence_NamedObject(context, (NamedObject) semanticObject);
142 return;
143 case SolverLanguagePackage.NEGATIVE:
144 sequence_Polarity(context, (Negative) semanticObject);
145 return;
146 case SolverLanguagePackage.PARAMETER:
147 sequence_Parameter(context, (org.eclipse.viatra.solver.language.solverLanguage.Parameter) semanticObject);
148 return;
149 case SolverLanguagePackage.PATTERN_BODY:
150 sequence_PatternBody(context, (PatternBody) semanticObject);
151 return;
152 case SolverLanguagePackage.POSITIVE:
153 sequence_Polarity(context, (Positive) semanticObject);
154 return;
155 case SolverLanguagePackage.PREDICATE_SYMBOL:
156 sequence_PredicateSymbol(context, (PredicateSymbol) semanticObject);
157 return;
158 case SolverLanguagePackage.PROBLEM:
159 sequence_Problem(context, (Problem) semanticObject);
160 return;
161 case SolverLanguagePackage.REAL_OBJECT:
162 sequence_RealObject(context, (RealObject) semanticObject);
163 return;
164 case SolverLanguagePackage.REAL_SYMBOL:
165 sequence_RealSymbol(context, (RealSymbol) semanticObject);
166 return;
167 case SolverLanguagePackage.REFLEXIVE_CLOSURE:
168 sequence_ClosureType(context, (ReflexiveClosure) semanticObject);
169 return;
170 case SolverLanguagePackage.STRING_OBJECT:
171 sequence_StringObject(context, (StringObject) semanticObject);
172 return;
173 case SolverLanguagePackage.STRING_SYMBOL:
174 sequence_StringSymbol(context, (StringSymbol) semanticObject);
175 return;
176 case SolverLanguagePackage.TRUE:
177 sequence_TruthValue(context, (True) semanticObject);
178 return;
179 case SolverLanguagePackage.UNKNOWN:
180 sequence_TruthValue(context, (Unknown) semanticObject);
181 return;
182 case SolverLanguagePackage.UNNAMED_OBJECT:
183 sequence_UnnamedObject(context, (UnnamedObject) semanticObject);
184 return;
185 case SolverLanguagePackage.VARIABLE:
186 sequence_Variable(context, (Variable) semanticObject);
187 return;
188 }
189 if (errorAcceptor != null)
190 errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
191 }
192
193 /**
194 * Contexts:
195 * ComplexObject returns AllInstances
196 * AllInstances returns AllInstances
197 *
198 * Constraint:
199 * symbol=Symbol
200 */
201 protected void sequence_AllInstances(ISerializationContext context, AllInstances semanticObject) {
202 if (errorAcceptor != null) {
203 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.ALL_INSTANCES__SYMBOL) == ValueTransient.YES)
204 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.ALL_INSTANCES__SYMBOL));
205 }
206 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
207 feeder.accept(grammarAccess.getAllInstancesAccess().getSymbolSymbolParserRuleCall_1_0(), semanticObject.getSymbol());
208 feeder.finish();
209 }
210
211
212 /**
213 * Contexts:
214 * ComplexObject returns AllObjects
215 * AllObjects returns AllObjects
216 *
217 * Constraint:
218 * {AllObjects}
219 */
220 protected void sequence_AllObjects(ISerializationContext context, AllObjects semanticObject) {
221 genericSequencer.createSequence(context, semanticObject);
222 }
223
224
225 /**
226 * Contexts:
227 * Statement returns BasicInterpretation
228 * Interpretation returns BasicInterpretation
229 * BasicInterpretation returns BasicInterpretation
230 *
231 * Constraint:
232 * (symbol=Symbol objects+=ComplexObject* value=TruthValue)
233 */
234 protected void sequence_BasicInterpretation(ISerializationContext context, BasicInterpretation semanticObject) {
235 genericSequencer.createSequence(context, semanticObject);
236 }
237
238
239 /**
240 * Contexts:
241 * ComplexObject returns BooleanObject
242 * Object returns BooleanObject
243 * DataObject returns BooleanObject
244 * BooleanObject returns BooleanObject
245 * Literal returns BooleanObject
246 *
247 * Constraint:
248 * value=BooleanValue
249 */
250 protected void sequence_BooleanObject(ISerializationContext context, BooleanObject semanticObject) {
251 if (errorAcceptor != null) {
252 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.BOOLEAN_OBJECT__VALUE) == ValueTransient.YES)
253 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.BOOLEAN_OBJECT__VALUE));
254 }
255 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
256 feeder.accept(grammarAccess.getBooleanObjectAccess().getValueBooleanValueParserRuleCall_0(), semanticObject.getValue());
257 feeder.finish();
258 }
259
260
261 /**
262 * Contexts:
263 * Symbol returns BooleanSymbol
264 * DataSymbol returns BooleanSymbol
265 * BooleanSymbol returns BooleanSymbol
266 *
267 * Constraint:
268 * {BooleanSymbol}
269 */
270 protected void sequence_BooleanSymbol(ISerializationContext context, BooleanSymbol semanticObject) {
271 genericSequencer.createSequence(context, semanticObject);
272 }
273
274
275 /**
276 * Contexts:
277 * BooleanValue returns BooleanFalse
278 *
279 * Constraint:
280 * {BooleanFalse}
281 */
282 protected void sequence_BooleanValue(ISerializationContext context, BooleanFalse semanticObject) {
283 genericSequencer.createSequence(context, semanticObject);
284 }
285
286
287 /**
288 * Contexts:
289 * BooleanValue returns BooleanTrue
290 *
291 * Constraint:
292 * {BooleanTrue}
293 */
294 protected void sequence_BooleanValue(ISerializationContext context, BooleanTrue semanticObject) {
295 genericSequencer.createSequence(context, semanticObject);
296 }
297
298
299 /**
300 * Contexts:
301 * Statement returns ClassInterpretation
302 * Interpretation returns ClassInterpretation
303 * CDInterpretation returns ClassInterpretation
304 * ClassInterpretation returns ClassInterpretation
305 *
306 * Constraint:
307 * (abstract?='abstract' symbol=ModelSymbol supertypes+=ModelSymbol* fielt+=FieldRelationInterpretation*)
308 */
309 protected void sequence_ClassInterpretation(ISerializationContext context, ClassInterpretation semanticObject) {
310 genericSequencer.createSequence(context, semanticObject);
311 }
312
313
314 /**
315 * Contexts:
316 * ClosureType returns IrreflexiveClosure
317 *
318 * Constraint:
319 * {IrreflexiveClosure}
320 */
321 protected void sequence_ClosureType(ISerializationContext context, IrreflexiveClosure semanticObject) {
322 genericSequencer.createSequence(context, semanticObject);
323 }
324
325
326 /**
327 * Contexts:
328 * ClosureType returns ReflexiveClosure
329 *
330 * Constraint:
331 * {ReflexiveClosure}
332 */
333 protected void sequence_ClosureType(ISerializationContext context, ReflexiveClosure semanticObject) {
334 genericSequencer.createSequence(context, semanticObject);
335 }
336
337
338 /**
339 * Contexts:
340 * Constraint returns Constraint
341 *
342 * Constraint:
343 * (polarity=Polarity? symbol=ModelSymbol (params+=Literal+ | (closureType=ClosureType params+=Literal params+=Literal))?)
344 */
345 protected void sequence_Constraint(ISerializationContext context, Constraint semanticObject) {
346 genericSequencer.createSequence(context, semanticObject);
347 }
348
349
350 /**
351 * Contexts:
352 * Statement returns DefaultInterpretation
353 * Interpretation returns DefaultInterpretation
354 * DefaultInterpretation returns DefaultInterpretation
355 *
356 * Constraint:
357 * interpretation=BasicInterpretation
358 */
359 protected void sequence_DefaultInterpretation(ISerializationContext context, DefaultInterpretation semanticObject) {
360 if (errorAcceptor != null) {
361 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.DEFAULT_INTERPRETATION__INTERPRETATION) == ValueTransient.YES)
362 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.DEFAULT_INTERPRETATION__INTERPRETATION));
363 }
364 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
365 feeder.accept(grammarAccess.getDefaultInterpretationAccess().getInterpretationBasicInterpretationParserRuleCall_1_0(), semanticObject.getInterpretation());
366 feeder.finish();
367 }
368
369
370 /**
371 * Contexts:
372 * Statement returns EnumInterpretation
373 * Interpretation returns EnumInterpretation
374 * CDInterpretation returns EnumInterpretation
375 * EnumInterpretation returns EnumInterpretation
376 *
377 * Constraint:
378 * (Symbol=ModelSymbol objects+=NamedObject+)
379 */
380 protected void sequence_EnumInterpretation(ISerializationContext context, EnumInterpretation semanticObject) {
381 genericSequencer.createSequence(context, semanticObject);
382 }
383
384
385 /**
386 * Contexts:
387 * Symbol returns EqualsSymbol
388 * PartialitySymbol returns EqualsSymbol
389 * EqualsSymbol returns EqualsSymbol
390 *
391 * Constraint:
392 * {EqualsSymbol}
393 */
394 protected void sequence_EqualsSymbol(ISerializationContext context, EqualsSymbol semanticObject) {
395 genericSequencer.createSequence(context, semanticObject);
396 }
397
398
399 /**
400 * Contexts:
401 * Statement returns ErrorPredicate
402 * Predicate returns ErrorPredicate
403 * ErrorPredicate returns ErrorPredicate
404 *
405 * Constraint:
406 * (name=ID? parameters+=Parameter* (bodies+=PatternBody bodies+=PatternBody*)?)
407 */
408 protected void sequence_ErrorPredicate(ISerializationContext context, ErrorPredicate semanticObject) {
409 genericSequencer.createSequence(context, semanticObject);
410 }
411
412
413 /**
414 * Contexts:
415 * Symbol returns ExistSymbol
416 * PartialitySymbol returns ExistSymbol
417 * ExistSymbol returns ExistSymbol
418 *
419 * Constraint:
420 * {ExistSymbol}
421 */
422 protected void sequence_ExistSymbol(ISerializationContext context, ExistSymbol semanticObject) {
423 genericSequencer.createSequence(context, semanticObject);
424 }
425
426
427 /**
428 * Contexts:
429 * FieldRelationInterpretation returns FieldRelationInterpretation
430 *
431 * Constraint:
432 * (containment?='containment' symbol=ModelSymbol multiplicity=MultiplicityDefinition? target=Symbol)
433 */
434 protected void sequence_FieldRelationInterpretation(ISerializationContext context, FieldRelationInterpretation semanticObject) {
435 genericSequencer.createSequence(context, semanticObject);
436 }
437
438
439 /**
440 * Contexts:
441 * Statement returns GlobalRelationInterpretation
442 * Interpretation returns GlobalRelationInterpretation
443 * CDInterpretation returns GlobalRelationInterpretation
444 * GlobalRelationInterpretation returns GlobalRelationInterpretation
445 *
446 * Constraint:
447 * (
448 * containment?='containment'
449 * symbol=ModelSymbol
450 * sourceMultiplicity=MultiplicityDefinition?
451 * source=Symbol
452 * targetMultiplicity=MultiplicityDefinition?
453 * target=Symbol
454 * )
455 */
456 protected void sequence_GlobalRelationInterpretation(ISerializationContext context, GlobalRelationInterpretation semanticObject) {
457 genericSequencer.createSequence(context, semanticObject);
458 }
459
460
461 /**
462 * Contexts:
463 * ComplexObject returns IntObject
464 * Object returns IntObject
465 * DataObject returns IntObject
466 * IntObject returns IntObject
467 * Literal returns IntObject
468 *
469 * Constraint:
470 * value=INTLiteral
471 */
472 protected void sequence_IntObject(ISerializationContext context, IntObject semanticObject) {
473 if (errorAcceptor != null) {
474 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.INT_OBJECT__VALUE) == ValueTransient.YES)
475 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INT_OBJECT__VALUE));
476 }
477 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
478 feeder.accept(grammarAccess.getIntObjectAccess().getValueINTLiteralParserRuleCall_0(), semanticObject.getValue());
479 feeder.finish();
480 }
481
482
483 /**
484 * Contexts:
485 * Symbol returns IntegerSymbol
486 * DataSymbol returns IntegerSymbol
487 * IntegerSymbol returns IntegerSymbol
488 *
489 * Constraint:
490 * {IntegerSymbol}
491 */
492 protected void sequence_IntegerSymbol(ISerializationContext context, IntegerSymbol semanticObject) {
493 genericSequencer.createSequence(context, semanticObject);
494 }
495
496
497 /**
498 * Contexts:
499 * Symbol returns ModelSymbol
500 * ModelSymbol returns ModelSymbol
501 *
502 * Constraint:
503 * name=ID
504 */
505 protected void sequence_ModelSymbol(ISerializationContext context, ModelSymbol semanticObject) {
506 if (errorAcceptor != null) {
507 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.MODEL_SYMBOL__NAME) == ValueTransient.YES)
508 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.MODEL_SYMBOL__NAME));
509 }
510 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
511 feeder.accept(grammarAccess.getModelSymbolAccess().getNameIDTerminalRuleCall_0(), semanticObject.getName());
512 feeder.finish();
513 }
514
515
516 /**
517 * Contexts:
518 * MultiplicityDefinition returns MultiplicityDefinition
519 *
520 * Constraint:
521 * (lower=INT (upper=INT | unlimitedUpper?='*'))
522 */
523 protected void sequence_MultiplicityDefinition(ISerializationContext context, MultiplicityDefinition semanticObject) {
524 genericSequencer.createSequence(context, semanticObject);
525 }
526
527
528 /**
529 * Contexts:
530 * ComplexObject returns NamedObject
531 * Object returns NamedObject
532 * NamedObject returns NamedObject
533 *
534 * Constraint:
535 * name=ID
536 */
537 protected void sequence_NamedObject(ISerializationContext context, NamedObject semanticObject) {
538 if (errorAcceptor != null) {
539 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.NAMED_OBJECT__NAME) == ValueTransient.YES)
540 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.NAMED_OBJECT__NAME));
541 }
542 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
543 feeder.accept(grammarAccess.getNamedObjectAccess().getNameIDTerminalRuleCall_1_0(), semanticObject.getName());
544 feeder.finish();
545 }
546
547
548 /**
549 * Contexts:
550 * Parameter returns Parameter
551 *
552 * Constraint:
553 * (variable=Variable type=Symbol?)
554 */
555 protected void sequence_Parameter(ISerializationContext context, org.eclipse.viatra.solver.language.solverLanguage.Parameter semanticObject) {
556 genericSequencer.createSequence(context, semanticObject);
557 }
558
559
560 /**
561 * Contexts:
562 * PatternBody returns PatternBody
563 *
564 * Constraint:
565 * constraints+=Constraint*
566 */
567 protected void sequence_PatternBody(ISerializationContext context, PatternBody semanticObject) {
568 genericSequencer.createSequence(context, semanticObject);
569 }
570
571
572 /**
573 * Contexts:
574 * Polarity returns Negative
575 *
576 * Constraint:
577 * {Negative}
578 */
579 protected void sequence_Polarity(ISerializationContext context, Negative semanticObject) {
580 genericSequencer.createSequence(context, semanticObject);
581 }
582
583
584 /**
585 * Contexts:
586 * Polarity returns Positive
587 *
588 * Constraint:
589 * {Positive}
590 */
591 protected void sequence_Polarity(ISerializationContext context, Positive semanticObject) {
592 genericSequencer.createSequence(context, semanticObject);
593 }
594
595
596 /**
597 * Contexts:
598 * Statement returns PredicateSymbol
599 * Predicate returns PredicateSymbol
600 * PredicateSymbol returns PredicateSymbol
601 *
602 * Constraint:
603 * (symbol=ModelSymbol parameters+=Parameter* (bodies+=PatternBody bodies+=PatternBody*)?)
604 */
605 protected void sequence_PredicateSymbol(ISerializationContext context, PredicateSymbol semanticObject) {
606 genericSequencer.createSequence(context, semanticObject);
607 }
608
609
610 /**
611 * Contexts:
612 * Problem returns Problem
613 *
614 * Constraint:
615 * statements+=Statement+
616 */
617 protected void sequence_Problem(ISerializationContext context, Problem semanticObject) {
618 genericSequencer.createSequence(context, semanticObject);
619 }
620
621
622 /**
623 * Contexts:
624 * ComplexObject returns RealObject
625 * Object returns RealObject
626 * DataObject returns RealObject
627 * RealObject returns RealObject
628 * Literal returns RealObject
629 *
630 * Constraint:
631 * value=REALLiteral
632 */
633 protected void sequence_RealObject(ISerializationContext context, RealObject semanticObject) {
634 if (errorAcceptor != null) {
635 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.REAL_OBJECT__VALUE) == ValueTransient.YES)
636 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.REAL_OBJECT__VALUE));
637 }
638 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
639 feeder.accept(grammarAccess.getRealObjectAccess().getValueREALLiteralParserRuleCall_0(), semanticObject.getValue());
640 feeder.finish();
641 }
642
643
644 /**
645 * Contexts:
646 * Symbol returns RealSymbol
647 * DataSymbol returns RealSymbol
648 * RealSymbol returns RealSymbol
649 *
650 * Constraint:
651 * {RealSymbol}
652 */
653 protected void sequence_RealSymbol(ISerializationContext context, RealSymbol semanticObject) {
654 genericSequencer.createSequence(context, semanticObject);
655 }
656
657
658 /**
659 * Contexts:
660 * ComplexObject returns StringObject
661 * Object returns StringObject
662 * DataObject returns StringObject
663 * StringObject returns StringObject
664 * Literal returns StringObject
665 *
666 * Constraint:
667 * value=STRING
668 */
669 protected void sequence_StringObject(ISerializationContext context, StringObject semanticObject) {
670 if (errorAcceptor != null) {
671 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.STRING_OBJECT__VALUE) == ValueTransient.YES)
672 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.STRING_OBJECT__VALUE));
673 }
674 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
675 feeder.accept(grammarAccess.getStringObjectAccess().getValueSTRINGTerminalRuleCall_0(), semanticObject.getValue());
676 feeder.finish();
677 }
678
679
680 /**
681 * Contexts:
682 * Symbol returns StringSymbol
683 * DataSymbol returns StringSymbol
684 * StringSymbol returns StringSymbol
685 *
686 * Constraint:
687 * {StringSymbol}
688 */
689 protected void sequence_StringSymbol(ISerializationContext context, StringSymbol semanticObject) {
690 genericSequencer.createSequence(context, semanticObject);
691 }
692
693
694 /**
695 * Contexts:
696 * TruthValue returns Error
697 *
698 * Constraint:
699 * {Error}
700 */
701 protected void sequence_TruthValue(ISerializationContext context, org.eclipse.viatra.solver.language.solverLanguage.Error semanticObject) {
702 genericSequencer.createSequence(context, semanticObject);
703 }
704
705
706 /**
707 * Contexts:
708 * TruthValue returns False
709 *
710 * Constraint:
711 * {False}
712 */
713 protected void sequence_TruthValue(ISerializationContext context, False semanticObject) {
714 genericSequencer.createSequence(context, semanticObject);
715 }
716
717
718 /**
719 * Contexts:
720 * TruthValue returns True
721 *
722 * Constraint:
723 * {True}
724 */
725 protected void sequence_TruthValue(ISerializationContext context, True semanticObject) {
726 genericSequencer.createSequence(context, semanticObject);
727 }
728
729
730 /**
731 * Contexts:
732 * TruthValue returns Unknown
733 *
734 * Constraint:
735 * {Unknown}
736 */
737 protected void sequence_TruthValue(ISerializationContext context, Unknown semanticObject) {
738 genericSequencer.createSequence(context, semanticObject);
739 }
740
741
742 /**
743 * Contexts:
744 * ComplexObject returns UnnamedObject
745 * Object returns UnnamedObject
746 * UnnamedObject returns UnnamedObject
747 *
748 * Constraint:
749 * name=ID
750 */
751 protected void sequence_UnnamedObject(ISerializationContext context, UnnamedObject semanticObject) {
752 if (errorAcceptor != null) {
753 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.UNNAMED_OBJECT__NAME) == ValueTransient.YES)
754 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.UNNAMED_OBJECT__NAME));
755 }
756 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
757 feeder.accept(grammarAccess.getUnnamedObjectAccess().getNameIDTerminalRuleCall_0(), semanticObject.getName());
758 feeder.finish();
759 }
760
761
762 /**
763 * Contexts:
764 * Literal returns Variable
765 * Variable returns Variable
766 *
767 * Constraint:
768 * name=ID
769 */
770 protected void sequence_Variable(ISerializationContext context, Variable semanticObject) {
771 if (errorAcceptor != null) {
772 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.VARIABLE__NAME) == ValueTransient.YES)
773 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.VARIABLE__NAME));
774 }
775 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
776 feeder.accept(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_0(), semanticObject.getName());
777 feeder.finish();
778 }
779
780
781}
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
new file mode 100644
index 00000000..5145bfac
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSyntacticSequencer.java
@@ -0,0 +1,60 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.serializer;
5
6import com.google.inject.Inject;
7import java.util.List;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
10import org.eclipse.xtext.IGrammarAccess;
11import org.eclipse.xtext.RuleCall;
12import org.eclipse.xtext.nodemodel.INode;
13import org.eclipse.xtext.serializer.analysis.GrammarAlias.AbstractElementAlias;
14import org.eclipse.xtext.serializer.analysis.GrammarAlias.TokenAlias;
15import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynNavigable;
16import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynTransition;
17import org.eclipse.xtext.serializer.sequencer.AbstractSyntacticSequencer;
18
19@SuppressWarnings("all")
20public class SolverLanguageSyntacticSequencer extends AbstractSyntacticSequencer {
21
22 protected SolverLanguageGrammarAccess grammarAccess;
23 protected AbstractElementAlias match_PatternBody_TrueKeyword_1_0_q;
24
25 @Inject
26 protected void init(IGrammarAccess access) {
27 grammarAccess = (SolverLanguageGrammarAccess) access;
28 match_PatternBody_TrueKeyword_1_0_q = new TokenAlias(false, true, grammarAccess.getPatternBodyAccess().getTrueKeyword_1_0());
29 }
30
31 @Override
32 protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) {
33 return "";
34 }
35
36
37 @Override
38 protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) {
39 if (transition.getAmbiguousSyntaxes().isEmpty()) return;
40 List<INode> transitionNodes = collectNodes(fromNode, toNode);
41 for (AbstractElementAlias syntax : transition.getAmbiguousSyntaxes()) {
42 List<INode> syntaxNodes = getNodesFor(transitionNodes, syntax);
43 if (match_PatternBody_TrueKeyword_1_0_q.equals(syntax))
44 emit_PatternBody_TrueKeyword_1_0_q(semanticObject, getLastNavigableState(), syntaxNodes);
45 else acceptNodes(getLastNavigableState(), syntaxNodes);
46 }
47 }
48
49 /**
50 * Ambiguous syntax:
51 * 'true'?
52 *
53 * This ambiguous syntax occurs at:
54 * (rule start) (ambiguity) (rule start)
55 */
56 protected void emit_PatternBody_TrueKeyword_1_0_q(EObject semanticObject, ISynNavigable transition, List<INode> nodes) {
57 acceptNodes(transition, nodes);
58 }
59
60}
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
new file mode 100644
index 00000000..fb5ea124
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/services/SolverLanguageGrammarAccess.java
@@ -0,0 +1,2124 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.services;
5
6import com.google.inject.Inject;
7import com.google.inject.Singleton;
8import java.util.List;
9import org.eclipse.xtext.Action;
10import org.eclipse.xtext.Alternatives;
11import org.eclipse.xtext.Assignment;
12import org.eclipse.xtext.Grammar;
13import org.eclipse.xtext.GrammarUtil;
14import org.eclipse.xtext.Group;
15import org.eclipse.xtext.Keyword;
16import org.eclipse.xtext.ParserRule;
17import org.eclipse.xtext.RuleCall;
18import org.eclipse.xtext.TerminalRule;
19import org.eclipse.xtext.common.services.TerminalsGrammarAccess;
20import org.eclipse.xtext.service.AbstractElementFinder.AbstractGrammarElementFinder;
21import org.eclipse.xtext.service.GrammarProvider;
22
23@Singleton
24public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder {
25
26 public class ProblemElements extends AbstractParserRuleElementFinder {
27 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Problem");
28 private final Assignment cStatementsAssignment = (Assignment)rule.eContents().get(1);
29 private final RuleCall cStatementsStatementParserRuleCall_0 = (RuleCall)cStatementsAssignment.eContents().get(0);
30
31 //Problem:
32 // statements+=Statement*;
33 @Override public ParserRule getRule() { return rule; }
34
35 //statements+=Statement*
36 public Assignment getStatementsAssignment() { return cStatementsAssignment; }
37
38 //Statement
39 public RuleCall getStatementsStatementParserRuleCall_0() { return cStatementsStatementParserRuleCall_0; }
40 }
41 public class StatementElements extends AbstractParserRuleElementFinder {
42 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Statement");
43 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
44 private final RuleCall cInterpretationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
45 private final RuleCall cPredicateParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
46
47 //Statement:
48 // Interpretation | Predicate;
49 @Override public ParserRule getRule() { return rule; }
50
51 //Interpretation | Predicate
52 public Alternatives getAlternatives() { return cAlternatives; }
53
54 //Interpretation
55 public RuleCall getInterpretationParserRuleCall_0() { return cInterpretationParserRuleCall_0; }
56
57 //Predicate
58 public RuleCall getPredicateParserRuleCall_1() { return cPredicateParserRuleCall_1; }
59 }
60 public class REALLiteralElements extends AbstractParserRuleElementFinder {
61 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.REALLiteral");
62 private final Group cGroup = (Group)rule.eContents().get(1);
63 private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
64 private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
65 private final Keyword cFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2);
66 private final RuleCall cINTTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3);
67
68 //REALLiteral ecore::EBigDecimal:
69 // '-'? INT '.' INT;
70 @Override public ParserRule getRule() { return rule; }
71
72 //'-'? INT '.' INT
73 public Group getGroup() { return cGroup; }
74
75 //'-'?
76 public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; }
77
78 //INT
79 public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
80
81 //'.'
82 public Keyword getFullStopKeyword_2() { return cFullStopKeyword_2; }
83
84 //INT
85 public RuleCall getINTTerminalRuleCall_3() { return cINTTerminalRuleCall_3; }
86 }
87 public class INTLiteralElements extends AbstractParserRuleElementFinder {
88 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.INTLiteral");
89 private final Group cGroup = (Group)rule.eContents().get(1);
90 private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0);
91 private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1);
92
93 //INTLiteral ecore::EInt:
94 // '-'? INT;
95 @Override public ParserRule getRule() { return rule; }
96
97 //'-'? INT
98 public Group getGroup() { return cGroup; }
99
100 //'-'?
101 public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; }
102
103 //INT
104 public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; }
105 }
106 public class BooleanValueElements extends AbstractParserRuleElementFinder {
107 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BooleanValue");
108 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
109 private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0);
110 private final Action cBooleanTrueAction_0_0 = (Action)cGroup_0.eContents().get(0);
111 private final Keyword cTrueKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
112 private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
113 private final Keyword cFalseKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
114 private final Action cBooleanFalseAction_1_1 = (Action)cGroup_1.eContents().get(1);
115
116 //BooleanValue:
117 // {BooleanTrue} 'true' | 'false' {BooleanFalse};
118 @Override public ParserRule getRule() { return rule; }
119
120 //{BooleanTrue} 'true' | 'false' {BooleanFalse}
121 public Alternatives getAlternatives() { return cAlternatives; }
122
123 //{BooleanTrue} 'true'
124 public Group getGroup_0() { return cGroup_0; }
125
126 //{BooleanTrue}
127 public Action getBooleanTrueAction_0_0() { return cBooleanTrueAction_0_0; }
128
129 //'true'
130 public Keyword getTrueKeyword_0_1() { return cTrueKeyword_0_1; }
131
132 //'false' {BooleanFalse}
133 public Group getGroup_1() { return cGroup_1; }
134
135 //'false'
136 public Keyword getFalseKeyword_1_0() { return cFalseKeyword_1_0; }
137
138 //{BooleanFalse}
139 public Action getBooleanFalseAction_1_1() { return cBooleanFalseAction_1_1; }
140 }
141 public class TruthValueElements extends AbstractParserRuleElementFinder {
142 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.TruthValue");
143 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
144 private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0);
145 private final Action cTrueAction_0_0 = (Action)cGroup_0.eContents().get(0);
146 private final Keyword cTrueKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
147 private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
148 private final Action cFalseAction_1_0 = (Action)cGroup_1.eContents().get(0);
149 private final Keyword cFalseKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
150 private final Group cGroup_2 = (Group)cAlternatives.eContents().get(2);
151 private final Action cUnknownAction_2_0 = (Action)cGroup_2.eContents().get(0);
152 private final Keyword cUnknownKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1);
153 private final Group cGroup_3 = (Group)cAlternatives.eContents().get(3);
154 private final Action cErrorAction_3_0 = (Action)cGroup_3.eContents().get(0);
155 private final Keyword cErrorKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1);
156
157 //TruthValue:
158 // {True} 'true' | {False} 'false' | {Unknown} 'unknown' | {Error} 'error';
159 @Override public ParserRule getRule() { return rule; }
160
161 //{True} 'true' | {False} 'false' | {Unknown} 'unknown' | {Error} 'error'
162 public Alternatives getAlternatives() { return cAlternatives; }
163
164 //{True} 'true'
165 public Group getGroup_0() { return cGroup_0; }
166
167 //{True}
168 public Action getTrueAction_0_0() { return cTrueAction_0_0; }
169
170 //'true'
171 public Keyword getTrueKeyword_0_1() { return cTrueKeyword_0_1; }
172
173 //{False} 'false'
174 public Group getGroup_1() { return cGroup_1; }
175
176 //{False}
177 public Action getFalseAction_1_0() { return cFalseAction_1_0; }
178
179 //'false'
180 public Keyword getFalseKeyword_1_1() { return cFalseKeyword_1_1; }
181
182 //{Unknown} 'unknown'
183 public Group getGroup_2() { return cGroup_2; }
184
185 //{Unknown}
186 public Action getUnknownAction_2_0() { return cUnknownAction_2_0; }
187
188 //'unknown'
189 public Keyword getUnknownKeyword_2_1() { return cUnknownKeyword_2_1; }
190
191 //{Error} 'error'
192 public Group getGroup_3() { return cGroup_3; }
193
194 //{Error}
195 public Action getErrorAction_3_0() { return cErrorAction_3_0; }
196
197 //'error'
198 public Keyword getErrorKeyword_3_1() { return cErrorKeyword_3_1; }
199 }
200 public class InterpretationElements extends AbstractParserRuleElementFinder {
201 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Interpretation");
202 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
203 private final RuleCall cBasicInterpretationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
204 private final RuleCall cDefaultInterpretationParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
205 private final RuleCall cCDInterpretationParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
206
207 /////////////////////
208 //// Core grammar
209 // ///////////////////
210 //Interpretation:
211 // BasicInterpretation | DefaultInterpretation | CDInterpretation;
212 @Override public ParserRule getRule() { return rule; }
213
214 //BasicInterpretation | DefaultInterpretation | CDInterpretation
215 public Alternatives getAlternatives() { return cAlternatives; }
216
217 //BasicInterpretation
218 public RuleCall getBasicInterpretationParserRuleCall_0() { return cBasicInterpretationParserRuleCall_0; }
219
220 //DefaultInterpretation
221 public RuleCall getDefaultInterpretationParserRuleCall_1() { return cDefaultInterpretationParserRuleCall_1; }
222
223 //CDInterpretation
224 public RuleCall getCDInterpretationParserRuleCall_2() { return cCDInterpretationParserRuleCall_2; }
225 }
226 public class BasicInterpretationElements extends AbstractParserRuleElementFinder {
227 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BasicInterpretation");
228 private final Group cGroup = (Group)rule.eContents().get(1);
229 private final Assignment cSymbolAssignment_0 = (Assignment)cGroup.eContents().get(0);
230 private final RuleCall cSymbolSymbolParserRuleCall_0_0 = (RuleCall)cSymbolAssignment_0.eContents().get(0);
231 private final Keyword cLeftParenthesisKeyword_1 = (Keyword)cGroup.eContents().get(1);
232 private final Assignment cObjectsAssignment_2 = (Assignment)cGroup.eContents().get(2);
233 private final RuleCall cObjectsComplexObjectParserRuleCall_2_0 = (RuleCall)cObjectsAssignment_2.eContents().get(0);
234 private final Keyword cRightParenthesisKeyword_3 = (Keyword)cGroup.eContents().get(3);
235 private final Keyword cColonKeyword_4 = (Keyword)cGroup.eContents().get(4);
236 private final Assignment cValueAssignment_5 = (Assignment)cGroup.eContents().get(5);
237 private final RuleCall cValueTruthValueParserRuleCall_5_0 = (RuleCall)cValueAssignment_5.eContents().get(0);
238
239 //BasicInterpretation:
240 // symbol=Symbol '(' objects+=ComplexObject* ')' ':' value=TruthValue;
241 @Override public ParserRule getRule() { return rule; }
242
243 //symbol=Symbol '(' objects+=ComplexObject* ')' ':' value=TruthValue
244 public Group getGroup() { return cGroup; }
245
246 //symbol=Symbol
247 public Assignment getSymbolAssignment_0() { return cSymbolAssignment_0; }
248
249 //Symbol
250 public RuleCall getSymbolSymbolParserRuleCall_0_0() { return cSymbolSymbolParserRuleCall_0_0; }
251
252 //'('
253 public Keyword getLeftParenthesisKeyword_1() { return cLeftParenthesisKeyword_1; }
254
255 //objects+=ComplexObject*
256 public Assignment getObjectsAssignment_2() { return cObjectsAssignment_2; }
257
258 //ComplexObject
259 public RuleCall getObjectsComplexObjectParserRuleCall_2_0() { return cObjectsComplexObjectParserRuleCall_2_0; }
260
261 //')'
262 public Keyword getRightParenthesisKeyword_3() { return cRightParenthesisKeyword_3; }
263
264 //':'
265 public Keyword getColonKeyword_4() { return cColonKeyword_4; }
266
267 //value=TruthValue
268 public Assignment getValueAssignment_5() { return cValueAssignment_5; }
269
270 //TruthValue
271 public RuleCall getValueTruthValueParserRuleCall_5_0() { return cValueTruthValueParserRuleCall_5_0; }
272 }
273 public class SymbolElements extends AbstractParserRuleElementFinder {
274 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Symbol");
275 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
276 private final RuleCall cModelSymbolParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
277 private final RuleCall cPartialitySymbolParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
278 private final RuleCall cDataSymbolParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
279
280 //Symbol:
281 // ModelSymbol | PartialitySymbol | DataSymbol;
282 @Override public ParserRule getRule() { return rule; }
283
284 //ModelSymbol | PartialitySymbol | DataSymbol
285 public Alternatives getAlternatives() { return cAlternatives; }
286
287 //ModelSymbol
288 public RuleCall getModelSymbolParserRuleCall_0() { return cModelSymbolParserRuleCall_0; }
289
290 //PartialitySymbol
291 public RuleCall getPartialitySymbolParserRuleCall_1() { return cPartialitySymbolParserRuleCall_1; }
292
293 //DataSymbol
294 public RuleCall getDataSymbolParserRuleCall_2() { return cDataSymbolParserRuleCall_2; }
295 }
296 public class ModelSymbolElements extends AbstractParserRuleElementFinder {
297 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ModelSymbol");
298 private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
299 private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
300
301 //ModelSymbol:
302 // name=ID;
303 @Override public ParserRule getRule() { return rule; }
304
305 //name=ID
306 public Assignment getNameAssignment() { return cNameAssignment; }
307
308 //ID
309 public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
310 }
311 public class PartialitySymbolElements extends AbstractParserRuleElementFinder {
312 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.PartialitySymbol");
313 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
314 private final RuleCall cExistSymbolParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
315 private final RuleCall cEqualsSymbolParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
316
317 //PartialitySymbol:
318 // ExistSymbol | EqualsSymbol;
319 @Override public ParserRule getRule() { return rule; }
320
321 //ExistSymbol | EqualsSymbol
322 public Alternatives getAlternatives() { return cAlternatives; }
323
324 //ExistSymbol
325 public RuleCall getExistSymbolParserRuleCall_0() { return cExistSymbolParserRuleCall_0; }
326
327 //EqualsSymbol
328 public RuleCall getEqualsSymbolParserRuleCall_1() { return cEqualsSymbolParserRuleCall_1; }
329 }
330 public class ExistSymbolElements extends AbstractParserRuleElementFinder {
331 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExistSymbol");
332 private final Group cGroup = (Group)rule.eContents().get(1);
333 private final Keyword cExistsKeyword_0 = (Keyword)cGroup.eContents().get(0);
334 private final Action cExistSymbolAction_1 = (Action)cGroup.eContents().get(1);
335
336 //ExistSymbol:
337 // 'exists' {ExistSymbol};
338 @Override public ParserRule getRule() { return rule; }
339
340 //'exists' {ExistSymbol}
341 public Group getGroup() { return cGroup; }
342
343 //'exists'
344 public Keyword getExistsKeyword_0() { return cExistsKeyword_0; }
345
346 //{ExistSymbol}
347 public Action getExistSymbolAction_1() { return cExistSymbolAction_1; }
348 }
349 public class EqualsSymbolElements extends AbstractParserRuleElementFinder {
350 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.EqualsSymbol");
351 private final Group cGroup = (Group)rule.eContents().get(1);
352 private final Keyword cEqualsKeyword_0 = (Keyword)cGroup.eContents().get(0);
353 private final Action cEqualsSymbolAction_1 = (Action)cGroup.eContents().get(1);
354
355 //EqualsSymbol:
356 // 'equals' {EqualsSymbol};
357 @Override public ParserRule getRule() { return rule; }
358
359 //'equals' {EqualsSymbol}
360 public Group getGroup() { return cGroup; }
361
362 //'equals'
363 public Keyword getEqualsKeyword_0() { return cEqualsKeyword_0; }
364
365 //{EqualsSymbol}
366 public Action getEqualsSymbolAction_1() { return cEqualsSymbolAction_1; }
367 }
368 public class DataSymbolElements extends AbstractParserRuleElementFinder {
369 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.DataSymbol");
370 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
371 private final RuleCall cBooleanSymbolParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
372 private final RuleCall cIntegerSymbolParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
373 private final RuleCall cRealSymbolParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
374 private final RuleCall cStringSymbolParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
375
376 //DataSymbol:
377 // BooleanSymbol | IntegerSymbol | RealSymbol | StringSymbol;
378 @Override public ParserRule getRule() { return rule; }
379
380 //BooleanSymbol | IntegerSymbol | RealSymbol | StringSymbol
381 public Alternatives getAlternatives() { return cAlternatives; }
382
383 //BooleanSymbol
384 public RuleCall getBooleanSymbolParserRuleCall_0() { return cBooleanSymbolParserRuleCall_0; }
385
386 //IntegerSymbol
387 public RuleCall getIntegerSymbolParserRuleCall_1() { return cIntegerSymbolParserRuleCall_1; }
388
389 //RealSymbol
390 public RuleCall getRealSymbolParserRuleCall_2() { return cRealSymbolParserRuleCall_2; }
391
392 //StringSymbol
393 public RuleCall getStringSymbolParserRuleCall_3() { return cStringSymbolParserRuleCall_3; }
394 }
395 public class BooleanSymbolElements extends AbstractParserRuleElementFinder {
396 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BooleanSymbol");
397 private final Group cGroup = (Group)rule.eContents().get(1);
398 private final Keyword cBoolKeyword_0 = (Keyword)cGroup.eContents().get(0);
399 private final Action cBooleanSymbolAction_1 = (Action)cGroup.eContents().get(1);
400
401 //BooleanSymbol:
402 // 'bool' {BooleanSymbol};
403 @Override public ParserRule getRule() { return rule; }
404
405 //'bool' {BooleanSymbol}
406 public Group getGroup() { return cGroup; }
407
408 //'bool'
409 public Keyword getBoolKeyword_0() { return cBoolKeyword_0; }
410
411 //{BooleanSymbol}
412 public Action getBooleanSymbolAction_1() { return cBooleanSymbolAction_1; }
413 }
414 public class IntegerSymbolElements extends AbstractParserRuleElementFinder {
415 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.IntegerSymbol");
416 private final Group cGroup = (Group)rule.eContents().get(1);
417 private final Keyword cIntKeyword_0 = (Keyword)cGroup.eContents().get(0);
418 private final Action cIntegerSymbolAction_1 = (Action)cGroup.eContents().get(1);
419
420 //IntegerSymbol:
421 // 'int' {IntegerSymbol};
422 @Override public ParserRule getRule() { return rule; }
423
424 //'int' {IntegerSymbol}
425 public Group getGroup() { return cGroup; }
426
427 //'int'
428 public Keyword getIntKeyword_0() { return cIntKeyword_0; }
429
430 //{IntegerSymbol}
431 public Action getIntegerSymbolAction_1() { return cIntegerSymbolAction_1; }
432 }
433 public class RealSymbolElements extends AbstractParserRuleElementFinder {
434 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.RealSymbol");
435 private final Group cGroup = (Group)rule.eContents().get(1);
436 private final Keyword cRealKeyword_0 = (Keyword)cGroup.eContents().get(0);
437 private final Action cRealSymbolAction_1 = (Action)cGroup.eContents().get(1);
438
439 //RealSymbol:
440 // 'real' {RealSymbol};
441 @Override public ParserRule getRule() { return rule; }
442
443 //'real' {RealSymbol}
444 public Group getGroup() { return cGroup; }
445
446 //'real'
447 public Keyword getRealKeyword_0() { return cRealKeyword_0; }
448
449 //{RealSymbol}
450 public Action getRealSymbolAction_1() { return cRealSymbolAction_1; }
451 }
452 public class StringSymbolElements extends AbstractParserRuleElementFinder {
453 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.StringSymbol");
454 private final Group cGroup = (Group)rule.eContents().get(1);
455 private final Keyword cStringKeyword_0 = (Keyword)cGroup.eContents().get(0);
456 private final Action cStringSymbolAction_1 = (Action)cGroup.eContents().get(1);
457
458 //StringSymbol:
459 // 'string' {StringSymbol};
460 @Override public ParserRule getRule() { return rule; }
461
462 //'string' {StringSymbol}
463 public Group getGroup() { return cGroup; }
464
465 //'string'
466 public Keyword getStringKeyword_0() { return cStringKeyword_0; }
467
468 //{StringSymbol}
469 public Action getStringSymbolAction_1() { return cStringSymbolAction_1; }
470 }
471 public class ComplexObjectElements extends AbstractParserRuleElementFinder {
472 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ComplexObject");
473 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
474 private final RuleCall cObjectParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
475 private final RuleCall cAllInstancesParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
476 private final RuleCall cAllObjectsParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
477
478 //ComplexObject:
479 // Object | AllInstances | AllObjects;
480 @Override public ParserRule getRule() { return rule; }
481
482 //Object | AllInstances | AllObjects
483 public Alternatives getAlternatives() { return cAlternatives; }
484
485 //Object
486 public RuleCall getObjectParserRuleCall_0() { return cObjectParserRuleCall_0; }
487
488 //AllInstances
489 public RuleCall getAllInstancesParserRuleCall_1() { return cAllInstancesParserRuleCall_1; }
490
491 //AllObjects
492 public RuleCall getAllObjectsParserRuleCall_2() { return cAllObjectsParserRuleCall_2; }
493 }
494 public class ObjectElements extends AbstractParserRuleElementFinder {
495 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Object");
496 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
497 private final RuleCall cNamedObjectParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
498 private final RuleCall cUnnamedObjectParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
499 private final RuleCall cDataObjectParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
500
501 //Object:
502 // NamedObject | UnnamedObject | DataObject;
503 @Override public ParserRule getRule() { return rule; }
504
505 //NamedObject | UnnamedObject | DataObject
506 public Alternatives getAlternatives() { return cAlternatives; }
507
508 //NamedObject
509 public RuleCall getNamedObjectParserRuleCall_0() { return cNamedObjectParserRuleCall_0; }
510
511 //UnnamedObject
512 public RuleCall getUnnamedObjectParserRuleCall_1() { return cUnnamedObjectParserRuleCall_1; }
513
514 //DataObject
515 public RuleCall getDataObjectParserRuleCall_2() { return cDataObjectParserRuleCall_2; }
516 }
517 public class NamedObjectElements extends AbstractParserRuleElementFinder {
518 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.NamedObject");
519 private final Group cGroup = (Group)rule.eContents().get(1);
520 private final Keyword cApostropheKeyword_0 = (Keyword)cGroup.eContents().get(0);
521 private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1);
522 private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0);
523 private final Keyword cApostropheKeyword_2 = (Keyword)cGroup.eContents().get(2);
524
525 //NamedObject:
526 // "'" name=ID "'";
527 @Override public ParserRule getRule() { return rule; }
528
529 //"'" name=ID "'"
530 public Group getGroup() { return cGroup; }
531
532 //"'"
533 public Keyword getApostropheKeyword_0() { return cApostropheKeyword_0; }
534
535 //name=ID
536 public Assignment getNameAssignment_1() { return cNameAssignment_1; }
537
538 //ID
539 public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; }
540
541 //"'"
542 public Keyword getApostropheKeyword_2() { return cApostropheKeyword_2; }
543 }
544 public class UnnamedObjectElements extends AbstractParserRuleElementFinder {
545 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnnamedObject");
546 private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
547 private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
548
549 //UnnamedObject:
550 // name=ID;
551 @Override public ParserRule getRule() { return rule; }
552
553 //name=ID
554 public Assignment getNameAssignment() { return cNameAssignment; }
555
556 //ID
557 public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
558 }
559 public class DataObjectElements extends AbstractParserRuleElementFinder {
560 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.DataObject");
561 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
562 private final RuleCall cBooleanObjectParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
563 private final RuleCall cIntObjectParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
564 private final RuleCall cRealObjectParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
565 private final RuleCall cStringObjectParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
566
567 //DataObject:
568 // BooleanObject | IntObject | RealObject | StringObject;
569 @Override public ParserRule getRule() { return rule; }
570
571 //BooleanObject | IntObject | RealObject | StringObject
572 public Alternatives getAlternatives() { return cAlternatives; }
573
574 //BooleanObject
575 public RuleCall getBooleanObjectParserRuleCall_0() { return cBooleanObjectParserRuleCall_0; }
576
577 //IntObject
578 public RuleCall getIntObjectParserRuleCall_1() { return cIntObjectParserRuleCall_1; }
579
580 //RealObject
581 public RuleCall getRealObjectParserRuleCall_2() { return cRealObjectParserRuleCall_2; }
582
583 //StringObject
584 public RuleCall getStringObjectParserRuleCall_3() { return cStringObjectParserRuleCall_3; }
585 }
586 public class BooleanObjectElements extends AbstractParserRuleElementFinder {
587 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BooleanObject");
588 private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
589 private final RuleCall cValueBooleanValueParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
590
591 //BooleanObject:
592 // value=BooleanValue;
593 @Override public ParserRule getRule() { return rule; }
594
595 //value=BooleanValue
596 public Assignment getValueAssignment() { return cValueAssignment; }
597
598 //BooleanValue
599 public RuleCall getValueBooleanValueParserRuleCall_0() { return cValueBooleanValueParserRuleCall_0; }
600 }
601 public class IntObjectElements extends AbstractParserRuleElementFinder {
602 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.IntObject");
603 private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
604 private final RuleCall cValueINTLiteralParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
605
606 //IntObject:
607 // value=INTLiteral;
608 @Override public ParserRule getRule() { return rule; }
609
610 //value=INTLiteral
611 public Assignment getValueAssignment() { return cValueAssignment; }
612
613 //INTLiteral
614 public RuleCall getValueINTLiteralParserRuleCall_0() { return cValueINTLiteralParserRuleCall_0; }
615 }
616 public class RealObjectElements extends AbstractParserRuleElementFinder {
617 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.RealObject");
618 private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
619 private final RuleCall cValueREALLiteralParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
620
621 //RealObject:
622 // value=REALLiteral;
623 @Override public ParserRule getRule() { return rule; }
624
625 //value=REALLiteral
626 public Assignment getValueAssignment() { return cValueAssignment; }
627
628 //REALLiteral
629 public RuleCall getValueREALLiteralParserRuleCall_0() { return cValueREALLiteralParserRuleCall_0; }
630 }
631 public class StringObjectElements extends AbstractParserRuleElementFinder {
632 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.StringObject");
633 private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1);
634 private final RuleCall cValueSTRINGTerminalRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0);
635
636 //StringObject:
637 // value=STRING;
638 @Override public ParserRule getRule() { return rule; }
639
640 //value=STRING
641 public Assignment getValueAssignment() { return cValueAssignment; }
642
643 //STRING
644 public RuleCall getValueSTRINGTerminalRuleCall_0() { return cValueSTRINGTerminalRuleCall_0; }
645 }
646 public class PredicateElements extends AbstractParserRuleElementFinder {
647 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Predicate");
648 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
649 private final RuleCall cPredicateSymbolParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
650 private final RuleCall cErrorPredicateParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
651
652 /////////////////////
653 //// Predicte grammar
654 /////////////////////
655 //Predicate:
656 // PredicateSymbol | ErrorPredicate;
657 @Override public ParserRule getRule() { return rule; }
658
659 //PredicateSymbol | ErrorPredicate
660 public Alternatives getAlternatives() { return cAlternatives; }
661
662 //PredicateSymbol
663 public RuleCall getPredicateSymbolParserRuleCall_0() { return cPredicateSymbolParserRuleCall_0; }
664
665 //ErrorPredicate
666 public RuleCall getErrorPredicateParserRuleCall_1() { return cErrorPredicateParserRuleCall_1; }
667 }
668 public class PredicateSymbolElements extends AbstractParserRuleElementFinder {
669 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.PredicateSymbol");
670 private final Group cGroup = (Group)rule.eContents().get(1);
671 private final Keyword cPredicateKeyword_0 = (Keyword)cGroup.eContents().get(0);
672 private final Assignment cSymbolAssignment_1 = (Assignment)cGroup.eContents().get(1);
673 private final RuleCall cSymbolModelSymbolParserRuleCall_1_0 = (RuleCall)cSymbolAssignment_1.eContents().get(0);
674 private final Keyword cLeftParenthesisKeyword_2 = (Keyword)cGroup.eContents().get(2);
675 private final Assignment cParametersAssignment_3 = (Assignment)cGroup.eContents().get(3);
676 private final RuleCall cParametersParameterParserRuleCall_3_0 = (RuleCall)cParametersAssignment_3.eContents().get(0);
677 private final Keyword cRightParenthesisKeyword_4 = (Keyword)cGroup.eContents().get(4);
678 private final Keyword cColonKeyword_5 = (Keyword)cGroup.eContents().get(5);
679 private final Alternatives cAlternatives_6 = (Alternatives)cGroup.eContents().get(6);
680 private final Keyword cFalseKeyword_6_0 = (Keyword)cAlternatives_6.eContents().get(0);
681 private final Group cGroup_6_1 = (Group)cAlternatives_6.eContents().get(1);
682 private final Assignment cBodiesAssignment_6_1_0 = (Assignment)cGroup_6_1.eContents().get(0);
683 private final RuleCall cBodiesPatternBodyParserRuleCall_6_1_0_0 = (RuleCall)cBodiesAssignment_6_1_0.eContents().get(0);
684 private final Group cGroup_6_1_1 = (Group)cGroup_6_1.eContents().get(1);
685 private final Keyword cVerticalLineKeyword_6_1_1_0 = (Keyword)cGroup_6_1_1.eContents().get(0);
686 private final Assignment cBodiesAssignment_6_1_1_1 = (Assignment)cGroup_6_1_1.eContents().get(1);
687 private final RuleCall cBodiesPatternBodyParserRuleCall_6_1_1_1_0 = (RuleCall)cBodiesAssignment_6_1_1_1.eContents().get(0);
688 private final Keyword cFullStopKeyword_7 = (Keyword)cGroup.eContents().get(7);
689
690 //PredicateSymbol:
691 // 'predicate' symbol=ModelSymbol '(' parameters+=Parameter* ')' ':' ('false' | bodies+=PatternBody ('|'
692 // bodies+=PatternBody)*) '.';
693 @Override public ParserRule getRule() { return rule; }
694
695 //'predicate' symbol=ModelSymbol '(' parameters+=Parameter* ')' ':' ('false' | bodies+=PatternBody ('|'
696 //bodies+=PatternBody)*) '.'
697 public Group getGroup() { return cGroup; }
698
699 //'predicate'
700 public Keyword getPredicateKeyword_0() { return cPredicateKeyword_0; }
701
702 //symbol=ModelSymbol
703 public Assignment getSymbolAssignment_1() { return cSymbolAssignment_1; }
704
705 //ModelSymbol
706 public RuleCall getSymbolModelSymbolParserRuleCall_1_0() { return cSymbolModelSymbolParserRuleCall_1_0; }
707
708 //'('
709 public Keyword getLeftParenthesisKeyword_2() { return cLeftParenthesisKeyword_2; }
710
711 //parameters+=Parameter*
712 public Assignment getParametersAssignment_3() { return cParametersAssignment_3; }
713
714 //Parameter
715 public RuleCall getParametersParameterParserRuleCall_3_0() { return cParametersParameterParserRuleCall_3_0; }
716
717 //')'
718 public Keyword getRightParenthesisKeyword_4() { return cRightParenthesisKeyword_4; }
719
720 //':'
721 public Keyword getColonKeyword_5() { return cColonKeyword_5; }
722
723 //'false' | bodies+=PatternBody ('|' bodies+=PatternBody)*
724 public Alternatives getAlternatives_6() { return cAlternatives_6; }
725
726 //'false'
727 public Keyword getFalseKeyword_6_0() { return cFalseKeyword_6_0; }
728
729 //bodies+=PatternBody ('|' bodies+=PatternBody)*
730 public Group getGroup_6_1() { return cGroup_6_1; }
731
732 //bodies+=PatternBody
733 public Assignment getBodiesAssignment_6_1_0() { return cBodiesAssignment_6_1_0; }
734
735 //PatternBody
736 public RuleCall getBodiesPatternBodyParserRuleCall_6_1_0_0() { return cBodiesPatternBodyParserRuleCall_6_1_0_0; }
737
738 //('|' bodies+=PatternBody)*
739 public Group getGroup_6_1_1() { return cGroup_6_1_1; }
740
741 //'|'
742 public Keyword getVerticalLineKeyword_6_1_1_0() { return cVerticalLineKeyword_6_1_1_0; }
743
744 //bodies+=PatternBody
745 public Assignment getBodiesAssignment_6_1_1_1() { return cBodiesAssignment_6_1_1_1; }
746
747 //PatternBody
748 public RuleCall getBodiesPatternBodyParserRuleCall_6_1_1_1_0() { return cBodiesPatternBodyParserRuleCall_6_1_1_1_0; }
749
750 //'.'
751 public Keyword getFullStopKeyword_7() { return cFullStopKeyword_7; }
752 }
753 public class ErrorPredicateElements extends AbstractParserRuleElementFinder {
754 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ErrorPredicate");
755 private final Group cGroup = (Group)rule.eContents().get(1);
756 private final Action cErrorPredicateAction_0 = (Action)cGroup.eContents().get(0);
757 private final Keyword cErrorKeyword_1 = (Keyword)cGroup.eContents().get(1);
758 private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2);
759 private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0);
760 private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
761 private final Keyword cLeftParenthesisKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
762 private final Assignment cParametersAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
763 private final RuleCall cParametersParameterParserRuleCall_3_1_0 = (RuleCall)cParametersAssignment_3_1.eContents().get(0);
764 private final Keyword cRightParenthesisKeyword_3_2 = (Keyword)cGroup_3.eContents().get(2);
765 private final Keyword cColonKeyword_4 = (Keyword)cGroup.eContents().get(4);
766 private final Alternatives cAlternatives_5 = (Alternatives)cGroup.eContents().get(5);
767 private final Keyword cFalseKeyword_5_0 = (Keyword)cAlternatives_5.eContents().get(0);
768 private final Group cGroup_5_1 = (Group)cAlternatives_5.eContents().get(1);
769 private final Assignment cBodiesAssignment_5_1_0 = (Assignment)cGroup_5_1.eContents().get(0);
770 private final RuleCall cBodiesPatternBodyParserRuleCall_5_1_0_0 = (RuleCall)cBodiesAssignment_5_1_0.eContents().get(0);
771 private final Group cGroup_5_1_1 = (Group)cGroup_5_1.eContents().get(1);
772 private final Keyword cVerticalLineKeyword_5_1_1_0 = (Keyword)cGroup_5_1_1.eContents().get(0);
773 private final Assignment cBodiesAssignment_5_1_1_1 = (Assignment)cGroup_5_1_1.eContents().get(1);
774 private final RuleCall cBodiesPatternBodyParserRuleCall_5_1_1_1_0 = (RuleCall)cBodiesAssignment_5_1_1_1.eContents().get(0);
775 private final Keyword cFullStopKeyword_6 = (Keyword)cGroup.eContents().get(6);
776
777 //ErrorPredicate:
778 // {ErrorPredicate} 'error' name=ID? ('(' parameters+=Parameter* ')') ':' ('false' | bodies+=PatternBody ('|'
779 // bodies+=PatternBody)*) '.';
780 @Override public ParserRule getRule() { return rule; }
781
782 //{ErrorPredicate} 'error' name=ID? ('(' parameters+=Parameter* ')') ':' ('false' | bodies+=PatternBody ('|'
783 //bodies+=PatternBody)*) '.'
784 public Group getGroup() { return cGroup; }
785
786 //{ErrorPredicate}
787 public Action getErrorPredicateAction_0() { return cErrorPredicateAction_0; }
788
789 //'error'
790 public Keyword getErrorKeyword_1() { return cErrorKeyword_1; }
791
792 //name=ID?
793 public Assignment getNameAssignment_2() { return cNameAssignment_2; }
794
795 //ID
796 public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; }
797
798 //'(' parameters+=Parameter* ')'
799 public Group getGroup_3() { return cGroup_3; }
800
801 //'('
802 public Keyword getLeftParenthesisKeyword_3_0() { return cLeftParenthesisKeyword_3_0; }
803
804 //parameters+=Parameter*
805 public Assignment getParametersAssignment_3_1() { return cParametersAssignment_3_1; }
806
807 //Parameter
808 public RuleCall getParametersParameterParserRuleCall_3_1_0() { return cParametersParameterParserRuleCall_3_1_0; }
809
810 //')'
811 public Keyword getRightParenthesisKeyword_3_2() { return cRightParenthesisKeyword_3_2; }
812
813 //':'
814 public Keyword getColonKeyword_4() { return cColonKeyword_4; }
815
816 //'false' | bodies+=PatternBody ('|' bodies+=PatternBody)*
817 public Alternatives getAlternatives_5() { return cAlternatives_5; }
818
819 //'false'
820 public Keyword getFalseKeyword_5_0() { return cFalseKeyword_5_0; }
821
822 //bodies+=PatternBody ('|' bodies+=PatternBody)*
823 public Group getGroup_5_1() { return cGroup_5_1; }
824
825 //bodies+=PatternBody
826 public Assignment getBodiesAssignment_5_1_0() { return cBodiesAssignment_5_1_0; }
827
828 //PatternBody
829 public RuleCall getBodiesPatternBodyParserRuleCall_5_1_0_0() { return cBodiesPatternBodyParserRuleCall_5_1_0_0; }
830
831 //('|' bodies+=PatternBody)*
832 public Group getGroup_5_1_1() { return cGroup_5_1_1; }
833
834 //'|'
835 public Keyword getVerticalLineKeyword_5_1_1_0() { return cVerticalLineKeyword_5_1_1_0; }
836
837 //bodies+=PatternBody
838 public Assignment getBodiesAssignment_5_1_1_1() { return cBodiesAssignment_5_1_1_1; }
839
840 //PatternBody
841 public RuleCall getBodiesPatternBodyParserRuleCall_5_1_1_1_0() { return cBodiesPatternBodyParserRuleCall_5_1_1_1_0; }
842
843 //'.'
844 public Keyword getFullStopKeyword_6() { return cFullStopKeyword_6; }
845 }
846 public class ParameterElements extends AbstractParserRuleElementFinder {
847 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Parameter");
848 private final Group cGroup = (Group)rule.eContents().get(1);
849 private final Assignment cVariableAssignment_0 = (Assignment)cGroup.eContents().get(0);
850 private final RuleCall cVariableVariableParserRuleCall_0_0 = (RuleCall)cVariableAssignment_0.eContents().get(0);
851 private final Group cGroup_1 = (Group)cGroup.eContents().get(1);
852 private final Keyword cColonKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0);
853 private final Assignment cTypeAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1);
854 private final RuleCall cTypeSymbolParserRuleCall_1_1_0 = (RuleCall)cTypeAssignment_1_1.eContents().get(0);
855
856 //Parameter:
857 // variable=Variable (':' type=Symbol)?;
858 @Override public ParserRule getRule() { return rule; }
859
860 //variable=Variable (':' type=Symbol)?
861 public Group getGroup() { return cGroup; }
862
863 //variable=Variable
864 public Assignment getVariableAssignment_0() { return cVariableAssignment_0; }
865
866 //Variable
867 public RuleCall getVariableVariableParserRuleCall_0_0() { return cVariableVariableParserRuleCall_0_0; }
868
869 //(':' type=Symbol)?
870 public Group getGroup_1() { return cGroup_1; }
871
872 //':'
873 public Keyword getColonKeyword_1_0() { return cColonKeyword_1_0; }
874
875 //type=Symbol
876 public Assignment getTypeAssignment_1_1() { return cTypeAssignment_1_1; }
877
878 //Symbol
879 public RuleCall getTypeSymbolParserRuleCall_1_1_0() { return cTypeSymbolParserRuleCall_1_1_0; }
880 }
881 public class PatternBodyElements extends AbstractParserRuleElementFinder {
882 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.PatternBody");
883 private final Group cGroup = (Group)rule.eContents().get(1);
884 private final Action cPatternBodyAction_0 = (Action)cGroup.eContents().get(0);
885 private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1);
886 private final Keyword cTrueKeyword_1_0 = (Keyword)cAlternatives_1.eContents().get(0);
887 private final Assignment cConstraintsAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1);
888 private final RuleCall cConstraintsConstraintParserRuleCall_1_1_0 = (RuleCall)cConstraintsAssignment_1_1.eContents().get(0);
889
890 //PatternBody:
891 // {PatternBody} ('true' | constraints+=Constraint*);
892 @Override public ParserRule getRule() { return rule; }
893
894 //{PatternBody} ('true' | constraints+=Constraint*)
895 public Group getGroup() { return cGroup; }
896
897 //{PatternBody}
898 public Action getPatternBodyAction_0() { return cPatternBodyAction_0; }
899
900 //'true' | constraints+=Constraint*
901 public Alternatives getAlternatives_1() { return cAlternatives_1; }
902
903 //'true'
904 public Keyword getTrueKeyword_1_0() { return cTrueKeyword_1_0; }
905
906 //constraints+=Constraint*
907 public Assignment getConstraintsAssignment_1_1() { return cConstraintsAssignment_1_1; }
908
909 //Constraint
910 public RuleCall getConstraintsConstraintParserRuleCall_1_1_0() { return cConstraintsConstraintParserRuleCall_1_1_0; }
911 }
912 public class PolarityElements extends AbstractParserRuleElementFinder {
913 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Polarity");
914 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
915 private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0);
916 private final Action cPositiveAction_0_0 = (Action)cGroup_0.eContents().get(0);
917 private final Keyword cPlusSignKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
918 private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
919 private final Action cNegativeAction_1_0 = (Action)cGroup_1.eContents().get(0);
920 private final Keyword cHyphenMinusKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
921
922 //Polarity:
923 // {Positive} '+' | {Negative} '-';
924 @Override public ParserRule getRule() { return rule; }
925
926 //{Positive} '+' | {Negative} '-'
927 public Alternatives getAlternatives() { return cAlternatives; }
928
929 //{Positive} '+'
930 public Group getGroup_0() { return cGroup_0; }
931
932 //{Positive}
933 public Action getPositiveAction_0_0() { return cPositiveAction_0_0; }
934
935 //'+'
936 public Keyword getPlusSignKeyword_0_1() { return cPlusSignKeyword_0_1; }
937
938 //{Negative} '-'
939 public Group getGroup_1() { return cGroup_1; }
940
941 //{Negative}
942 public Action getNegativeAction_1_0() { return cNegativeAction_1_0; }
943
944 //'-'
945 public Keyword getHyphenMinusKeyword_1_1() { return cHyphenMinusKeyword_1_1; }
946 }
947 public class ConstraintElements extends AbstractParserRuleElementFinder {
948 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Constraint");
949 private final Group cGroup = (Group)rule.eContents().get(1);
950 private final Assignment cPolarityAssignment_0 = (Assignment)cGroup.eContents().get(0);
951 private final RuleCall cPolarityPolarityParserRuleCall_0_0 = (RuleCall)cPolarityAssignment_0.eContents().get(0);
952 private final Assignment cSymbolAssignment_1 = (Assignment)cGroup.eContents().get(1);
953 private final RuleCall cSymbolModelSymbolParserRuleCall_1_0 = (RuleCall)cSymbolAssignment_1.eContents().get(0);
954 private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
955 private final Group cGroup_2_0 = (Group)cAlternatives_2.eContents().get(0);
956 private final Keyword cLeftParenthesisKeyword_2_0_0 = (Keyword)cGroup_2_0.eContents().get(0);
957 private final Assignment cParamsAssignment_2_0_1 = (Assignment)cGroup_2_0.eContents().get(1);
958 private final RuleCall cParamsLiteralParserRuleCall_2_0_1_0 = (RuleCall)cParamsAssignment_2_0_1.eContents().get(0);
959 private final Keyword cRightParenthesisKeyword_2_0_2 = (Keyword)cGroup_2_0.eContents().get(2);
960 private final Group cGroup_2_1 = (Group)cAlternatives_2.eContents().get(1);
961 private final Assignment cClosureTypeAssignment_2_1_0 = (Assignment)cGroup_2_1.eContents().get(0);
962 private final RuleCall cClosureTypeClosureTypeParserRuleCall_2_1_0_0 = (RuleCall)cClosureTypeAssignment_2_1_0.eContents().get(0);
963 private final Keyword cLeftParenthesisKeyword_2_1_1 = (Keyword)cGroup_2_1.eContents().get(1);
964 private final Assignment cParamsAssignment_2_1_2 = (Assignment)cGroup_2_1.eContents().get(2);
965 private final RuleCall cParamsLiteralParserRuleCall_2_1_2_0 = (RuleCall)cParamsAssignment_2_1_2.eContents().get(0);
966 private final Assignment cParamsAssignment_2_1_3 = (Assignment)cGroup_2_1.eContents().get(3);
967 private final RuleCall cParamsLiteralParserRuleCall_2_1_3_0 = (RuleCall)cParamsAssignment_2_1_3.eContents().get(0);
968 private final Keyword cRightParenthesisKeyword_2_1_4 = (Keyword)cGroup_2_1.eContents().get(4);
969
970 //Constraint:
971 // polarity=Polarity? symbol=ModelSymbol ('(' params+=Literal* ')' | closureType=ClosureType '(' params+=Literal
972 // params+=Literal ')');
973 @Override public ParserRule getRule() { return rule; }
974
975 //polarity=Polarity? symbol=ModelSymbol ('(' params+=Literal* ')' | closureType=ClosureType '(' params+=Literal
976 //params+=Literal ')')
977 public Group getGroup() { return cGroup; }
978
979 //polarity=Polarity?
980 public Assignment getPolarityAssignment_0() { return cPolarityAssignment_0; }
981
982 //Polarity
983 public RuleCall getPolarityPolarityParserRuleCall_0_0() { return cPolarityPolarityParserRuleCall_0_0; }
984
985 //symbol=ModelSymbol
986 public Assignment getSymbolAssignment_1() { return cSymbolAssignment_1; }
987
988 //ModelSymbol
989 public RuleCall getSymbolModelSymbolParserRuleCall_1_0() { return cSymbolModelSymbolParserRuleCall_1_0; }
990
991 //'(' params+=Literal* ')' | closureType=ClosureType '(' params+=Literal params+=Literal ')'
992 public Alternatives getAlternatives_2() { return cAlternatives_2; }
993
994 //'(' params+=Literal* ')'
995 public Group getGroup_2_0() { return cGroup_2_0; }
996
997 //'('
998 public Keyword getLeftParenthesisKeyword_2_0_0() { return cLeftParenthesisKeyword_2_0_0; }
999
1000 //params+=Literal*
1001 public Assignment getParamsAssignment_2_0_1() { return cParamsAssignment_2_0_1; }
1002
1003 //Literal
1004 public RuleCall getParamsLiteralParserRuleCall_2_0_1_0() { return cParamsLiteralParserRuleCall_2_0_1_0; }
1005
1006 //')'
1007 public Keyword getRightParenthesisKeyword_2_0_2() { return cRightParenthesisKeyword_2_0_2; }
1008
1009 //closureType=ClosureType '(' params+=Literal params+=Literal ')'
1010 public Group getGroup_2_1() { return cGroup_2_1; }
1011
1012 //closureType=ClosureType
1013 public Assignment getClosureTypeAssignment_2_1_0() { return cClosureTypeAssignment_2_1_0; }
1014
1015 //ClosureType
1016 public RuleCall getClosureTypeClosureTypeParserRuleCall_2_1_0_0() { return cClosureTypeClosureTypeParserRuleCall_2_1_0_0; }
1017
1018 //'('
1019 public Keyword getLeftParenthesisKeyword_2_1_1() { return cLeftParenthesisKeyword_2_1_1; }
1020
1021 //params+=Literal
1022 public Assignment getParamsAssignment_2_1_2() { return cParamsAssignment_2_1_2; }
1023
1024 //Literal
1025 public RuleCall getParamsLiteralParserRuleCall_2_1_2_0() { return cParamsLiteralParserRuleCall_2_1_2_0; }
1026
1027 //params+=Literal
1028 public Assignment getParamsAssignment_2_1_3() { return cParamsAssignment_2_1_3; }
1029
1030 //Literal
1031 public RuleCall getParamsLiteralParserRuleCall_2_1_3_0() { return cParamsLiteralParserRuleCall_2_1_3_0; }
1032
1033 //')'
1034 public Keyword getRightParenthesisKeyword_2_1_4() { return cRightParenthesisKeyword_2_1_4; }
1035 }
1036 public class ClosureTypeElements extends AbstractParserRuleElementFinder {
1037 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ClosureType");
1038 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1039 private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0);
1040 private final Action cReflexiveClosureAction_0_0 = (Action)cGroup_0.eContents().get(0);
1041 private final Keyword cAsteriskKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1);
1042 private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1);
1043 private final Action cIrreflexiveClosureAction_1_0 = (Action)cGroup_1.eContents().get(0);
1044 private final Keyword cPlusSignKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1);
1045
1046 //ClosureType:
1047 // {ReflexiveClosure} '*' | {IrreflexiveClosure} '+';
1048 @Override public ParserRule getRule() { return rule; }
1049
1050 //{ReflexiveClosure} '*' | {IrreflexiveClosure} '+'
1051 public Alternatives getAlternatives() { return cAlternatives; }
1052
1053 //{ReflexiveClosure} '*'
1054 public Group getGroup_0() { return cGroup_0; }
1055
1056 //{ReflexiveClosure}
1057 public Action getReflexiveClosureAction_0_0() { return cReflexiveClosureAction_0_0; }
1058
1059 //'*'
1060 public Keyword getAsteriskKeyword_0_1() { return cAsteriskKeyword_0_1; }
1061
1062 //{IrreflexiveClosure} '+'
1063 public Group getGroup_1() { return cGroup_1; }
1064
1065 //{IrreflexiveClosure}
1066 public Action getIrreflexiveClosureAction_1_0() { return cIrreflexiveClosureAction_1_0; }
1067
1068 //'+'
1069 public Keyword getPlusSignKeyword_1_1() { return cPlusSignKeyword_1_1; }
1070 }
1071 public class LiteralElements extends AbstractParserRuleElementFinder {
1072 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Literal");
1073 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1074 private final RuleCall cVariableParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1075 private final RuleCall cDataObjectParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
1076
1077 //Literal:
1078 // Variable | DataObject;
1079 @Override public ParserRule getRule() { return rule; }
1080
1081 //Variable | DataObject
1082 public Alternatives getAlternatives() { return cAlternatives; }
1083
1084 //Variable
1085 public RuleCall getVariableParserRuleCall_0() { return cVariableParserRuleCall_0; }
1086
1087 //DataObject
1088 public RuleCall getDataObjectParserRuleCall_1() { return cDataObjectParserRuleCall_1; }
1089 }
1090 public class VariableElements extends AbstractParserRuleElementFinder {
1091 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Variable");
1092 private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1);
1093 private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0);
1094
1095 //Variable:
1096 // name=ID;
1097 @Override public ParserRule getRule() { return rule; }
1098
1099 //name=ID
1100 public Assignment getNameAssignment() { return cNameAssignment; }
1101
1102 //ID
1103 public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; }
1104 }
1105 public class AllInstancesElements extends AbstractParserRuleElementFinder {
1106 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AllInstances");
1107 private final Group cGroup = (Group)rule.eContents().get(1);
1108 private final Keyword cColonKeyword_0 = (Keyword)cGroup.eContents().get(0);
1109 private final Assignment cSymbolAssignment_1 = (Assignment)cGroup.eContents().get(1);
1110 private final RuleCall cSymbolSymbolParserRuleCall_1_0 = (RuleCall)cSymbolAssignment_1.eContents().get(0);
1111
1112 /////////////////////
1113 //// Complex Interpretation grammar
1114 /////////////////////
1115 //AllInstances:
1116 // ':' symbol=Symbol;
1117 @Override public ParserRule getRule() { return rule; }
1118
1119 //':' symbol=Symbol
1120 public Group getGroup() { return cGroup; }
1121
1122 //':'
1123 public Keyword getColonKeyword_0() { return cColonKeyword_0; }
1124
1125 //symbol=Symbol
1126 public Assignment getSymbolAssignment_1() { return cSymbolAssignment_1; }
1127
1128 //Symbol
1129 public RuleCall getSymbolSymbolParserRuleCall_1_0() { return cSymbolSymbolParserRuleCall_1_0; }
1130 }
1131 public class AllObjectsElements extends AbstractParserRuleElementFinder {
1132 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AllObjects");
1133 private final Group cGroup = (Group)rule.eContents().get(1);
1134 private final Action cAllObjectsAction_0 = (Action)cGroup.eContents().get(0);
1135 private final Keyword cAsteriskKeyword_1 = (Keyword)cGroup.eContents().get(1);
1136
1137 //AllObjects:
1138 // {AllObjects} '*';
1139 @Override public ParserRule getRule() { return rule; }
1140
1141 //{AllObjects} '*'
1142 public Group getGroup() { return cGroup; }
1143
1144 //{AllObjects}
1145 public Action getAllObjectsAction_0() { return cAllObjectsAction_0; }
1146
1147 //'*'
1148 public Keyword getAsteriskKeyword_1() { return cAsteriskKeyword_1; }
1149 }
1150 public class DefaultInterpretationElements extends AbstractParserRuleElementFinder {
1151 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.DefaultInterpretation");
1152 private final Group cGroup = (Group)rule.eContents().get(1);
1153 private final Keyword cDefaultKeyword_0 = (Keyword)cGroup.eContents().get(0);
1154 private final Assignment cInterpretationAssignment_1 = (Assignment)cGroup.eContents().get(1);
1155 private final RuleCall cInterpretationBasicInterpretationParserRuleCall_1_0 = (RuleCall)cInterpretationAssignment_1.eContents().get(0);
1156
1157 /////////////////////
1158 //// Defaul Interpretation grammar
1159 /////////////////////
1160 //DefaultInterpretation:
1161 // 'default' interpretation=BasicInterpretation;
1162 @Override public ParserRule getRule() { return rule; }
1163
1164 //'default' interpretation=BasicInterpretation
1165 public Group getGroup() { return cGroup; }
1166
1167 //'default'
1168 public Keyword getDefaultKeyword_0() { return cDefaultKeyword_0; }
1169
1170 //interpretation=BasicInterpretation
1171 public Assignment getInterpretationAssignment_1() { return cInterpretationAssignment_1; }
1172
1173 //BasicInterpretation
1174 public RuleCall getInterpretationBasicInterpretationParserRuleCall_1_0() { return cInterpretationBasicInterpretationParserRuleCall_1_0; }
1175 }
1176 public class CDInterpretationElements extends AbstractParserRuleElementFinder {
1177 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.CDInterpretation");
1178 private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
1179 private final RuleCall cClassInterpretationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
1180 private final RuleCall cEnumInterpretationParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
1181 private final RuleCall cGlobalRelationInterpretationParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
1182
1183 /////////////////////
1184 //// Advanced Class-Diagram interpretations
1185 /////////////////////
1186 //CDInterpretation:
1187 // ClassInterpretation | EnumInterpretation | GlobalRelationInterpretation;
1188 @Override public ParserRule getRule() { return rule; }
1189
1190 //ClassInterpretation | EnumInterpretation | GlobalRelationInterpretation
1191 public Alternatives getAlternatives() { return cAlternatives; }
1192
1193 //ClassInterpretation
1194 public RuleCall getClassInterpretationParserRuleCall_0() { return cClassInterpretationParserRuleCall_0; }
1195
1196 //EnumInterpretation
1197 public RuleCall getEnumInterpretationParserRuleCall_1() { return cEnumInterpretationParserRuleCall_1; }
1198
1199 //GlobalRelationInterpretation
1200 public RuleCall getGlobalRelationInterpretationParserRuleCall_2() { return cGlobalRelationInterpretationParserRuleCall_2; }
1201 }
1202 public class ClassInterpretationElements extends AbstractParserRuleElementFinder {
1203 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ClassInterpretation");
1204 private final Group cGroup = (Group)rule.eContents().get(1);
1205 private final Assignment cAbstractAssignment_0 = (Assignment)cGroup.eContents().get(0);
1206 private final Keyword cAbstractAbstractKeyword_0_0 = (Keyword)cAbstractAssignment_0.eContents().get(0);
1207 private final Keyword cClassKeyword_1 = (Keyword)cGroup.eContents().get(1);
1208 private final Assignment cSymbolAssignment_2 = (Assignment)cGroup.eContents().get(2);
1209 private final RuleCall cSymbolModelSymbolParserRuleCall_2_0 = (RuleCall)cSymbolAssignment_2.eContents().get(0);
1210 private final Group cGroup_3 = (Group)cGroup.eContents().get(3);
1211 private final Keyword cExtendsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0);
1212 private final Assignment cSupertypesAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1);
1213 private final RuleCall cSupertypesModelSymbolParserRuleCall_3_1_0 = (RuleCall)cSupertypesAssignment_3_1.eContents().get(0);
1214 private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
1215 private final Assignment cFieltAssignment_5 = (Assignment)cGroup.eContents().get(5);
1216 private final RuleCall cFieltFieldRelationInterpretationParserRuleCall_5_0 = (RuleCall)cFieltAssignment_5.eContents().get(0);
1217 private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6);
1218
1219 //ClassInterpretation:
1220 // abstract?='abstract' 'class' symbol=ModelSymbol ('extends' supertypes+=ModelSymbol+)? '{'
1221 // fielt+=FieldRelationInterpretation*
1222 // '}';
1223 @Override public ParserRule getRule() { return rule; }
1224
1225 //abstract?='abstract' 'class' symbol=ModelSymbol ('extends' supertypes+=ModelSymbol+)? '{'
1226 //fielt+=FieldRelationInterpretation* '}'
1227 public Group getGroup() { return cGroup; }
1228
1229 //abstract?='abstract'
1230 public Assignment getAbstractAssignment_0() { return cAbstractAssignment_0; }
1231
1232 //'abstract'
1233 public Keyword getAbstractAbstractKeyword_0_0() { return cAbstractAbstractKeyword_0_0; }
1234
1235 //'class'
1236 public Keyword getClassKeyword_1() { return cClassKeyword_1; }
1237
1238 //symbol=ModelSymbol
1239 public Assignment getSymbolAssignment_2() { return cSymbolAssignment_2; }
1240
1241 //ModelSymbol
1242 public RuleCall getSymbolModelSymbolParserRuleCall_2_0() { return cSymbolModelSymbolParserRuleCall_2_0; }
1243
1244 //('extends' supertypes+=ModelSymbol+)?
1245 public Group getGroup_3() { return cGroup_3; }
1246
1247 //'extends'
1248 public Keyword getExtendsKeyword_3_0() { return cExtendsKeyword_3_0; }
1249
1250 //supertypes+=ModelSymbol+
1251 public Assignment getSupertypesAssignment_3_1() { return cSupertypesAssignment_3_1; }
1252
1253 //ModelSymbol
1254 public RuleCall getSupertypesModelSymbolParserRuleCall_3_1_0() { return cSupertypesModelSymbolParserRuleCall_3_1_0; }
1255
1256 //'{'
1257 public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; }
1258
1259 //fielt+=FieldRelationInterpretation*
1260 public Assignment getFieltAssignment_5() { return cFieltAssignment_5; }
1261
1262 //FieldRelationInterpretation
1263 public RuleCall getFieltFieldRelationInterpretationParserRuleCall_5_0() { return cFieltFieldRelationInterpretationParserRuleCall_5_0; }
1264
1265 //'}'
1266 public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; }
1267 }
1268 public class EnumInterpretationElements extends AbstractParserRuleElementFinder {
1269 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.EnumInterpretation");
1270 private final Group cGroup = (Group)rule.eContents().get(1);
1271 private final Keyword cEnumKeyword_0 = (Keyword)cGroup.eContents().get(0);
1272 private final Assignment cSymbolAssignment_1 = (Assignment)cGroup.eContents().get(1);
1273 private final RuleCall cSymbolModelSymbolParserRuleCall_1_0 = (RuleCall)cSymbolAssignment_1.eContents().get(0);
1274 private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
1275 private final Assignment cObjectsAssignment_3 = (Assignment)cGroup.eContents().get(3);
1276 private final RuleCall cObjectsNamedObjectParserRuleCall_3_0 = (RuleCall)cObjectsAssignment_3.eContents().get(0);
1277 private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4);
1278
1279 //EnumInterpretation:
1280 // 'enum' Symbol=ModelSymbol '{' objects+=NamedObject+ '}';
1281 @Override public ParserRule getRule() { return rule; }
1282
1283 //'enum' Symbol=ModelSymbol '{' objects+=NamedObject+ '}'
1284 public Group getGroup() { return cGroup; }
1285
1286 //'enum'
1287 public Keyword getEnumKeyword_0() { return cEnumKeyword_0; }
1288
1289 //Symbol=ModelSymbol
1290 public Assignment getSymbolAssignment_1() { return cSymbolAssignment_1; }
1291
1292 //ModelSymbol
1293 public RuleCall getSymbolModelSymbolParserRuleCall_1_0() { return cSymbolModelSymbolParserRuleCall_1_0; }
1294
1295 //'{'
1296 public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; }
1297
1298 //objects+=NamedObject+
1299 public Assignment getObjectsAssignment_3() { return cObjectsAssignment_3; }
1300
1301 //NamedObject
1302 public RuleCall getObjectsNamedObjectParserRuleCall_3_0() { return cObjectsNamedObjectParserRuleCall_3_0; }
1303
1304 //'}'
1305 public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; }
1306 }
1307 public class FieldRelationInterpretationElements extends AbstractParserRuleElementFinder {
1308 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.FieldRelationInterpretation");
1309 private final Group cGroup = (Group)rule.eContents().get(1);
1310 private final Assignment cContainmentAssignment_0 = (Assignment)cGroup.eContents().get(0);
1311 private final Keyword cContainmentContainmentKeyword_0_0 = (Keyword)cContainmentAssignment_0.eContents().get(0);
1312 private final Assignment cSymbolAssignment_1 = (Assignment)cGroup.eContents().get(1);
1313 private final RuleCall cSymbolModelSymbolParserRuleCall_1_0 = (RuleCall)cSymbolAssignment_1.eContents().get(0);
1314 private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2);
1315 private final Assignment cMultiplicityAssignment_3 = (Assignment)cGroup.eContents().get(3);
1316 private final RuleCall cMultiplicityMultiplicityDefinitionParserRuleCall_3_0 = (RuleCall)cMultiplicityAssignment_3.eContents().get(0);
1317 private final Assignment cTargetAssignment_4 = (Assignment)cGroup.eContents().get(4);
1318 private final RuleCall cTargetSymbolParserRuleCall_4_0 = (RuleCall)cTargetAssignment_4.eContents().get(0);
1319
1320 //FieldRelationInterpretation:
1321 // containment?='containment' symbol=ModelSymbol ':' multiplicity=MultiplicityDefinition? target=Symbol;
1322 @Override public ParserRule getRule() { return rule; }
1323
1324 //containment?='containment' symbol=ModelSymbol ':' multiplicity=MultiplicityDefinition? target=Symbol
1325 public Group getGroup() { return cGroup; }
1326
1327 //containment?='containment'
1328 public Assignment getContainmentAssignment_0() { return cContainmentAssignment_0; }
1329
1330 //'containment'
1331 public Keyword getContainmentContainmentKeyword_0_0() { return cContainmentContainmentKeyword_0_0; }
1332
1333 //symbol=ModelSymbol
1334 public Assignment getSymbolAssignment_1() { return cSymbolAssignment_1; }
1335
1336 //ModelSymbol
1337 public RuleCall getSymbolModelSymbolParserRuleCall_1_0() { return cSymbolModelSymbolParserRuleCall_1_0; }
1338
1339 //':'
1340 public Keyword getColonKeyword_2() { return cColonKeyword_2; }
1341
1342 //multiplicity=MultiplicityDefinition?
1343 public Assignment getMultiplicityAssignment_3() { return cMultiplicityAssignment_3; }
1344
1345 //MultiplicityDefinition
1346 public RuleCall getMultiplicityMultiplicityDefinitionParserRuleCall_3_0() { return cMultiplicityMultiplicityDefinitionParserRuleCall_3_0; }
1347
1348 //target=Symbol
1349 public Assignment getTargetAssignment_4() { return cTargetAssignment_4; }
1350
1351 //Symbol
1352 public RuleCall getTargetSymbolParserRuleCall_4_0() { return cTargetSymbolParserRuleCall_4_0; }
1353 }
1354 public class GlobalRelationInterpretationElements extends AbstractParserRuleElementFinder {
1355 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.GlobalRelationInterpretation");
1356 private final Group cGroup = (Group)rule.eContents().get(1);
1357 private final Assignment cContainmentAssignment_0 = (Assignment)cGroup.eContents().get(0);
1358 private final Keyword cContainmentContainmentKeyword_0_0 = (Keyword)cContainmentAssignment_0.eContents().get(0);
1359 private final Keyword cRelationKeyword_1 = (Keyword)cGroup.eContents().get(1);
1360 private final Assignment cSymbolAssignment_2 = (Assignment)cGroup.eContents().get(2);
1361 private final RuleCall cSymbolModelSymbolParserRuleCall_2_0 = (RuleCall)cSymbolAssignment_2.eContents().get(0);
1362 private final Keyword cColonKeyword_3 = (Keyword)cGroup.eContents().get(3);
1363 private final Assignment cSourceMultiplicityAssignment_4 = (Assignment)cGroup.eContents().get(4);
1364 private final RuleCall cSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0 = (RuleCall)cSourceMultiplicityAssignment_4.eContents().get(0);
1365 private final Assignment cSourceAssignment_5 = (Assignment)cGroup.eContents().get(5);
1366 private final RuleCall cSourceSymbolParserRuleCall_5_0 = (RuleCall)cSourceAssignment_5.eContents().get(0);
1367 private final Assignment cTargetMultiplicityAssignment_6 = (Assignment)cGroup.eContents().get(6);
1368 private final RuleCall cTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0 = (RuleCall)cTargetMultiplicityAssignment_6.eContents().get(0);
1369 private final Assignment cTargetAssignment_7 = (Assignment)cGroup.eContents().get(7);
1370 private final RuleCall cTargetSymbolParserRuleCall_7_0 = (RuleCall)cTargetAssignment_7.eContents().get(0);
1371
1372 //GlobalRelationInterpretation:
1373 // containment?='containment' 'relation' symbol=ModelSymbol ':' sourceMultiplicity=MultiplicityDefinition? source=Symbol
1374 // targetMultiplicity=MultiplicityDefinition? target=Symbol;
1375 @Override public ParserRule getRule() { return rule; }
1376
1377 //containment?='containment' 'relation' symbol=ModelSymbol ':' sourceMultiplicity=MultiplicityDefinition? source=Symbol
1378 //targetMultiplicity=MultiplicityDefinition? target=Symbol
1379 public Group getGroup() { return cGroup; }
1380
1381 //containment?='containment'
1382 public Assignment getContainmentAssignment_0() { return cContainmentAssignment_0; }
1383
1384 //'containment'
1385 public Keyword getContainmentContainmentKeyword_0_0() { return cContainmentContainmentKeyword_0_0; }
1386
1387 //'relation'
1388 public Keyword getRelationKeyword_1() { return cRelationKeyword_1; }
1389
1390 //symbol=ModelSymbol
1391 public Assignment getSymbolAssignment_2() { return cSymbolAssignment_2; }
1392
1393 //ModelSymbol
1394 public RuleCall getSymbolModelSymbolParserRuleCall_2_0() { return cSymbolModelSymbolParserRuleCall_2_0; }
1395
1396 //':'
1397 public Keyword getColonKeyword_3() { return cColonKeyword_3; }
1398
1399 //sourceMultiplicity=MultiplicityDefinition?
1400 public Assignment getSourceMultiplicityAssignment_4() { return cSourceMultiplicityAssignment_4; }
1401
1402 //MultiplicityDefinition
1403 public RuleCall getSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0() { return cSourceMultiplicityMultiplicityDefinitionParserRuleCall_4_0; }
1404
1405 //source=Symbol
1406 public Assignment getSourceAssignment_5() { return cSourceAssignment_5; }
1407
1408 //Symbol
1409 public RuleCall getSourceSymbolParserRuleCall_5_0() { return cSourceSymbolParserRuleCall_5_0; }
1410
1411 //targetMultiplicity=MultiplicityDefinition?
1412 public Assignment getTargetMultiplicityAssignment_6() { return cTargetMultiplicityAssignment_6; }
1413
1414 //MultiplicityDefinition
1415 public RuleCall getTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0() { return cTargetMultiplicityMultiplicityDefinitionParserRuleCall_6_0; }
1416
1417 //target=Symbol
1418 public Assignment getTargetAssignment_7() { return cTargetAssignment_7; }
1419
1420 //Symbol
1421 public RuleCall getTargetSymbolParserRuleCall_7_0() { return cTargetSymbolParserRuleCall_7_0; }
1422 }
1423 public class MultiplicityDefinitionElements extends AbstractParserRuleElementFinder {
1424 private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicityDefinition");
1425 private final Group cGroup = (Group)rule.eContents().get(1);
1426 private final Assignment cLowerAssignment_0 = (Assignment)cGroup.eContents().get(0);
1427 private final RuleCall cLowerINTTerminalRuleCall_0_0 = (RuleCall)cLowerAssignment_0.eContents().get(0);
1428 private final Keyword cFullStopFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1);
1429 private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2);
1430 private final Assignment cUpperAssignment_2_0 = (Assignment)cAlternatives_2.eContents().get(0);
1431 private final RuleCall cUpperINTTerminalRuleCall_2_0_0 = (RuleCall)cUpperAssignment_2_0.eContents().get(0);
1432 private final Assignment cUnlimitedUpperAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1);
1433 private final Keyword cUnlimitedUpperAsteriskKeyword_2_1_0 = (Keyword)cUnlimitedUpperAssignment_2_1.eContents().get(0);
1434
1435 //MultiplicityDefinition:
1436 // lower=INT '..' (upper=INT | unlimitedUpper?='*');
1437 @Override public ParserRule getRule() { return rule; }
1438
1439 //lower=INT '..' (upper=INT | unlimitedUpper?='*')
1440 public Group getGroup() { return cGroup; }
1441
1442 //lower=INT
1443 public Assignment getLowerAssignment_0() { return cLowerAssignment_0; }
1444
1445 //INT
1446 public RuleCall getLowerINTTerminalRuleCall_0_0() { return cLowerINTTerminalRuleCall_0_0; }
1447
1448 //'..'
1449 public Keyword getFullStopFullStopKeyword_1() { return cFullStopFullStopKeyword_1; }
1450
1451 //upper=INT | unlimitedUpper?='*'
1452 public Alternatives getAlternatives_2() { return cAlternatives_2; }
1453
1454 //upper=INT
1455 public Assignment getUpperAssignment_2_0() { return cUpperAssignment_2_0; }
1456
1457 //INT
1458 public RuleCall getUpperINTTerminalRuleCall_2_0_0() { return cUpperINTTerminalRuleCall_2_0_0; }
1459
1460 //unlimitedUpper?='*'
1461 public Assignment getUnlimitedUpperAssignment_2_1() { return cUnlimitedUpperAssignment_2_1; }
1462
1463 //'*'
1464 public Keyword getUnlimitedUpperAsteriskKeyword_2_1_0() { return cUnlimitedUpperAsteriskKeyword_2_1_0; }
1465 }
1466
1467
1468 private final ProblemElements pProblem;
1469 private final StatementElements pStatement;
1470 private final TerminalRule tSTRING;
1471 private final REALLiteralElements pREALLiteral;
1472 private final INTLiteralElements pINTLiteral;
1473 private final BooleanValueElements pBooleanValue;
1474 private final TruthValueElements pTruthValue;
1475 private final InterpretationElements pInterpretation;
1476 private final BasicInterpretationElements pBasicInterpretation;
1477 private final SymbolElements pSymbol;
1478 private final ModelSymbolElements pModelSymbol;
1479 private final PartialitySymbolElements pPartialitySymbol;
1480 private final ExistSymbolElements pExistSymbol;
1481 private final EqualsSymbolElements pEqualsSymbol;
1482 private final DataSymbolElements pDataSymbol;
1483 private final BooleanSymbolElements pBooleanSymbol;
1484 private final IntegerSymbolElements pIntegerSymbol;
1485 private final RealSymbolElements pRealSymbol;
1486 private final StringSymbolElements pStringSymbol;
1487 private final ComplexObjectElements pComplexObject;
1488 private final ObjectElements pObject;
1489 private final NamedObjectElements pNamedObject;
1490 private final UnnamedObjectElements pUnnamedObject;
1491 private final DataObjectElements pDataObject;
1492 private final BooleanObjectElements pBooleanObject;
1493 private final IntObjectElements pIntObject;
1494 private final RealObjectElements pRealObject;
1495 private final StringObjectElements pStringObject;
1496 private final PredicateElements pPredicate;
1497 private final PredicateSymbolElements pPredicateSymbol;
1498 private final ErrorPredicateElements pErrorPredicate;
1499 private final ParameterElements pParameter;
1500 private final PatternBodyElements pPatternBody;
1501 private final PolarityElements pPolarity;
1502 private final ConstraintElements pConstraint;
1503 private final ClosureTypeElements pClosureType;
1504 private final LiteralElements pLiteral;
1505 private final VariableElements pVariable;
1506 private final AllInstancesElements pAllInstances;
1507 private final AllObjectsElements pAllObjects;
1508 private final DefaultInterpretationElements pDefaultInterpretation;
1509 private final CDInterpretationElements pCDInterpretation;
1510 private final ClassInterpretationElements pClassInterpretation;
1511 private final EnumInterpretationElements pEnumInterpretation;
1512 private final FieldRelationInterpretationElements pFieldRelationInterpretation;
1513 private final GlobalRelationInterpretationElements pGlobalRelationInterpretation;
1514 private final MultiplicityDefinitionElements pMultiplicityDefinition;
1515
1516 private final Grammar grammar;
1517
1518 private final TerminalsGrammarAccess gaTerminals;
1519
1520 @Inject
1521 public SolverLanguageGrammarAccess(GrammarProvider grammarProvider,
1522 TerminalsGrammarAccess gaTerminals) {
1523 this.grammar = internalFindGrammar(grammarProvider);
1524 this.gaTerminals = gaTerminals;
1525 this.pProblem = new ProblemElements();
1526 this.pStatement = new StatementElements();
1527 this.tSTRING = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.STRING");
1528 this.pREALLiteral = new REALLiteralElements();
1529 this.pINTLiteral = new INTLiteralElements();
1530 this.pBooleanValue = new BooleanValueElements();
1531 this.pTruthValue = new TruthValueElements();
1532 this.pInterpretation = new InterpretationElements();
1533 this.pBasicInterpretation = new BasicInterpretationElements();
1534 this.pSymbol = new SymbolElements();
1535 this.pModelSymbol = new ModelSymbolElements();
1536 this.pPartialitySymbol = new PartialitySymbolElements();
1537 this.pExistSymbol = new ExistSymbolElements();
1538 this.pEqualsSymbol = new EqualsSymbolElements();
1539 this.pDataSymbol = new DataSymbolElements();
1540 this.pBooleanSymbol = new BooleanSymbolElements();
1541 this.pIntegerSymbol = new IntegerSymbolElements();
1542 this.pRealSymbol = new RealSymbolElements();
1543 this.pStringSymbol = new StringSymbolElements();
1544 this.pComplexObject = new ComplexObjectElements();
1545 this.pObject = new ObjectElements();
1546 this.pNamedObject = new NamedObjectElements();
1547 this.pUnnamedObject = new UnnamedObjectElements();
1548 this.pDataObject = new DataObjectElements();
1549 this.pBooleanObject = new BooleanObjectElements();
1550 this.pIntObject = new IntObjectElements();
1551 this.pRealObject = new RealObjectElements();
1552 this.pStringObject = new StringObjectElements();
1553 this.pPredicate = new PredicateElements();
1554 this.pPredicateSymbol = new PredicateSymbolElements();
1555 this.pErrorPredicate = new ErrorPredicateElements();
1556 this.pParameter = new ParameterElements();
1557 this.pPatternBody = new PatternBodyElements();
1558 this.pPolarity = new PolarityElements();
1559 this.pConstraint = new ConstraintElements();
1560 this.pClosureType = new ClosureTypeElements();
1561 this.pLiteral = new LiteralElements();
1562 this.pVariable = new VariableElements();
1563 this.pAllInstances = new AllInstancesElements();
1564 this.pAllObjects = new AllObjectsElements();
1565 this.pDefaultInterpretation = new DefaultInterpretationElements();
1566 this.pCDInterpretation = new CDInterpretationElements();
1567 this.pClassInterpretation = new ClassInterpretationElements();
1568 this.pEnumInterpretation = new EnumInterpretationElements();
1569 this.pFieldRelationInterpretation = new FieldRelationInterpretationElements();
1570 this.pGlobalRelationInterpretation = new GlobalRelationInterpretationElements();
1571 this.pMultiplicityDefinition = new MultiplicityDefinitionElements();
1572 }
1573
1574 protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
1575 Grammar grammar = grammarProvider.getGrammar(this);
1576 while (grammar != null) {
1577 if ("org.eclipse.viatra.solver.language.SolverLanguage".equals(grammar.getName())) {
1578 return grammar;
1579 }
1580 List<Grammar> grammars = grammar.getUsedGrammars();
1581 if (!grammars.isEmpty()) {
1582 grammar = grammars.iterator().next();
1583 } else {
1584 return null;
1585 }
1586 }
1587 return grammar;
1588 }
1589
1590 @Override
1591 public Grammar getGrammar() {
1592 return grammar;
1593 }
1594
1595
1596 public TerminalsGrammarAccess getTerminalsGrammarAccess() {
1597 return gaTerminals;
1598 }
1599
1600
1601 //Problem:
1602 // statements+=Statement*;
1603 public ProblemElements getProblemAccess() {
1604 return pProblem;
1605 }
1606
1607 public ParserRule getProblemRule() {
1608 return getProblemAccess().getRule();
1609 }
1610
1611 //Statement:
1612 // Interpretation | Predicate;
1613 public StatementElements getStatementAccess() {
1614 return pStatement;
1615 }
1616
1617 public ParserRule getStatementRule() {
1618 return getStatementAccess().getRule();
1619 }
1620
1621 //@Override
1622 //terminal STRING:
1623 // '"' ('\\' . | !('\\' | '"'))* '"';
1624 public TerminalRule getSTRINGRule() {
1625 return tSTRING;
1626 }
1627
1628 //REALLiteral ecore::EBigDecimal:
1629 // '-'? INT '.' INT;
1630 public REALLiteralElements getREALLiteralAccess() {
1631 return pREALLiteral;
1632 }
1633
1634 public ParserRule getREALLiteralRule() {
1635 return getREALLiteralAccess().getRule();
1636 }
1637
1638 //INTLiteral ecore::EInt:
1639 // '-'? INT;
1640 public INTLiteralElements getINTLiteralAccess() {
1641 return pINTLiteral;
1642 }
1643
1644 public ParserRule getINTLiteralRule() {
1645 return getINTLiteralAccess().getRule();
1646 }
1647
1648 //BooleanValue:
1649 // {BooleanTrue} 'true' | 'false' {BooleanFalse};
1650 public BooleanValueElements getBooleanValueAccess() {
1651 return pBooleanValue;
1652 }
1653
1654 public ParserRule getBooleanValueRule() {
1655 return getBooleanValueAccess().getRule();
1656 }
1657
1658 //TruthValue:
1659 // {True} 'true' | {False} 'false' | {Unknown} 'unknown' | {Error} 'error';
1660 public TruthValueElements getTruthValueAccess() {
1661 return pTruthValue;
1662 }
1663
1664 public ParserRule getTruthValueRule() {
1665 return getTruthValueAccess().getRule();
1666 }
1667
1668 /////////////////////
1669 //// Core grammar
1670 // ///////////////////
1671 //Interpretation:
1672 // BasicInterpretation | DefaultInterpretation | CDInterpretation;
1673 public InterpretationElements getInterpretationAccess() {
1674 return pInterpretation;
1675 }
1676
1677 public ParserRule getInterpretationRule() {
1678 return getInterpretationAccess().getRule();
1679 }
1680
1681 //BasicInterpretation:
1682 // symbol=Symbol '(' objects+=ComplexObject* ')' ':' value=TruthValue;
1683 public BasicInterpretationElements getBasicInterpretationAccess() {
1684 return pBasicInterpretation;
1685 }
1686
1687 public ParserRule getBasicInterpretationRule() {
1688 return getBasicInterpretationAccess().getRule();
1689 }
1690
1691 //Symbol:
1692 // ModelSymbol | PartialitySymbol | DataSymbol;
1693 public SymbolElements getSymbolAccess() {
1694 return pSymbol;
1695 }
1696
1697 public ParserRule getSymbolRule() {
1698 return getSymbolAccess().getRule();
1699 }
1700
1701 //ModelSymbol:
1702 // name=ID;
1703 public ModelSymbolElements getModelSymbolAccess() {
1704 return pModelSymbol;
1705 }
1706
1707 public ParserRule getModelSymbolRule() {
1708 return getModelSymbolAccess().getRule();
1709 }
1710
1711 //PartialitySymbol:
1712 // ExistSymbol | EqualsSymbol;
1713 public PartialitySymbolElements getPartialitySymbolAccess() {
1714 return pPartialitySymbol;
1715 }
1716
1717 public ParserRule getPartialitySymbolRule() {
1718 return getPartialitySymbolAccess().getRule();
1719 }
1720
1721 //ExistSymbol:
1722 // 'exists' {ExistSymbol};
1723 public ExistSymbolElements getExistSymbolAccess() {
1724 return pExistSymbol;
1725 }
1726
1727 public ParserRule getExistSymbolRule() {
1728 return getExistSymbolAccess().getRule();
1729 }
1730
1731 //EqualsSymbol:
1732 // 'equals' {EqualsSymbol};
1733 public EqualsSymbolElements getEqualsSymbolAccess() {
1734 return pEqualsSymbol;
1735 }
1736
1737 public ParserRule getEqualsSymbolRule() {
1738 return getEqualsSymbolAccess().getRule();
1739 }
1740
1741 //DataSymbol:
1742 // BooleanSymbol | IntegerSymbol | RealSymbol | StringSymbol;
1743 public DataSymbolElements getDataSymbolAccess() {
1744 return pDataSymbol;
1745 }
1746
1747 public ParserRule getDataSymbolRule() {
1748 return getDataSymbolAccess().getRule();
1749 }
1750
1751 //BooleanSymbol:
1752 // 'bool' {BooleanSymbol};
1753 public BooleanSymbolElements getBooleanSymbolAccess() {
1754 return pBooleanSymbol;
1755 }
1756
1757 public ParserRule getBooleanSymbolRule() {
1758 return getBooleanSymbolAccess().getRule();
1759 }
1760
1761 //IntegerSymbol:
1762 // 'int' {IntegerSymbol};
1763 public IntegerSymbolElements getIntegerSymbolAccess() {
1764 return pIntegerSymbol;
1765 }
1766
1767 public ParserRule getIntegerSymbolRule() {
1768 return getIntegerSymbolAccess().getRule();
1769 }
1770
1771 //RealSymbol:
1772 // 'real' {RealSymbol};
1773 public RealSymbolElements getRealSymbolAccess() {
1774 return pRealSymbol;
1775 }
1776
1777 public ParserRule getRealSymbolRule() {
1778 return getRealSymbolAccess().getRule();
1779 }
1780
1781 //StringSymbol:
1782 // 'string' {StringSymbol};
1783 public StringSymbolElements getStringSymbolAccess() {
1784 return pStringSymbol;
1785 }
1786
1787 public ParserRule getStringSymbolRule() {
1788 return getStringSymbolAccess().getRule();
1789 }
1790
1791 //ComplexObject:
1792 // Object | AllInstances | AllObjects;
1793 public ComplexObjectElements getComplexObjectAccess() {
1794 return pComplexObject;
1795 }
1796
1797 public ParserRule getComplexObjectRule() {
1798 return getComplexObjectAccess().getRule();
1799 }
1800
1801 //Object:
1802 // NamedObject | UnnamedObject | DataObject;
1803 public ObjectElements getObjectAccess() {
1804 return pObject;
1805 }
1806
1807 public ParserRule getObjectRule() {
1808 return getObjectAccess().getRule();
1809 }
1810
1811 //NamedObject:
1812 // "'" name=ID "'";
1813 public NamedObjectElements getNamedObjectAccess() {
1814 return pNamedObject;
1815 }
1816
1817 public ParserRule getNamedObjectRule() {
1818 return getNamedObjectAccess().getRule();
1819 }
1820
1821 //UnnamedObject:
1822 // name=ID;
1823 public UnnamedObjectElements getUnnamedObjectAccess() {
1824 return pUnnamedObject;
1825 }
1826
1827 public ParserRule getUnnamedObjectRule() {
1828 return getUnnamedObjectAccess().getRule();
1829 }
1830
1831 //DataObject:
1832 // BooleanObject | IntObject | RealObject | StringObject;
1833 public DataObjectElements getDataObjectAccess() {
1834 return pDataObject;
1835 }
1836
1837 public ParserRule getDataObjectRule() {
1838 return getDataObjectAccess().getRule();
1839 }
1840
1841 //BooleanObject:
1842 // value=BooleanValue;
1843 public BooleanObjectElements getBooleanObjectAccess() {
1844 return pBooleanObject;
1845 }
1846
1847 public ParserRule getBooleanObjectRule() {
1848 return getBooleanObjectAccess().getRule();
1849 }
1850
1851 //IntObject:
1852 // value=INTLiteral;
1853 public IntObjectElements getIntObjectAccess() {
1854 return pIntObject;
1855 }
1856
1857 public ParserRule getIntObjectRule() {
1858 return getIntObjectAccess().getRule();
1859 }
1860
1861 //RealObject:
1862 // value=REALLiteral;
1863 public RealObjectElements getRealObjectAccess() {
1864 return pRealObject;
1865 }
1866
1867 public ParserRule getRealObjectRule() {
1868 return getRealObjectAccess().getRule();
1869 }
1870
1871 //StringObject:
1872 // value=STRING;
1873 public StringObjectElements getStringObjectAccess() {
1874 return pStringObject;
1875 }
1876
1877 public ParserRule getStringObjectRule() {
1878 return getStringObjectAccess().getRule();
1879 }
1880
1881 /////////////////////
1882 //// Predicte grammar
1883 /////////////////////
1884 //Predicate:
1885 // PredicateSymbol | ErrorPredicate;
1886 public PredicateElements getPredicateAccess() {
1887 return pPredicate;
1888 }
1889
1890 public ParserRule getPredicateRule() {
1891 return getPredicateAccess().getRule();
1892 }
1893
1894 //PredicateSymbol:
1895 // 'predicate' symbol=ModelSymbol '(' parameters+=Parameter* ')' ':' ('false' | bodies+=PatternBody ('|'
1896 // bodies+=PatternBody)*) '.';
1897 public PredicateSymbolElements getPredicateSymbolAccess() {
1898 return pPredicateSymbol;
1899 }
1900
1901 public ParserRule getPredicateSymbolRule() {
1902 return getPredicateSymbolAccess().getRule();
1903 }
1904
1905 //ErrorPredicate:
1906 // {ErrorPredicate} 'error' name=ID? ('(' parameters+=Parameter* ')') ':' ('false' | bodies+=PatternBody ('|'
1907 // bodies+=PatternBody)*) '.';
1908 public ErrorPredicateElements getErrorPredicateAccess() {
1909 return pErrorPredicate;
1910 }
1911
1912 public ParserRule getErrorPredicateRule() {
1913 return getErrorPredicateAccess().getRule();
1914 }
1915
1916 //Parameter:
1917 // variable=Variable (':' type=Symbol)?;
1918 public ParameterElements getParameterAccess() {
1919 return pParameter;
1920 }
1921
1922 public ParserRule getParameterRule() {
1923 return getParameterAccess().getRule();
1924 }
1925
1926 //PatternBody:
1927 // {PatternBody} ('true' | constraints+=Constraint*);
1928 public PatternBodyElements getPatternBodyAccess() {
1929 return pPatternBody;
1930 }
1931
1932 public ParserRule getPatternBodyRule() {
1933 return getPatternBodyAccess().getRule();
1934 }
1935
1936 //Polarity:
1937 // {Positive} '+' | {Negative} '-';
1938 public PolarityElements getPolarityAccess() {
1939 return pPolarity;
1940 }
1941
1942 public ParserRule getPolarityRule() {
1943 return getPolarityAccess().getRule();
1944 }
1945
1946 //Constraint:
1947 // polarity=Polarity? symbol=ModelSymbol ('(' params+=Literal* ')' | closureType=ClosureType '(' params+=Literal
1948 // params+=Literal ')');
1949 public ConstraintElements getConstraintAccess() {
1950 return pConstraint;
1951 }
1952
1953 public ParserRule getConstraintRule() {
1954 return getConstraintAccess().getRule();
1955 }
1956
1957 //ClosureType:
1958 // {ReflexiveClosure} '*' | {IrreflexiveClosure} '+';
1959 public ClosureTypeElements getClosureTypeAccess() {
1960 return pClosureType;
1961 }
1962
1963 public ParserRule getClosureTypeRule() {
1964 return getClosureTypeAccess().getRule();
1965 }
1966
1967 //Literal:
1968 // Variable | DataObject;
1969 public LiteralElements getLiteralAccess() {
1970 return pLiteral;
1971 }
1972
1973 public ParserRule getLiteralRule() {
1974 return getLiteralAccess().getRule();
1975 }
1976
1977 //Variable:
1978 // name=ID;
1979 public VariableElements getVariableAccess() {
1980 return pVariable;
1981 }
1982
1983 public ParserRule getVariableRule() {
1984 return getVariableAccess().getRule();
1985 }
1986
1987 /////////////////////
1988 //// Complex Interpretation grammar
1989 /////////////////////
1990 //AllInstances:
1991 // ':' symbol=Symbol;
1992 public AllInstancesElements getAllInstancesAccess() {
1993 return pAllInstances;
1994 }
1995
1996 public ParserRule getAllInstancesRule() {
1997 return getAllInstancesAccess().getRule();
1998 }
1999
2000 //AllObjects:
2001 // {AllObjects} '*';
2002 public AllObjectsElements getAllObjectsAccess() {
2003 return pAllObjects;
2004 }
2005
2006 public ParserRule getAllObjectsRule() {
2007 return getAllObjectsAccess().getRule();
2008 }
2009
2010 /////////////////////
2011 //// Defaul Interpretation grammar
2012 /////////////////////
2013 //DefaultInterpretation:
2014 // 'default' interpretation=BasicInterpretation;
2015 public DefaultInterpretationElements getDefaultInterpretationAccess() {
2016 return pDefaultInterpretation;
2017 }
2018
2019 public ParserRule getDefaultInterpretationRule() {
2020 return getDefaultInterpretationAccess().getRule();
2021 }
2022
2023 /////////////////////
2024 //// Advanced Class-Diagram interpretations
2025 /////////////////////
2026 //CDInterpretation:
2027 // ClassInterpretation | EnumInterpretation | GlobalRelationInterpretation;
2028 public CDInterpretationElements getCDInterpretationAccess() {
2029 return pCDInterpretation;
2030 }
2031
2032 public ParserRule getCDInterpretationRule() {
2033 return getCDInterpretationAccess().getRule();
2034 }
2035
2036 //ClassInterpretation:
2037 // abstract?='abstract' 'class' symbol=ModelSymbol ('extends' supertypes+=ModelSymbol+)? '{'
2038 // fielt+=FieldRelationInterpretation*
2039 // '}';
2040 public ClassInterpretationElements getClassInterpretationAccess() {
2041 return pClassInterpretation;
2042 }
2043
2044 public ParserRule getClassInterpretationRule() {
2045 return getClassInterpretationAccess().getRule();
2046 }
2047
2048 //EnumInterpretation:
2049 // 'enum' Symbol=ModelSymbol '{' objects+=NamedObject+ '}';
2050 public EnumInterpretationElements getEnumInterpretationAccess() {
2051 return pEnumInterpretation;
2052 }
2053
2054 public ParserRule getEnumInterpretationRule() {
2055 return getEnumInterpretationAccess().getRule();
2056 }
2057
2058 //FieldRelationInterpretation:
2059 // containment?='containment' symbol=ModelSymbol ':' multiplicity=MultiplicityDefinition? target=Symbol;
2060 public FieldRelationInterpretationElements getFieldRelationInterpretationAccess() {
2061 return pFieldRelationInterpretation;
2062 }
2063
2064 public ParserRule getFieldRelationInterpretationRule() {
2065 return getFieldRelationInterpretationAccess().getRule();
2066 }
2067
2068 //GlobalRelationInterpretation:
2069 // containment?='containment' 'relation' symbol=ModelSymbol ':' sourceMultiplicity=MultiplicityDefinition? source=Symbol
2070 // targetMultiplicity=MultiplicityDefinition? target=Symbol;
2071 public GlobalRelationInterpretationElements getGlobalRelationInterpretationAccess() {
2072 return pGlobalRelationInterpretation;
2073 }
2074
2075 public ParserRule getGlobalRelationInterpretationRule() {
2076 return getGlobalRelationInterpretationAccess().getRule();
2077 }
2078
2079 //MultiplicityDefinition:
2080 // lower=INT '..' (upper=INT | unlimitedUpper?='*');
2081 public MultiplicityDefinitionElements getMultiplicityDefinitionAccess() {
2082 return pMultiplicityDefinition;
2083 }
2084
2085 public ParserRule getMultiplicityDefinitionRule() {
2086 return getMultiplicityDefinitionAccess().getRule();
2087 }
2088
2089 //terminal ID:
2090 // '^'? ('a'..'z' | 'A'..'Z' | '_') ('a'..'z' | 'A'..'Z' | '_' | '0'..'9')*;
2091 public TerminalRule getIDRule() {
2092 return gaTerminals.getIDRule();
2093 }
2094
2095 //terminal INT returns ecore::EInt:
2096 // '0'..'9'+;
2097 public TerminalRule getINTRule() {
2098 return gaTerminals.getINTRule();
2099 }
2100
2101 //terminal ML_COMMENT:
2102 // '/*'->'*/';
2103 public TerminalRule getML_COMMENTRule() {
2104 return gaTerminals.getML_COMMENTRule();
2105 }
2106
2107 //terminal SL_COMMENT:
2108 // '//' !('\n' | '\r')* ('\r'? '\n')?;
2109 public TerminalRule getSL_COMMENTRule() {
2110 return gaTerminals.getSL_COMMENTRule();
2111 }
2112
2113 //terminal WS:
2114 // ' ' | '\t' | '\r' | '\n'+;
2115 public TerminalRule getWSRule() {
2116 return gaTerminals.getWSRule();
2117 }
2118
2119 //terminal ANY_OTHER:
2120 // .;
2121 public TerminalRule getANY_OTHERRule() {
2122 return gaTerminals.getANY_OTHERRule();
2123 }
2124}
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllInstances.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllInstances.java
new file mode 100644
index 00000000..17cb45fb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllInstances.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>All Instances</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AllInstances#getSymbol <em>Symbol</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAllInstances()
20 * @model
21 * @generated
22 */
23public interface AllInstances extends ComplexObject
24{
25 /**
26 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Symbol</em>' containment reference.
30 * @see #setSymbol(Symbol)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAllInstances_Symbol()
32 * @model containment="true"
33 * @generated
34 */
35 Symbol getSymbol();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AllInstances#getSymbol <em>Symbol</em>}' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Symbol</em>' containment reference.
42 * @see #getSymbol()
43 * @generated
44 */
45 void setSymbol(Symbol value);
46
47} // AllInstances
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllObjects.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllObjects.java
new file mode 100644
index 00000000..fbb18046
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AllObjects.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>All Objects</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAllObjects()
14 * @model
15 * @generated
16 */
17public interface AllObjects extends ComplexObject
18{
19} // AllObjects
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BasicInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BasicInterpretation.java
new file mode 100644
index 00000000..b4226d4a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BasicInterpretation.java
@@ -0,0 +1,84 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Basic Interpretation</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getSymbol <em>Symbol</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getObjects <em>Objects</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getValue <em>Value</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBasicInterpretation()
23 * @model
24 * @generated
25 */
26public interface BasicInterpretation extends Interpretation
27{
28 /**
29 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @return the value of the '<em>Symbol</em>' containment reference.
33 * @see #setSymbol(Symbol)
34 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBasicInterpretation_Symbol()
35 * @model containment="true"
36 * @generated
37 */
38 Symbol getSymbol();
39
40 /**
41 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getSymbol <em>Symbol</em>}' containment reference.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @param value the new value of the '<em>Symbol</em>' containment reference.
45 * @see #getSymbol()
46 * @generated
47 */
48 void setSymbol(Symbol value);
49
50 /**
51 * Returns the value of the '<em><b>Objects</b></em>' containment reference list.
52 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.ComplexObject}.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return the value of the '<em>Objects</em>' containment reference list.
56 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBasicInterpretation_Objects()
57 * @model containment="true"
58 * @generated
59 */
60 EList<ComplexObject> getObjects();
61
62 /**
63 * Returns the value of the '<em><b>Value</b></em>' containment reference.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @return the value of the '<em>Value</em>' containment reference.
67 * @see #setValue(TruthValue)
68 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBasicInterpretation_Value()
69 * @model containment="true"
70 * @generated
71 */
72 TruthValue getValue();
73
74 /**
75 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getValue <em>Value</em>}' containment reference.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @param value the new value of the '<em>Value</em>' containment reference.
79 * @see #getValue()
80 * @generated
81 */
82 void setValue(TruthValue value);
83
84} // BasicInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanFalse.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanFalse.java
new file mode 100644
index 00000000..678e8fee
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanFalse.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Boolean False</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBooleanFalse()
14 * @model
15 * @generated
16 */
17public interface BooleanFalse extends BooleanValue
18{
19} // BooleanFalse
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanObject.java
new file mode 100644
index 00000000..c2c652ab
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanObject.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Boolean Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanObject#getValue <em>Value</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBooleanObject()
20 * @model
21 * @generated
22 */
23public interface BooleanObject extends DataObject
24{
25 /**
26 * Returns the value of the '<em><b>Value</b></em>' containment reference.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Value</em>' containment reference.
30 * @see #setValue(BooleanValue)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBooleanObject_Value()
32 * @model containment="true"
33 * @generated
34 */
35 BooleanValue getValue();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanObject#getValue <em>Value</em>}' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Value</em>' containment reference.
42 * @see #getValue()
43 * @generated
44 */
45 void setValue(BooleanValue value);
46
47} // BooleanObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanSymbol.java
new file mode 100644
index 00000000..4760c96c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Boolean Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBooleanSymbol()
14 * @model
15 * @generated
16 */
17public interface BooleanSymbol extends DataSymbol
18{
19} // BooleanSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanTrue.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanTrue.java
new file mode 100644
index 00000000..7c72ec36
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanTrue.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Boolean True</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBooleanTrue()
14 * @model
15 * @generated
16 */
17public interface BooleanTrue extends BooleanValue
18{
19} // BooleanTrue
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanValue.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanValue.java
new file mode 100644
index 00000000..8fe67a48
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BooleanValue.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Boolean Value</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBooleanValue()
15 * @model
16 * @generated
17 */
18public interface BooleanValue extends EObject
19{
20} // BooleanValue
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CDInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CDInterpretation.java
new file mode 100644
index 00000000..9a69fc8a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CDInterpretation.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>CD Interpretation</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCDInterpretation()
14 * @model
15 * @generated
16 */
17public interface CDInterpretation extends Interpretation
18{
19} // CDInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassInterpretation.java
new file mode 100644
index 00000000..777e0c50
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassInterpretation.java
@@ -0,0 +1,97 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Class Interpretation</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#isAbstract <em>Abstract</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSymbol <em>Symbol</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSupertypes <em>Supertypes</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getFielt <em>Fielt</em>}</li>
21 * </ul>
22 *
23 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassInterpretation()
24 * @model
25 * @generated
26 */
27public interface ClassInterpretation extends CDInterpretation
28{
29 /**
30 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Abstract</em>' attribute.
34 * @see #setAbstract(boolean)
35 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassInterpretation_Abstract()
36 * @model
37 * @generated
38 */
39 boolean isAbstract();
40
41 /**
42 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#isAbstract <em>Abstract</em>}' attribute.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @param value the new value of the '<em>Abstract</em>' attribute.
46 * @see #isAbstract()
47 * @generated
48 */
49 void setAbstract(boolean value);
50
51 /**
52 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return the value of the '<em>Symbol</em>' containment reference.
56 * @see #setSymbol(ModelSymbol)
57 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassInterpretation_Symbol()
58 * @model containment="true"
59 * @generated
60 */
61 ModelSymbol getSymbol();
62
63 /**
64 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSymbol <em>Symbol</em>}' containment reference.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @param value the new value of the '<em>Symbol</em>' containment reference.
68 * @see #getSymbol()
69 * @generated
70 */
71 void setSymbol(ModelSymbol value);
72
73 /**
74 * Returns the value of the '<em><b>Supertypes</b></em>' containment reference list.
75 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol}.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @return the value of the '<em>Supertypes</em>' containment reference list.
79 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassInterpretation_Supertypes()
80 * @model containment="true"
81 * @generated
82 */
83 EList<ModelSymbol> getSupertypes();
84
85 /**
86 * Returns the value of the '<em><b>Fielt</b></em>' containment reference list.
87 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation}.
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @return the value of the '<em>Fielt</em>' containment reference list.
91 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassInterpretation_Fielt()
92 * @model containment="true"
93 * @generated
94 */
95 EList<FieldRelationInterpretation> getFielt();
96
97} // ClassInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClosureType.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClosureType.java
new file mode 100644
index 00000000..f9d8dc28
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClosureType.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Closure Type</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClosureType()
15 * @model
16 * @generated
17 */
18public interface ClosureType extends EObject
19{
20} // ClosureType
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ComplexObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ComplexObject.java
new file mode 100644
index 00000000..e266f231
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ComplexObject.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Complex Object</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getComplexObject()
15 * @model
16 * @generated
17 */
18public interface ComplexObject extends EObject
19{
20} // ComplexObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Constraint.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Constraint.java
new file mode 100644
index 00000000..9c957def
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Constraint.java
@@ -0,0 +1,109 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8import org.eclipse.emf.ecore.EObject;
9
10/**
11 * <!-- begin-user-doc -->
12 * A representation of the model object '<em><b>Constraint</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * <p>
16 * The following features are supported:
17 * </p>
18 * <ul>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getPolarity <em>Polarity</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getSymbol <em>Symbol</em>}</li>
21 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getParams <em>Params</em>}</li>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getClosureType <em>Closure Type</em>}</li>
23 * </ul>
24 *
25 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConstraint()
26 * @model
27 * @generated
28 */
29public interface Constraint extends EObject
30{
31 /**
32 * Returns the value of the '<em><b>Polarity</b></em>' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Polarity</em>' containment reference.
36 * @see #setPolarity(Polarity)
37 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConstraint_Polarity()
38 * @model containment="true"
39 * @generated
40 */
41 Polarity getPolarity();
42
43 /**
44 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getPolarity <em>Polarity</em>}' containment reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @param value the new value of the '<em>Polarity</em>' containment reference.
48 * @see #getPolarity()
49 * @generated
50 */
51 void setPolarity(Polarity value);
52
53 /**
54 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @return the value of the '<em>Symbol</em>' containment reference.
58 * @see #setSymbol(ModelSymbol)
59 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConstraint_Symbol()
60 * @model containment="true"
61 * @generated
62 */
63 ModelSymbol getSymbol();
64
65 /**
66 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getSymbol <em>Symbol</em>}' containment reference.
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @param value the new value of the '<em>Symbol</em>' containment reference.
70 * @see #getSymbol()
71 * @generated
72 */
73 void setSymbol(ModelSymbol value);
74
75 /**
76 * Returns the value of the '<em><b>Params</b></em>' containment reference list.
77 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Literal}.
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @return the value of the '<em>Params</em>' containment reference list.
81 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConstraint_Params()
82 * @model containment="true"
83 * @generated
84 */
85 EList<Literal> getParams();
86
87 /**
88 * Returns the value of the '<em><b>Closure Type</b></em>' containment reference.
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @return the value of the '<em>Closure Type</em>' containment reference.
92 * @see #setClosureType(ClosureType)
93 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConstraint_ClosureType()
94 * @model containment="true"
95 * @generated
96 */
97 ClosureType getClosureType();
98
99 /**
100 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getClosureType <em>Closure Type</em>}' containment reference.
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @param value the new value of the '<em>Closure Type</em>' containment reference.
104 * @see #getClosureType()
105 * @generated
106 */
107 void setClosureType(ClosureType value);
108
109} // Constraint
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataObject.java
new file mode 100644
index 00000000..79a0af43
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataObject.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Data Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDataObject()
14 * @model
15 * @generated
16 */
17public interface DataObject extends org.eclipse.viatra.solver.language.solverLanguage.Object, Literal
18{
19} // DataObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataSymbol.java
new file mode 100644
index 00000000..eae8175a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DataSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Data Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDataSymbol()
14 * @model
15 * @generated
16 */
17public interface DataSymbol extends Symbol
18{
19} // DataSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultInterpretation.java
new file mode 100644
index 00000000..2e9209f6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultInterpretation.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Default Interpretation</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation#getInterpretation <em>Interpretation</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultInterpretation()
20 * @model
21 * @generated
22 */
23public interface DefaultInterpretation extends Interpretation
24{
25 /**
26 * Returns the value of the '<em><b>Interpretation</b></em>' containment reference.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Interpretation</em>' containment reference.
30 * @see #setInterpretation(BasicInterpretation)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultInterpretation_Interpretation()
32 * @model containment="true"
33 * @generated
34 */
35 BasicInterpretation getInterpretation();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation#getInterpretation <em>Interpretation</em>}' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Interpretation</em>' containment reference.
42 * @see #getInterpretation()
43 * @generated
44 */
45 void setInterpretation(BasicInterpretation value);
46
47} // DefaultInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumInterpretation.java
new file mode 100644
index 00000000..8d48c0df
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumInterpretation.java
@@ -0,0 +1,61 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Enum Interpretation</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getSymbol <em>Symbol</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getObjects <em>Objects</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumInterpretation()
22 * @model
23 * @generated
24 */
25public interface EnumInterpretation extends CDInterpretation
26{
27 /**
28 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Symbol</em>' containment reference.
32 * @see #setSymbol(ModelSymbol)
33 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumInterpretation_Symbol()
34 * @model containment="true"
35 * @generated
36 */
37 ModelSymbol getSymbol();
38
39 /**
40 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getSymbol <em>Symbol</em>}' containment reference.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @param value the new value of the '<em>Symbol</em>' containment reference.
44 * @see #getSymbol()
45 * @generated
46 */
47 void setSymbol(ModelSymbol value);
48
49 /**
50 * Returns the value of the '<em><b>Objects</b></em>' containment reference list.
51 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.NamedObject}.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @return the value of the '<em>Objects</em>' containment reference list.
55 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumInterpretation_Objects()
56 * @model containment="true"
57 * @generated
58 */
59 EList<NamedObject> getObjects();
60
61} // EnumInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EqualsSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EqualsSymbol.java
new file mode 100644
index 00000000..1edb994f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EqualsSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Equals Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEqualsSymbol()
14 * @model
15 * @generated
16 */
17public interface EqualsSymbol extends PartialitySymbol
18{
19} // EqualsSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Error.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Error.java
new file mode 100644
index 00000000..bf99bc42
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Error.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Error</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getError()
14 * @model
15 * @generated
16 */
17public interface Error extends TruthValue
18{
19} // Error
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ErrorPredicate.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ErrorPredicate.java
new file mode 100644
index 00000000..c8e49d48
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ErrorPredicate.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Error Predicate</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getErrorPredicate()
20 * @model
21 * @generated
22 */
23public interface ErrorPredicate extends Predicate
24{
25 /**
26 * Returns the value of the '<em><b>Name</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Name</em>' attribute.
30 * @see #setName(String)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getErrorPredicate_Name()
32 * @model
33 * @generated
34 */
35 String getName();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate#getName <em>Name</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Name</em>' attribute.
42 * @see #getName()
43 * @generated
44 */
45 void setName(String value);
46
47} // ErrorPredicate
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExistSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExistSymbol.java
new file mode 100644
index 00000000..4dad3295
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExistSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Exist Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExistSymbol()
14 * @model
15 * @generated
16 */
17public interface ExistSymbol extends PartialitySymbol
18{
19} // ExistSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/False.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/False.java
new file mode 100644
index 00000000..71947237
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/False.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>False</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFalse()
14 * @model
15 * @generated
16 */
17public interface False extends TruthValue
18{
19} // False
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FieldRelationInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FieldRelationInterpretation.java
new file mode 100644
index 00000000..eccf49e0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FieldRelationInterpretation.java
@@ -0,0 +1,117 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Field Relation Interpretation</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#isContainment <em>Containment</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getSymbol <em>Symbol</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getMultiplicity <em>Multiplicity</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getTarget <em>Target</em>}</li>
21 * </ul>
22 *
23 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFieldRelationInterpretation()
24 * @model
25 * @generated
26 */
27public interface FieldRelationInterpretation extends EObject
28{
29 /**
30 * Returns the value of the '<em><b>Containment</b></em>' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Containment</em>' attribute.
34 * @see #setContainment(boolean)
35 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFieldRelationInterpretation_Containment()
36 * @model
37 * @generated
38 */
39 boolean isContainment();
40
41 /**
42 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#isContainment <em>Containment</em>}' attribute.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @param value the new value of the '<em>Containment</em>' attribute.
46 * @see #isContainment()
47 * @generated
48 */
49 void setContainment(boolean value);
50
51 /**
52 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return the value of the '<em>Symbol</em>' containment reference.
56 * @see #setSymbol(ModelSymbol)
57 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFieldRelationInterpretation_Symbol()
58 * @model containment="true"
59 * @generated
60 */
61 ModelSymbol getSymbol();
62
63 /**
64 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getSymbol <em>Symbol</em>}' containment reference.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @param value the new value of the '<em>Symbol</em>' containment reference.
68 * @see #getSymbol()
69 * @generated
70 */
71 void setSymbol(ModelSymbol value);
72
73 /**
74 * Returns the value of the '<em><b>Multiplicity</b></em>' containment reference.
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @return the value of the '<em>Multiplicity</em>' containment reference.
78 * @see #setMultiplicity(MultiplicityDefinition)
79 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFieldRelationInterpretation_Multiplicity()
80 * @model containment="true"
81 * @generated
82 */
83 MultiplicityDefinition getMultiplicity();
84
85 /**
86 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getMultiplicity <em>Multiplicity</em>}' containment reference.
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @param value the new value of the '<em>Multiplicity</em>' containment reference.
90 * @see #getMultiplicity()
91 * @generated
92 */
93 void setMultiplicity(MultiplicityDefinition value);
94
95 /**
96 * Returns the value of the '<em><b>Target</b></em>' containment reference.
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @return the value of the '<em>Target</em>' containment reference.
100 * @see #setTarget(Symbol)
101 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFieldRelationInterpretation_Target()
102 * @model containment="true"
103 * @generated
104 */
105 Symbol getTarget();
106
107 /**
108 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getTarget <em>Target</em>}' containment reference.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @param value the new value of the '<em>Target</em>' containment reference.
112 * @see #getTarget()
113 * @generated
114 */
115 void setTarget(Symbol value);
116
117} // FieldRelationInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/GlobalRelationInterpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/GlobalRelationInterpretation.java
new file mode 100644
index 00000000..59ab4278
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/GlobalRelationInterpretation.java
@@ -0,0 +1,162 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Global Relation Interpretation</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#isContainment <em>Containment</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSymbol <em>Symbol</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSourceMultiplicity <em>Source Multiplicity</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSource <em>Source</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTargetMultiplicity <em>Target Multiplicity</em>}</li>
21 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTarget <em>Target</em>}</li>
22 * </ul>
23 *
24 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation()
25 * @model
26 * @generated
27 */
28public interface GlobalRelationInterpretation extends CDInterpretation
29{
30 /**
31 * Returns the value of the '<em><b>Containment</b></em>' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @return the value of the '<em>Containment</em>' attribute.
35 * @see #setContainment(boolean)
36 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation_Containment()
37 * @model
38 * @generated
39 */
40 boolean isContainment();
41
42 /**
43 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#isContainment <em>Containment</em>}' attribute.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @param value the new value of the '<em>Containment</em>' attribute.
47 * @see #isContainment()
48 * @generated
49 */
50 void setContainment(boolean value);
51
52 /**
53 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @return the value of the '<em>Symbol</em>' containment reference.
57 * @see #setSymbol(ModelSymbol)
58 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation_Symbol()
59 * @model containment="true"
60 * @generated
61 */
62 ModelSymbol getSymbol();
63
64 /**
65 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSymbol <em>Symbol</em>}' containment reference.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @param value the new value of the '<em>Symbol</em>' containment reference.
69 * @see #getSymbol()
70 * @generated
71 */
72 void setSymbol(ModelSymbol value);
73
74 /**
75 * Returns the value of the '<em><b>Source Multiplicity</b></em>' containment reference.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @return the value of the '<em>Source Multiplicity</em>' containment reference.
79 * @see #setSourceMultiplicity(MultiplicityDefinition)
80 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation_SourceMultiplicity()
81 * @model containment="true"
82 * @generated
83 */
84 MultiplicityDefinition getSourceMultiplicity();
85
86 /**
87 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSourceMultiplicity <em>Source Multiplicity</em>}' containment reference.
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @param value the new value of the '<em>Source Multiplicity</em>' containment reference.
91 * @see #getSourceMultiplicity()
92 * @generated
93 */
94 void setSourceMultiplicity(MultiplicityDefinition value);
95
96 /**
97 * Returns the value of the '<em><b>Source</b></em>' containment reference.
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @return the value of the '<em>Source</em>' containment reference.
101 * @see #setSource(Symbol)
102 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation_Source()
103 * @model containment="true"
104 * @generated
105 */
106 Symbol getSource();
107
108 /**
109 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSource <em>Source</em>}' containment reference.
110 * <!-- begin-user-doc -->
111 * <!-- end-user-doc -->
112 * @param value the new value of the '<em>Source</em>' containment reference.
113 * @see #getSource()
114 * @generated
115 */
116 void setSource(Symbol value);
117
118 /**
119 * Returns the value of the '<em><b>Target Multiplicity</b></em>' containment reference.
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @return the value of the '<em>Target Multiplicity</em>' containment reference.
123 * @see #setTargetMultiplicity(MultiplicityDefinition)
124 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation_TargetMultiplicity()
125 * @model containment="true"
126 * @generated
127 */
128 MultiplicityDefinition getTargetMultiplicity();
129
130 /**
131 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTargetMultiplicity <em>Target Multiplicity</em>}' containment reference.
132 * <!-- begin-user-doc -->
133 * <!-- end-user-doc -->
134 * @param value the new value of the '<em>Target Multiplicity</em>' containment reference.
135 * @see #getTargetMultiplicity()
136 * @generated
137 */
138 void setTargetMultiplicity(MultiplicityDefinition value);
139
140 /**
141 * Returns the value of the '<em><b>Target</b></em>' containment reference.
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @return the value of the '<em>Target</em>' containment reference.
145 * @see #setTarget(Symbol)
146 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getGlobalRelationInterpretation_Target()
147 * @model containment="true"
148 * @generated
149 */
150 Symbol getTarget();
151
152 /**
153 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTarget <em>Target</em>}' containment reference.
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @param value the new value of the '<em>Target</em>' containment reference.
157 * @see #getTarget()
158 * @generated
159 */
160 void setTarget(Symbol value);
161
162} // GlobalRelationInterpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntObject.java
new file mode 100644
index 00000000..1a42b0c3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntObject.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Int Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.IntObject#getValue <em>Value</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntObject()
20 * @model
21 * @generated
22 */
23public interface IntObject extends DataObject
24{
25 /**
26 * Returns the value of the '<em><b>Value</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Value</em>' attribute.
30 * @see #setValue(int)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntObject_Value()
32 * @model
33 * @generated
34 */
35 int getValue();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.IntObject#getValue <em>Value</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Value</em>' attribute.
42 * @see #getValue()
43 * @generated
44 */
45 void setValue(int value);
46
47} // IntObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntegerSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntegerSymbol.java
new file mode 100644
index 00000000..d1472499
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntegerSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Integer Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntegerSymbol()
14 * @model
15 * @generated
16 */
17public interface IntegerSymbol extends DataSymbol
18{
19} // IntegerSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java
new file mode 100644
index 00000000..56541016
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Interpretation</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterpretation()
14 * @model
15 * @generated
16 */
17public interface Interpretation extends Statement
18{
19} // Interpretation
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IrreflexiveClosure.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IrreflexiveClosure.java
new file mode 100644
index 00000000..eca04f1e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IrreflexiveClosure.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Irreflexive Closure</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIrreflexiveClosure()
14 * @model
15 * @generated
16 */
17public interface IrreflexiveClosure extends ClosureType
18{
19} // IrreflexiveClosure
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java
new file mode 100644
index 00000000..259abe8c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Literal</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLiteral()
15 * @model
16 * @generated
17 */
18public interface Literal extends EObject
19{
20} // Literal
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ModelSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ModelSymbol.java
new file mode 100644
index 00000000..0d91b791
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ModelSymbol.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Model Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getModelSymbol()
20 * @model
21 * @generated
22 */
23public interface ModelSymbol extends Symbol
24{
25 /**
26 * Returns the value of the '<em><b>Name</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Name</em>' attribute.
30 * @see #setName(String)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getModelSymbol_Name()
32 * @model
33 * @generated
34 */
35 String getName();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol#getName <em>Name</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Name</em>' attribute.
42 * @see #getName()
43 * @generated
44 */
45 void setName(String value);
46
47} // ModelSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiplicityDefinition.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiplicityDefinition.java
new file mode 100644
index 00000000..9b4def59
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiplicityDefinition.java
@@ -0,0 +1,94 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Multiplicity Definition</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getLower <em>Lower</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getUpper <em>Upper</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#isUnlimitedUpper <em>Unlimited Upper</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicityDefinition()
23 * @model
24 * @generated
25 */
26public interface MultiplicityDefinition extends EObject
27{
28 /**
29 * Returns the value of the '<em><b>Lower</b></em>' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @return the value of the '<em>Lower</em>' attribute.
33 * @see #setLower(int)
34 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicityDefinition_Lower()
35 * @model
36 * @generated
37 */
38 int getLower();
39
40 /**
41 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getLower <em>Lower</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @param value the new value of the '<em>Lower</em>' attribute.
45 * @see #getLower()
46 * @generated
47 */
48 void setLower(int value);
49
50 /**
51 * Returns the value of the '<em><b>Upper</b></em>' attribute.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @return the value of the '<em>Upper</em>' attribute.
55 * @see #setUpper(int)
56 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicityDefinition_Upper()
57 * @model
58 * @generated
59 */
60 int getUpper();
61
62 /**
63 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getUpper <em>Upper</em>}' attribute.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @param value the new value of the '<em>Upper</em>' attribute.
67 * @see #getUpper()
68 * @generated
69 */
70 void setUpper(int value);
71
72 /**
73 * Returns the value of the '<em><b>Unlimited Upper</b></em>' attribute.
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @return the value of the '<em>Unlimited Upper</em>' attribute.
77 * @see #setUnlimitedUpper(boolean)
78 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicityDefinition_UnlimitedUpper()
79 * @model
80 * @generated
81 */
82 boolean isUnlimitedUpper();
83
84 /**
85 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#isUnlimitedUpper <em>Unlimited Upper</em>}' attribute.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @param value the new value of the '<em>Unlimited Upper</em>' attribute.
89 * @see #isUnlimitedUpper()
90 * @generated
91 */
92 void setUnlimitedUpper(boolean value);
93
94} // MultiplicityDefinition
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedObject.java
new file mode 100644
index 00000000..a6deaea8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedObject.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Named Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.NamedObject#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamedObject()
20 * @model
21 * @generated
22 */
23public interface NamedObject extends org.eclipse.viatra.solver.language.solverLanguage.Object
24{
25 /**
26 * Returns the value of the '<em><b>Name</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Name</em>' attribute.
30 * @see #setName(String)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamedObject_Name()
32 * @model
33 * @generated
34 */
35 String getName();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedObject#getName <em>Name</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Name</em>' attribute.
42 * @see #getName()
43 * @generated
44 */
45 void setName(String value);
46
47} // NamedObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Negative.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Negative.java
new file mode 100644
index 00000000..5d735fec
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Negative.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Negative</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNegative()
14 * @model
15 * @generated
16 */
17public interface Negative extends Polarity
18{
19} // Negative
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Object.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Object.java
new file mode 100644
index 00000000..908ae5a6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Object.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObject()
14 * @model
15 * @generated
16 */
17public interface Object extends ComplexObject
18{
19} // Object
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Parameter.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Parameter.java
new file mode 100644
index 00000000..e4ef1c28
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Parameter.java
@@ -0,0 +1,71 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Parameter</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter#getVariable <em>Variable</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter#getType <em>Type</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getParameter()
22 * @model
23 * @generated
24 */
25public interface Parameter extends EObject
26{
27 /**
28 * Returns the value of the '<em><b>Variable</b></em>' containment reference.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Variable</em>' containment reference.
32 * @see #setVariable(Variable)
33 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getParameter_Variable()
34 * @model containment="true"
35 * @generated
36 */
37 Variable getVariable();
38
39 /**
40 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter#getVariable <em>Variable</em>}' containment reference.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @param value the new value of the '<em>Variable</em>' containment reference.
44 * @see #getVariable()
45 * @generated
46 */
47 void setVariable(Variable value);
48
49 /**
50 * Returns the value of the '<em><b>Type</b></em>' containment reference.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Type</em>' containment reference.
54 * @see #setType(Symbol)
55 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getParameter_Type()
56 * @model containment="true"
57 * @generated
58 */
59 Symbol getType();
60
61 /**
62 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter#getType <em>Type</em>}' containment reference.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @param value the new value of the '<em>Type</em>' containment reference.
66 * @see #getType()
67 * @generated
68 */
69 void setType(Symbol value);
70
71} // Parameter
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PartialitySymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PartialitySymbol.java
new file mode 100644
index 00000000..a4331248
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PartialitySymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Partiality Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPartialitySymbol()
14 * @model
15 * @generated
16 */
17public interface PartialitySymbol extends Symbol
18{
19} // PartialitySymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PatternBody.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PatternBody.java
new file mode 100644
index 00000000..62be12a1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PatternBody.java
@@ -0,0 +1,40 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8import org.eclipse.emf.ecore.EObject;
9
10/**
11 * <!-- begin-user-doc -->
12 * A representation of the model object '<em><b>Pattern Body</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * <p>
16 * The following features are supported:
17 * </p>
18 * <ul>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.PatternBody#getConstraints <em>Constraints</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPatternBody()
23 * @model
24 * @generated
25 */
26public interface PatternBody extends EObject
27{
28 /**
29 * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
30 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Constraint}.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Constraints</em>' containment reference list.
34 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPatternBody_Constraints()
35 * @model containment="true"
36 * @generated
37 */
38 EList<Constraint> getConstraints();
39
40} // PatternBody
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Polarity.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Polarity.java
new file mode 100644
index 00000000..ba30c6ad
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Polarity.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Polarity</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPolarity()
15 * @model
16 * @generated
17 */
18public interface Polarity extends EObject
19{
20} // Polarity
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Positive.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Positive.java
new file mode 100644
index 00000000..075a865f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Positive.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Positive</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPositive()
14 * @model
15 * @generated
16 */
17public interface Positive extends Polarity
18{
19} // Positive
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java
new file mode 100644
index 00000000..fc61ea86
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java
@@ -0,0 +1,51 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Predicate</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate#getParameters <em>Parameters</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate#getBodies <em>Bodies</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicate()
22 * @model
23 * @generated
24 */
25public interface Predicate extends Statement
26{
27 /**
28 * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
29 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Parameter}.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @return the value of the '<em>Parameters</em>' containment reference list.
33 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicate_Parameters()
34 * @model containment="true"
35 * @generated
36 */
37 EList<Parameter> getParameters();
38
39 /**
40 * Returns the value of the '<em><b>Bodies</b></em>' containment reference list.
41 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.PatternBody}.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @return the value of the '<em>Bodies</em>' containment reference list.
45 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicate_Bodies()
46 * @model containment="true"
47 * @generated
48 */
49 EList<PatternBody> getBodies();
50
51} // Predicate
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateSymbol.java
new file mode 100644
index 00000000..0f1d0c47
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateSymbol.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Predicate Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol#getSymbol <em>Symbol</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateSymbol()
20 * @model
21 * @generated
22 */
23public interface PredicateSymbol extends Predicate
24{
25 /**
26 * Returns the value of the '<em><b>Symbol</b></em>' containment reference.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Symbol</em>' containment reference.
30 * @see #setSymbol(ModelSymbol)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateSymbol_Symbol()
32 * @model containment="true"
33 * @generated
34 */
35 ModelSymbol getSymbol();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol#getSymbol <em>Symbol</em>}' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Symbol</em>' containment reference.
42 * @see #getSymbol()
43 * @generated
44 */
45 void setSymbol(ModelSymbol value);
46
47} // PredicateSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java
new file mode 100644
index 00000000..91967617
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java
@@ -0,0 +1,40 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.common.util.EList;
7
8import org.eclipse.emf.ecore.EObject;
9
10/**
11 * <!-- begin-user-doc -->
12 * A representation of the model object '<em><b>Problem</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * <p>
16 * The following features are supported:
17 * </p>
18 * <ul>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements <em>Statements</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem()
23 * @model
24 * @generated
25 */
26public interface Problem extends EObject
27{
28 /**
29 * Returns the value of the '<em><b>Statements</b></em>' containment reference list.
30 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Statement}.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Statements</em>' containment reference list.
34 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Statements()
35 * @model containment="true"
36 * @generated
37 */
38 EList<Statement> getStatements();
39
40} // Problem
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealObject.java
new file mode 100644
index 00000000..12e8be3e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealObject.java
@@ -0,0 +1,48 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import java.math.BigDecimal;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Real Object</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 * <p>
14 * The following features are supported:
15 * </p>
16 * <ul>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.RealObject#getValue <em>Value</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealObject()
21 * @model
22 * @generated
23 */
24public interface RealObject extends DataObject
25{
26 /**
27 * Returns the value of the '<em><b>Value</b></em>' attribute.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Value</em>' attribute.
31 * @see #setValue(BigDecimal)
32 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealObject_Value()
33 * @model
34 * @generated
35 */
36 BigDecimal getValue();
37
38 /**
39 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.RealObject#getValue <em>Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @param value the new value of the '<em>Value</em>' attribute.
43 * @see #getValue()
44 * @generated
45 */
46 void setValue(BigDecimal value);
47
48} // RealObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealSymbol.java
new file mode 100644
index 00000000..06dd35fc
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Real Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealSymbol()
14 * @model
15 * @generated
16 */
17public interface RealSymbol extends DataSymbol
18{
19} // RealSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ReflexiveClosure.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ReflexiveClosure.java
new file mode 100644
index 00000000..3eb30271
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ReflexiveClosure.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Reflexive Closure</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReflexiveClosure()
14 * @model
15 * @generated
16 */
17public interface ReflexiveClosure extends ClosureType
18{
19} // ReflexiveClosure
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java
new file mode 100644
index 00000000..ebe2abdb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java
@@ -0,0 +1,521 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EFactory;
7
8/**
9 * <!-- begin-user-doc -->
10 * The <b>Factory</b> for the model.
11 * It provides a create method for each non-abstract class of the model.
12 * <!-- end-user-doc -->
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage
14 * @generated
15 */
16public interface SolverLanguageFactory extends EFactory
17{
18 /**
19 * The singleton instance of the factory.
20 * <!-- begin-user-doc -->
21 * <!-- end-user-doc -->
22 * @generated
23 */
24 SolverLanguageFactory eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguageFactoryImpl.init();
25
26 /**
27 * Returns a new object of class '<em>Problem</em>'.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return a new object of class '<em>Problem</em>'.
31 * @generated
32 */
33 Problem createProblem();
34
35 /**
36 * Returns a new object of class '<em>Statement</em>'.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @return a new object of class '<em>Statement</em>'.
40 * @generated
41 */
42 Statement createStatement();
43
44 /**
45 * Returns a new object of class '<em>Boolean Value</em>'.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @return a new object of class '<em>Boolean Value</em>'.
49 * @generated
50 */
51 BooleanValue createBooleanValue();
52
53 /**
54 * Returns a new object of class '<em>Truth Value</em>'.
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @return a new object of class '<em>Truth Value</em>'.
58 * @generated
59 */
60 TruthValue createTruthValue();
61
62 /**
63 * Returns a new object of class '<em>Interpretation</em>'.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @return a new object of class '<em>Interpretation</em>'.
67 * @generated
68 */
69 Interpretation createInterpretation();
70
71 /**
72 * Returns a new object of class '<em>Basic Interpretation</em>'.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @return a new object of class '<em>Basic Interpretation</em>'.
76 * @generated
77 */
78 BasicInterpretation createBasicInterpretation();
79
80 /**
81 * Returns a new object of class '<em>Symbol</em>'.
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @return a new object of class '<em>Symbol</em>'.
85 * @generated
86 */
87 Symbol createSymbol();
88
89 /**
90 * Returns a new object of class '<em>Model Symbol</em>'.
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @return a new object of class '<em>Model Symbol</em>'.
94 * @generated
95 */
96 ModelSymbol createModelSymbol();
97
98 /**
99 * Returns a new object of class '<em>Partiality Symbol</em>'.
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @return a new object of class '<em>Partiality Symbol</em>'.
103 * @generated
104 */
105 PartialitySymbol createPartialitySymbol();
106
107 /**
108 * Returns a new object of class '<em>Exist Symbol</em>'.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @return a new object of class '<em>Exist Symbol</em>'.
112 * @generated
113 */
114 ExistSymbol createExistSymbol();
115
116 /**
117 * Returns a new object of class '<em>Equals Symbol</em>'.
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @return a new object of class '<em>Equals Symbol</em>'.
121 * @generated
122 */
123 EqualsSymbol createEqualsSymbol();
124
125 /**
126 * Returns a new object of class '<em>Data Symbol</em>'.
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @return a new object of class '<em>Data Symbol</em>'.
130 * @generated
131 */
132 DataSymbol createDataSymbol();
133
134 /**
135 * Returns a new object of class '<em>Boolean Symbol</em>'.
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @return a new object of class '<em>Boolean Symbol</em>'.
139 * @generated
140 */
141 BooleanSymbol createBooleanSymbol();
142
143 /**
144 * Returns a new object of class '<em>Integer Symbol</em>'.
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @return a new object of class '<em>Integer Symbol</em>'.
148 * @generated
149 */
150 IntegerSymbol createIntegerSymbol();
151
152 /**
153 * Returns a new object of class '<em>Real Symbol</em>'.
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @return a new object of class '<em>Real Symbol</em>'.
157 * @generated
158 */
159 RealSymbol createRealSymbol();
160
161 /**
162 * Returns a new object of class '<em>String Symbol</em>'.
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @return a new object of class '<em>String Symbol</em>'.
166 * @generated
167 */
168 StringSymbol createStringSymbol();
169
170 /**
171 * Returns a new object of class '<em>Complex Object</em>'.
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @return a new object of class '<em>Complex Object</em>'.
175 * @generated
176 */
177 ComplexObject createComplexObject();
178
179 /**
180 * Returns a new object of class '<em>Object</em>'.
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @return a new object of class '<em>Object</em>'.
184 * @generated
185 */
186 Object createObject();
187
188 /**
189 * Returns a new object of class '<em>Named Object</em>'.
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @return a new object of class '<em>Named Object</em>'.
193 * @generated
194 */
195 NamedObject createNamedObject();
196
197 /**
198 * Returns a new object of class '<em>Unnamed Object</em>'.
199 * <!-- begin-user-doc -->
200 * <!-- end-user-doc -->
201 * @return a new object of class '<em>Unnamed Object</em>'.
202 * @generated
203 */
204 UnnamedObject createUnnamedObject();
205
206 /**
207 * Returns a new object of class '<em>Data Object</em>'.
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @return a new object of class '<em>Data Object</em>'.
211 * @generated
212 */
213 DataObject createDataObject();
214
215 /**
216 * Returns a new object of class '<em>Boolean Object</em>'.
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @return a new object of class '<em>Boolean Object</em>'.
220 * @generated
221 */
222 BooleanObject createBooleanObject();
223
224 /**
225 * Returns a new object of class '<em>Int Object</em>'.
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @return a new object of class '<em>Int Object</em>'.
229 * @generated
230 */
231 IntObject createIntObject();
232
233 /**
234 * Returns a new object of class '<em>Real Object</em>'.
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @return a new object of class '<em>Real Object</em>'.
238 * @generated
239 */
240 RealObject createRealObject();
241
242 /**
243 * Returns a new object of class '<em>String Object</em>'.
244 * <!-- begin-user-doc -->
245 * <!-- end-user-doc -->
246 * @return a new object of class '<em>String Object</em>'.
247 * @generated
248 */
249 StringObject createStringObject();
250
251 /**
252 * Returns a new object of class '<em>Predicate</em>'.
253 * <!-- begin-user-doc -->
254 * <!-- end-user-doc -->
255 * @return a new object of class '<em>Predicate</em>'.
256 * @generated
257 */
258 Predicate createPredicate();
259
260 /**
261 * Returns a new object of class '<em>Predicate Symbol</em>'.
262 * <!-- begin-user-doc -->
263 * <!-- end-user-doc -->
264 * @return a new object of class '<em>Predicate Symbol</em>'.
265 * @generated
266 */
267 PredicateSymbol createPredicateSymbol();
268
269 /**
270 * Returns a new object of class '<em>Error Predicate</em>'.
271 * <!-- begin-user-doc -->
272 * <!-- end-user-doc -->
273 * @return a new object of class '<em>Error Predicate</em>'.
274 * @generated
275 */
276 ErrorPredicate createErrorPredicate();
277
278 /**
279 * Returns a new object of class '<em>Parameter</em>'.
280 * <!-- begin-user-doc -->
281 * <!-- end-user-doc -->
282 * @return a new object of class '<em>Parameter</em>'.
283 * @generated
284 */
285 Parameter createParameter();
286
287 /**
288 * Returns a new object of class '<em>Pattern Body</em>'.
289 * <!-- begin-user-doc -->
290 * <!-- end-user-doc -->
291 * @return a new object of class '<em>Pattern Body</em>'.
292 * @generated
293 */
294 PatternBody createPatternBody();
295
296 /**
297 * Returns a new object of class '<em>Polarity</em>'.
298 * <!-- begin-user-doc -->
299 * <!-- end-user-doc -->
300 * @return a new object of class '<em>Polarity</em>'.
301 * @generated
302 */
303 Polarity createPolarity();
304
305 /**
306 * Returns a new object of class '<em>Constraint</em>'.
307 * <!-- begin-user-doc -->
308 * <!-- end-user-doc -->
309 * @return a new object of class '<em>Constraint</em>'.
310 * @generated
311 */
312 Constraint createConstraint();
313
314 /**
315 * Returns a new object of class '<em>Closure Type</em>'.
316 * <!-- begin-user-doc -->
317 * <!-- end-user-doc -->
318 * @return a new object of class '<em>Closure Type</em>'.
319 * @generated
320 */
321 ClosureType createClosureType();
322
323 /**
324 * Returns a new object of class '<em>Literal</em>'.
325 * <!-- begin-user-doc -->
326 * <!-- end-user-doc -->
327 * @return a new object of class '<em>Literal</em>'.
328 * @generated
329 */
330 Literal createLiteral();
331
332 /**
333 * Returns a new object of class '<em>Variable</em>'.
334 * <!-- begin-user-doc -->
335 * <!-- end-user-doc -->
336 * @return a new object of class '<em>Variable</em>'.
337 * @generated
338 */
339 Variable createVariable();
340
341 /**
342 * Returns a new object of class '<em>All Instances</em>'.
343 * <!-- begin-user-doc -->
344 * <!-- end-user-doc -->
345 * @return a new object of class '<em>All Instances</em>'.
346 * @generated
347 */
348 AllInstances createAllInstances();
349
350 /**
351 * Returns a new object of class '<em>All Objects</em>'.
352 * <!-- begin-user-doc -->
353 * <!-- end-user-doc -->
354 * @return a new object of class '<em>All Objects</em>'.
355 * @generated
356 */
357 AllObjects createAllObjects();
358
359 /**
360 * Returns a new object of class '<em>Default Interpretation</em>'.
361 * <!-- begin-user-doc -->
362 * <!-- end-user-doc -->
363 * @return a new object of class '<em>Default Interpretation</em>'.
364 * @generated
365 */
366 DefaultInterpretation createDefaultInterpretation();
367
368 /**
369 * Returns a new object of class '<em>CD Interpretation</em>'.
370 * <!-- begin-user-doc -->
371 * <!-- end-user-doc -->
372 * @return a new object of class '<em>CD Interpretation</em>'.
373 * @generated
374 */
375 CDInterpretation createCDInterpretation();
376
377 /**
378 * Returns a new object of class '<em>Class Interpretation</em>'.
379 * <!-- begin-user-doc -->
380 * <!-- end-user-doc -->
381 * @return a new object of class '<em>Class Interpretation</em>'.
382 * @generated
383 */
384 ClassInterpretation createClassInterpretation();
385
386 /**
387 * Returns a new object of class '<em>Enum Interpretation</em>'.
388 * <!-- begin-user-doc -->
389 * <!-- end-user-doc -->
390 * @return a new object of class '<em>Enum Interpretation</em>'.
391 * @generated
392 */
393 EnumInterpretation createEnumInterpretation();
394
395 /**
396 * Returns a new object of class '<em>Field Relation Interpretation</em>'.
397 * <!-- begin-user-doc -->
398 * <!-- end-user-doc -->
399 * @return a new object of class '<em>Field Relation Interpretation</em>'.
400 * @generated
401 */
402 FieldRelationInterpretation createFieldRelationInterpretation();
403
404 /**
405 * Returns a new object of class '<em>Global Relation Interpretation</em>'.
406 * <!-- begin-user-doc -->
407 * <!-- end-user-doc -->
408 * @return a new object of class '<em>Global Relation Interpretation</em>'.
409 * @generated
410 */
411 GlobalRelationInterpretation createGlobalRelationInterpretation();
412
413 /**
414 * Returns a new object of class '<em>Multiplicity Definition</em>'.
415 * <!-- begin-user-doc -->
416 * <!-- end-user-doc -->
417 * @return a new object of class '<em>Multiplicity Definition</em>'.
418 * @generated
419 */
420 MultiplicityDefinition createMultiplicityDefinition();
421
422 /**
423 * Returns a new object of class '<em>Boolean True</em>'.
424 * <!-- begin-user-doc -->
425 * <!-- end-user-doc -->
426 * @return a new object of class '<em>Boolean True</em>'.
427 * @generated
428 */
429 BooleanTrue createBooleanTrue();
430
431 /**
432 * Returns a new object of class '<em>Boolean False</em>'.
433 * <!-- begin-user-doc -->
434 * <!-- end-user-doc -->
435 * @return a new object of class '<em>Boolean False</em>'.
436 * @generated
437 */
438 BooleanFalse createBooleanFalse();
439
440 /**
441 * Returns a new object of class '<em>True</em>'.
442 * <!-- begin-user-doc -->
443 * <!-- end-user-doc -->
444 * @return a new object of class '<em>True</em>'.
445 * @generated
446 */
447 True createTrue();
448
449 /**
450 * Returns a new object of class '<em>False</em>'.
451 * <!-- begin-user-doc -->
452 * <!-- end-user-doc -->
453 * @return a new object of class '<em>False</em>'.
454 * @generated
455 */
456 False createFalse();
457
458 /**
459 * Returns a new object of class '<em>Unknown</em>'.
460 * <!-- begin-user-doc -->
461 * <!-- end-user-doc -->
462 * @return a new object of class '<em>Unknown</em>'.
463 * @generated
464 */
465 Unknown createUnknown();
466
467 /**
468 * Returns a new object of class '<em>Error</em>'.
469 * <!-- begin-user-doc -->
470 * <!-- end-user-doc -->
471 * @return a new object of class '<em>Error</em>'.
472 * @generated
473 */
474 Error createError();
475
476 /**
477 * Returns a new object of class '<em>Positive</em>'.
478 * <!-- begin-user-doc -->
479 * <!-- end-user-doc -->
480 * @return a new object of class '<em>Positive</em>'.
481 * @generated
482 */
483 Positive createPositive();
484
485 /**
486 * Returns a new object of class '<em>Negative</em>'.
487 * <!-- begin-user-doc -->
488 * <!-- end-user-doc -->
489 * @return a new object of class '<em>Negative</em>'.
490 * @generated
491 */
492 Negative createNegative();
493
494 /**
495 * Returns a new object of class '<em>Reflexive Closure</em>'.
496 * <!-- begin-user-doc -->
497 * <!-- end-user-doc -->
498 * @return a new object of class '<em>Reflexive Closure</em>'.
499 * @generated
500 */
501 ReflexiveClosure createReflexiveClosure();
502
503 /**
504 * Returns a new object of class '<em>Irreflexive Closure</em>'.
505 * <!-- begin-user-doc -->
506 * <!-- end-user-doc -->
507 * @return a new object of class '<em>Irreflexive Closure</em>'.
508 * @generated
509 */
510 IrreflexiveClosure createIrreflexiveClosure();
511
512 /**
513 * Returns the package supported by this factory.
514 * <!-- begin-user-doc -->
515 * <!-- end-user-doc -->
516 * @return the package supported by this factory.
517 * @generated
518 */
519 SolverLanguagePackage getSolverLanguagePackage();
520
521} //SolverLanguageFactory
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java
new file mode 100644
index 00000000..3bd01417
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java
@@ -0,0 +1,3460 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EAttribute;
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.EReference;
10
11/**
12 * <!-- begin-user-doc -->
13 * The <b>Package</b> for the model.
14 * It contains accessors for the meta objects to represent
15 * <ul>
16 * <li>each class,</li>
17 * <li>each feature of each class,</li>
18 * <li>each enum,</li>
19 * <li>and each data type</li>
20 * </ul>
21 * <!-- end-user-doc -->
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory
23 * @model kind="package"
24 * @generated
25 */
26public interface SolverLanguagePackage extends EPackage
27{
28 /**
29 * The package name.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 String eNAME = "solverLanguage";
35
36 /**
37 * The package namespace URI.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @generated
41 */
42 String eNS_URI = "http://www.eclipse.org/viatra/solver/language/SolverLanguage";
43
44 /**
45 * The package namespace name.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 String eNS_PREFIX = "solverLanguage";
51
52 /**
53 * The singleton instance of the package.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 SolverLanguagePackage eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl.init();
59
60 /**
61 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl <em>Problem</em>}' class.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl
65 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem()
66 * @generated
67 */
68 int PROBLEM = 0;
69
70 /**
71 * The feature id for the '<em><b>Statements</b></em>' containment reference list.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 * @ordered
76 */
77 int PROBLEM__STATEMENTS = 0;
78
79 /**
80 * The number of structural features of the '<em>Problem</em>' class.
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 * @ordered
85 */
86 int PROBLEM_FEATURE_COUNT = 1;
87
88 /**
89 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl <em>Statement</em>}' class.
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl
93 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement()
94 * @generated
95 */
96 int STATEMENT = 1;
97
98 /**
99 * The number of structural features of the '<em>Statement</em>' class.
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 * @ordered
104 */
105 int STATEMENT_FEATURE_COUNT = 0;
106
107 /**
108 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanValueImpl <em>Boolean Value</em>}' class.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanValueImpl
112 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanValue()
113 * @generated
114 */
115 int BOOLEAN_VALUE = 2;
116
117 /**
118 * The number of structural features of the '<em>Boolean Value</em>' class.
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 * @ordered
123 */
124 int BOOLEAN_VALUE_FEATURE_COUNT = 0;
125
126 /**
127 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TruthValueImpl <em>Truth Value</em>}' class.
128 * <!-- begin-user-doc -->
129 * <!-- end-user-doc -->
130 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TruthValueImpl
131 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTruthValue()
132 * @generated
133 */
134 int TRUTH_VALUE = 3;
135
136 /**
137 * The number of structural features of the '<em>Truth Value</em>' class.
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 * @ordered
142 */
143 int TRUTH_VALUE_FEATURE_COUNT = 0;
144
145 /**
146 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl <em>Interpretation</em>}' class.
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl
150 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterpretation()
151 * @generated
152 */
153 int INTERPRETATION = 4;
154
155 /**
156 * The number of structural features of the '<em>Interpretation</em>' class.
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 * @ordered
161 */
162 int INTERPRETATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 0;
163
164 /**
165 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl <em>Basic Interpretation</em>}' class.
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl
169 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBasicInterpretation()
170 * @generated
171 */
172 int BASIC_INTERPRETATION = 5;
173
174 /**
175 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 * @ordered
180 */
181 int BASIC_INTERPRETATION__SYMBOL = INTERPRETATION_FEATURE_COUNT + 0;
182
183 /**
184 * The feature id for the '<em><b>Objects</b></em>' containment reference list.
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 * @ordered
189 */
190 int BASIC_INTERPRETATION__OBJECTS = INTERPRETATION_FEATURE_COUNT + 1;
191
192 /**
193 * The feature id for the '<em><b>Value</b></em>' containment reference.
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 * @ordered
198 */
199 int BASIC_INTERPRETATION__VALUE = INTERPRETATION_FEATURE_COUNT + 2;
200
201 /**
202 * The number of structural features of the '<em>Basic Interpretation</em>' class.
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @generated
206 * @ordered
207 */
208 int BASIC_INTERPRETATION_FEATURE_COUNT = INTERPRETATION_FEATURE_COUNT + 3;
209
210 /**
211 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl <em>Symbol</em>}' class.
212 * <!-- begin-user-doc -->
213 * <!-- end-user-doc -->
214 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl
215 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSymbol()
216 * @generated
217 */
218 int SYMBOL = 6;
219
220 /**
221 * The number of structural features of the '<em>Symbol</em>' class.
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 * @ordered
226 */
227 int SYMBOL_FEATURE_COUNT = 0;
228
229 /**
230 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ModelSymbolImpl <em>Model Symbol</em>}' class.
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ModelSymbolImpl
234 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getModelSymbol()
235 * @generated
236 */
237 int MODEL_SYMBOL = 7;
238
239 /**
240 * The feature id for the '<em><b>Name</b></em>' attribute.
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 * @ordered
245 */
246 int MODEL_SYMBOL__NAME = SYMBOL_FEATURE_COUNT + 0;
247
248 /**
249 * The number of structural features of the '<em>Model Symbol</em>' class.
250 * <!-- begin-user-doc -->
251 * <!-- end-user-doc -->
252 * @generated
253 * @ordered
254 */
255 int MODEL_SYMBOL_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1;
256
257 /**
258 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PartialitySymbolImpl <em>Partiality Symbol</em>}' class.
259 * <!-- begin-user-doc -->
260 * <!-- end-user-doc -->
261 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PartialitySymbolImpl
262 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPartialitySymbol()
263 * @generated
264 */
265 int PARTIALITY_SYMBOL = 8;
266
267 /**
268 * The number of structural features of the '<em>Partiality Symbol</em>' class.
269 * <!-- begin-user-doc -->
270 * <!-- end-user-doc -->
271 * @generated
272 * @ordered
273 */
274 int PARTIALITY_SYMBOL_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 0;
275
276 /**
277 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExistSymbolImpl <em>Exist Symbol</em>}' class.
278 * <!-- begin-user-doc -->
279 * <!-- end-user-doc -->
280 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExistSymbolImpl
281 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExistSymbol()
282 * @generated
283 */
284 int EXIST_SYMBOL = 9;
285
286 /**
287 * The number of structural features of the '<em>Exist Symbol</em>' class.
288 * <!-- begin-user-doc -->
289 * <!-- end-user-doc -->
290 * @generated
291 * @ordered
292 */
293 int EXIST_SYMBOL_FEATURE_COUNT = PARTIALITY_SYMBOL_FEATURE_COUNT + 0;
294
295 /**
296 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EqualsSymbolImpl <em>Equals Symbol</em>}' class.
297 * <!-- begin-user-doc -->
298 * <!-- end-user-doc -->
299 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EqualsSymbolImpl
300 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEqualsSymbol()
301 * @generated
302 */
303 int EQUALS_SYMBOL = 10;
304
305 /**
306 * The number of structural features of the '<em>Equals Symbol</em>' class.
307 * <!-- begin-user-doc -->
308 * <!-- end-user-doc -->
309 * @generated
310 * @ordered
311 */
312 int EQUALS_SYMBOL_FEATURE_COUNT = PARTIALITY_SYMBOL_FEATURE_COUNT + 0;
313
314 /**
315 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DataSymbolImpl <em>Data Symbol</em>}' class.
316 * <!-- begin-user-doc -->
317 * <!-- end-user-doc -->
318 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DataSymbolImpl
319 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDataSymbol()
320 * @generated
321 */
322 int DATA_SYMBOL = 11;
323
324 /**
325 * The number of structural features of the '<em>Data Symbol</em>' class.
326 * <!-- begin-user-doc -->
327 * <!-- end-user-doc -->
328 * @generated
329 * @ordered
330 */
331 int DATA_SYMBOL_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 0;
332
333 /**
334 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanSymbolImpl <em>Boolean Symbol</em>}' class.
335 * <!-- begin-user-doc -->
336 * <!-- end-user-doc -->
337 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanSymbolImpl
338 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanSymbol()
339 * @generated
340 */
341 int BOOLEAN_SYMBOL = 12;
342
343 /**
344 * The number of structural features of the '<em>Boolean Symbol</em>' class.
345 * <!-- begin-user-doc -->
346 * <!-- end-user-doc -->
347 * @generated
348 * @ordered
349 */
350 int BOOLEAN_SYMBOL_FEATURE_COUNT = DATA_SYMBOL_FEATURE_COUNT + 0;
351
352 /**
353 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntegerSymbolImpl <em>Integer Symbol</em>}' class.
354 * <!-- begin-user-doc -->
355 * <!-- end-user-doc -->
356 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntegerSymbolImpl
357 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntegerSymbol()
358 * @generated
359 */
360 int INTEGER_SYMBOL = 13;
361
362 /**
363 * The number of structural features of the '<em>Integer Symbol</em>' class.
364 * <!-- begin-user-doc -->
365 * <!-- end-user-doc -->
366 * @generated
367 * @ordered
368 */
369 int INTEGER_SYMBOL_FEATURE_COUNT = DATA_SYMBOL_FEATURE_COUNT + 0;
370
371 /**
372 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealSymbolImpl <em>Real Symbol</em>}' class.
373 * <!-- begin-user-doc -->
374 * <!-- end-user-doc -->
375 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealSymbolImpl
376 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealSymbol()
377 * @generated
378 */
379 int REAL_SYMBOL = 14;
380
381 /**
382 * The number of structural features of the '<em>Real Symbol</em>' class.
383 * <!-- begin-user-doc -->
384 * <!-- end-user-doc -->
385 * @generated
386 * @ordered
387 */
388 int REAL_SYMBOL_FEATURE_COUNT = DATA_SYMBOL_FEATURE_COUNT + 0;
389
390 /**
391 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringSymbolImpl <em>String Symbol</em>}' class.
392 * <!-- begin-user-doc -->
393 * <!-- end-user-doc -->
394 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringSymbolImpl
395 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringSymbol()
396 * @generated
397 */
398 int STRING_SYMBOL = 15;
399
400 /**
401 * The number of structural features of the '<em>String Symbol</em>' class.
402 * <!-- begin-user-doc -->
403 * <!-- end-user-doc -->
404 * @generated
405 * @ordered
406 */
407 int STRING_SYMBOL_FEATURE_COUNT = DATA_SYMBOL_FEATURE_COUNT + 0;
408
409 /**
410 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComplexObjectImpl <em>Complex Object</em>}' class.
411 * <!-- begin-user-doc -->
412 * <!-- end-user-doc -->
413 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ComplexObjectImpl
414 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getComplexObject()
415 * @generated
416 */
417 int COMPLEX_OBJECT = 16;
418
419 /**
420 * The number of structural features of the '<em>Complex Object</em>' class.
421 * <!-- begin-user-doc -->
422 * <!-- end-user-doc -->
423 * @generated
424 * @ordered
425 */
426 int COMPLEX_OBJECT_FEATURE_COUNT = 0;
427
428 /**
429 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectImpl <em>Object</em>}' class.
430 * <!-- begin-user-doc -->
431 * <!-- end-user-doc -->
432 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectImpl
433 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObject()
434 * @generated
435 */
436 int OBJECT = 17;
437
438 /**
439 * The number of structural features of the '<em>Object</em>' class.
440 * <!-- begin-user-doc -->
441 * <!-- end-user-doc -->
442 * @generated
443 * @ordered
444 */
445 int OBJECT_FEATURE_COUNT = COMPLEX_OBJECT_FEATURE_COUNT + 0;
446
447 /**
448 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamedObjectImpl <em>Named Object</em>}' class.
449 * <!-- begin-user-doc -->
450 * <!-- end-user-doc -->
451 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamedObjectImpl
452 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamedObject()
453 * @generated
454 */
455 int NAMED_OBJECT = 18;
456
457 /**
458 * The feature id for the '<em><b>Name</b></em>' attribute.
459 * <!-- begin-user-doc -->
460 * <!-- end-user-doc -->
461 * @generated
462 * @ordered
463 */
464 int NAMED_OBJECT__NAME = OBJECT_FEATURE_COUNT + 0;
465
466 /**
467 * The number of structural features of the '<em>Named Object</em>' class.
468 * <!-- begin-user-doc -->
469 * <!-- end-user-doc -->
470 * @generated
471 * @ordered
472 */
473 int NAMED_OBJECT_FEATURE_COUNT = OBJECT_FEATURE_COUNT + 1;
474
475 /**
476 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedObjectImpl <em>Unnamed Object</em>}' class.
477 * <!-- begin-user-doc -->
478 * <!-- end-user-doc -->
479 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedObjectImpl
480 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedObject()
481 * @generated
482 */
483 int UNNAMED_OBJECT = 19;
484
485 /**
486 * The feature id for the '<em><b>Name</b></em>' attribute.
487 * <!-- begin-user-doc -->
488 * <!-- end-user-doc -->
489 * @generated
490 * @ordered
491 */
492 int UNNAMED_OBJECT__NAME = OBJECT_FEATURE_COUNT + 0;
493
494 /**
495 * The number of structural features of the '<em>Unnamed Object</em>' class.
496 * <!-- begin-user-doc -->
497 * <!-- end-user-doc -->
498 * @generated
499 * @ordered
500 */
501 int UNNAMED_OBJECT_FEATURE_COUNT = OBJECT_FEATURE_COUNT + 1;
502
503 /**
504 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DataObjectImpl <em>Data Object</em>}' class.
505 * <!-- begin-user-doc -->
506 * <!-- end-user-doc -->
507 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DataObjectImpl
508 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDataObject()
509 * @generated
510 */
511 int DATA_OBJECT = 20;
512
513 /**
514 * The number of structural features of the '<em>Data Object</em>' class.
515 * <!-- begin-user-doc -->
516 * <!-- end-user-doc -->
517 * @generated
518 * @ordered
519 */
520 int DATA_OBJECT_FEATURE_COUNT = OBJECT_FEATURE_COUNT + 0;
521
522 /**
523 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanObjectImpl <em>Boolean Object</em>}' class.
524 * <!-- begin-user-doc -->
525 * <!-- end-user-doc -->
526 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanObjectImpl
527 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanObject()
528 * @generated
529 */
530 int BOOLEAN_OBJECT = 21;
531
532 /**
533 * The feature id for the '<em><b>Value</b></em>' containment reference.
534 * <!-- begin-user-doc -->
535 * <!-- end-user-doc -->
536 * @generated
537 * @ordered
538 */
539 int BOOLEAN_OBJECT__VALUE = DATA_OBJECT_FEATURE_COUNT + 0;
540
541 /**
542 * The number of structural features of the '<em>Boolean Object</em>' class.
543 * <!-- begin-user-doc -->
544 * <!-- end-user-doc -->
545 * @generated
546 * @ordered
547 */
548 int BOOLEAN_OBJECT_FEATURE_COUNT = DATA_OBJECT_FEATURE_COUNT + 1;
549
550 /**
551 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntObjectImpl <em>Int Object</em>}' class.
552 * <!-- begin-user-doc -->
553 * <!-- end-user-doc -->
554 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntObjectImpl
555 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntObject()
556 * @generated
557 */
558 int INT_OBJECT = 22;
559
560 /**
561 * The feature id for the '<em><b>Value</b></em>' attribute.
562 * <!-- begin-user-doc -->
563 * <!-- end-user-doc -->
564 * @generated
565 * @ordered
566 */
567 int INT_OBJECT__VALUE = DATA_OBJECT_FEATURE_COUNT + 0;
568
569 /**
570 * The number of structural features of the '<em>Int Object</em>' class.
571 * <!-- begin-user-doc -->
572 * <!-- end-user-doc -->
573 * @generated
574 * @ordered
575 */
576 int INT_OBJECT_FEATURE_COUNT = DATA_OBJECT_FEATURE_COUNT + 1;
577
578 /**
579 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealObjectImpl <em>Real Object</em>}' class.
580 * <!-- begin-user-doc -->
581 * <!-- end-user-doc -->
582 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealObjectImpl
583 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealObject()
584 * @generated
585 */
586 int REAL_OBJECT = 23;
587
588 /**
589 * The feature id for the '<em><b>Value</b></em>' attribute.
590 * <!-- begin-user-doc -->
591 * <!-- end-user-doc -->
592 * @generated
593 * @ordered
594 */
595 int REAL_OBJECT__VALUE = DATA_OBJECT_FEATURE_COUNT + 0;
596
597 /**
598 * The number of structural features of the '<em>Real Object</em>' class.
599 * <!-- begin-user-doc -->
600 * <!-- end-user-doc -->
601 * @generated
602 * @ordered
603 */
604 int REAL_OBJECT_FEATURE_COUNT = DATA_OBJECT_FEATURE_COUNT + 1;
605
606 /**
607 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringObjectImpl <em>String Object</em>}' class.
608 * <!-- begin-user-doc -->
609 * <!-- end-user-doc -->
610 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringObjectImpl
611 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringObject()
612 * @generated
613 */
614 int STRING_OBJECT = 24;
615
616 /**
617 * The feature id for the '<em><b>Value</b></em>' attribute.
618 * <!-- begin-user-doc -->
619 * <!-- end-user-doc -->
620 * @generated
621 * @ordered
622 */
623 int STRING_OBJECT__VALUE = DATA_OBJECT_FEATURE_COUNT + 0;
624
625 /**
626 * The number of structural features of the '<em>String Object</em>' class.
627 * <!-- begin-user-doc -->
628 * <!-- end-user-doc -->
629 * @generated
630 * @ordered
631 */
632 int STRING_OBJECT_FEATURE_COUNT = DATA_OBJECT_FEATURE_COUNT + 1;
633
634 /**
635 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl <em>Predicate</em>}' class.
636 * <!-- begin-user-doc -->
637 * <!-- end-user-doc -->
638 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl
639 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate()
640 * @generated
641 */
642 int PREDICATE = 25;
643
644 /**
645 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
646 * <!-- begin-user-doc -->
647 * <!-- end-user-doc -->
648 * @generated
649 * @ordered
650 */
651 int PREDICATE__PARAMETERS = STATEMENT_FEATURE_COUNT + 0;
652
653 /**
654 * The feature id for the '<em><b>Bodies</b></em>' containment reference list.
655 * <!-- begin-user-doc -->
656 * <!-- end-user-doc -->
657 * @generated
658 * @ordered
659 */
660 int PREDICATE__BODIES = STATEMENT_FEATURE_COUNT + 1;
661
662 /**
663 * The number of structural features of the '<em>Predicate</em>' class.
664 * <!-- begin-user-doc -->
665 * <!-- end-user-doc -->
666 * @generated
667 * @ordered
668 */
669 int PREDICATE_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
670
671 /**
672 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateSymbolImpl <em>Predicate Symbol</em>}' class.
673 * <!-- begin-user-doc -->
674 * <!-- end-user-doc -->
675 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateSymbolImpl
676 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateSymbol()
677 * @generated
678 */
679 int PREDICATE_SYMBOL = 26;
680
681 /**
682 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
683 * <!-- begin-user-doc -->
684 * <!-- end-user-doc -->
685 * @generated
686 * @ordered
687 */
688 int PREDICATE_SYMBOL__PARAMETERS = PREDICATE__PARAMETERS;
689
690 /**
691 * The feature id for the '<em><b>Bodies</b></em>' containment reference list.
692 * <!-- begin-user-doc -->
693 * <!-- end-user-doc -->
694 * @generated
695 * @ordered
696 */
697 int PREDICATE_SYMBOL__BODIES = PREDICATE__BODIES;
698
699 /**
700 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
701 * <!-- begin-user-doc -->
702 * <!-- end-user-doc -->
703 * @generated
704 * @ordered
705 */
706 int PREDICATE_SYMBOL__SYMBOL = PREDICATE_FEATURE_COUNT + 0;
707
708 /**
709 * The number of structural features of the '<em>Predicate Symbol</em>' class.
710 * <!-- begin-user-doc -->
711 * <!-- end-user-doc -->
712 * @generated
713 * @ordered
714 */
715 int PREDICATE_SYMBOL_FEATURE_COUNT = PREDICATE_FEATURE_COUNT + 1;
716
717 /**
718 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorPredicateImpl <em>Error Predicate</em>}' class.
719 * <!-- begin-user-doc -->
720 * <!-- end-user-doc -->
721 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorPredicateImpl
722 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getErrorPredicate()
723 * @generated
724 */
725 int ERROR_PREDICATE = 27;
726
727 /**
728 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
729 * <!-- begin-user-doc -->
730 * <!-- end-user-doc -->
731 * @generated
732 * @ordered
733 */
734 int ERROR_PREDICATE__PARAMETERS = PREDICATE__PARAMETERS;
735
736 /**
737 * The feature id for the '<em><b>Bodies</b></em>' containment reference list.
738 * <!-- begin-user-doc -->
739 * <!-- end-user-doc -->
740 * @generated
741 * @ordered
742 */
743 int ERROR_PREDICATE__BODIES = PREDICATE__BODIES;
744
745 /**
746 * The feature id for the '<em><b>Name</b></em>' attribute.
747 * <!-- begin-user-doc -->
748 * <!-- end-user-doc -->
749 * @generated
750 * @ordered
751 */
752 int ERROR_PREDICATE__NAME = PREDICATE_FEATURE_COUNT + 0;
753
754 /**
755 * The number of structural features of the '<em>Error Predicate</em>' class.
756 * <!-- begin-user-doc -->
757 * <!-- end-user-doc -->
758 * @generated
759 * @ordered
760 */
761 int ERROR_PREDICATE_FEATURE_COUNT = PREDICATE_FEATURE_COUNT + 1;
762
763 /**
764 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ParameterImpl <em>Parameter</em>}' class.
765 * <!-- begin-user-doc -->
766 * <!-- end-user-doc -->
767 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ParameterImpl
768 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getParameter()
769 * @generated
770 */
771 int PARAMETER = 28;
772
773 /**
774 * The feature id for the '<em><b>Variable</b></em>' containment reference.
775 * <!-- begin-user-doc -->
776 * <!-- end-user-doc -->
777 * @generated
778 * @ordered
779 */
780 int PARAMETER__VARIABLE = 0;
781
782 /**
783 * The feature id for the '<em><b>Type</b></em>' containment reference.
784 * <!-- begin-user-doc -->
785 * <!-- end-user-doc -->
786 * @generated
787 * @ordered
788 */
789 int PARAMETER__TYPE = 1;
790
791 /**
792 * The number of structural features of the '<em>Parameter</em>' class.
793 * <!-- begin-user-doc -->
794 * <!-- end-user-doc -->
795 * @generated
796 * @ordered
797 */
798 int PARAMETER_FEATURE_COUNT = 2;
799
800 /**
801 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PatternBodyImpl <em>Pattern Body</em>}' class.
802 * <!-- begin-user-doc -->
803 * <!-- end-user-doc -->
804 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PatternBodyImpl
805 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPatternBody()
806 * @generated
807 */
808 int PATTERN_BODY = 29;
809
810 /**
811 * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
812 * <!-- begin-user-doc -->
813 * <!-- end-user-doc -->
814 * @generated
815 * @ordered
816 */
817 int PATTERN_BODY__CONSTRAINTS = 0;
818
819 /**
820 * The number of structural features of the '<em>Pattern Body</em>' class.
821 * <!-- begin-user-doc -->
822 * <!-- end-user-doc -->
823 * @generated
824 * @ordered
825 */
826 int PATTERN_BODY_FEATURE_COUNT = 1;
827
828 /**
829 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PolarityImpl <em>Polarity</em>}' class.
830 * <!-- begin-user-doc -->
831 * <!-- end-user-doc -->
832 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PolarityImpl
833 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPolarity()
834 * @generated
835 */
836 int POLARITY = 30;
837
838 /**
839 * The number of structural features of the '<em>Polarity</em>' class.
840 * <!-- begin-user-doc -->
841 * <!-- end-user-doc -->
842 * @generated
843 * @ordered
844 */
845 int POLARITY_FEATURE_COUNT = 0;
846
847 /**
848 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl <em>Constraint</em>}' class.
849 * <!-- begin-user-doc -->
850 * <!-- end-user-doc -->
851 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl
852 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConstraint()
853 * @generated
854 */
855 int CONSTRAINT = 31;
856
857 /**
858 * The feature id for the '<em><b>Polarity</b></em>' containment reference.
859 * <!-- begin-user-doc -->
860 * <!-- end-user-doc -->
861 * @generated
862 * @ordered
863 */
864 int CONSTRAINT__POLARITY = 0;
865
866 /**
867 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
868 * <!-- begin-user-doc -->
869 * <!-- end-user-doc -->
870 * @generated
871 * @ordered
872 */
873 int CONSTRAINT__SYMBOL = 1;
874
875 /**
876 * The feature id for the '<em><b>Params</b></em>' containment reference list.
877 * <!-- begin-user-doc -->
878 * <!-- end-user-doc -->
879 * @generated
880 * @ordered
881 */
882 int CONSTRAINT__PARAMS = 2;
883
884 /**
885 * The feature id for the '<em><b>Closure Type</b></em>' containment reference.
886 * <!-- begin-user-doc -->
887 * <!-- end-user-doc -->
888 * @generated
889 * @ordered
890 */
891 int CONSTRAINT__CLOSURE_TYPE = 3;
892
893 /**
894 * The number of structural features of the '<em>Constraint</em>' class.
895 * <!-- begin-user-doc -->
896 * <!-- end-user-doc -->
897 * @generated
898 * @ordered
899 */
900 int CONSTRAINT_FEATURE_COUNT = 4;
901
902 /**
903 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClosureTypeImpl <em>Closure Type</em>}' class.
904 * <!-- begin-user-doc -->
905 * <!-- end-user-doc -->
906 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClosureTypeImpl
907 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClosureType()
908 * @generated
909 */
910 int CLOSURE_TYPE = 32;
911
912 /**
913 * The number of structural features of the '<em>Closure Type</em>' class.
914 * <!-- begin-user-doc -->
915 * <!-- end-user-doc -->
916 * @generated
917 * @ordered
918 */
919 int CLOSURE_TYPE_FEATURE_COUNT = 0;
920
921 /**
922 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl <em>Literal</em>}' class.
923 * <!-- begin-user-doc -->
924 * <!-- end-user-doc -->
925 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl
926 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral()
927 * @generated
928 */
929 int LITERAL = 33;
930
931 /**
932 * The number of structural features of the '<em>Literal</em>' class.
933 * <!-- begin-user-doc -->
934 * <!-- end-user-doc -->
935 * @generated
936 * @ordered
937 */
938 int LITERAL_FEATURE_COUNT = 0;
939
940 /**
941 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl <em>Variable</em>}' class.
942 * <!-- begin-user-doc -->
943 * <!-- end-user-doc -->
944 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl
945 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable()
946 * @generated
947 */
948 int VARIABLE = 34;
949
950 /**
951 * The feature id for the '<em><b>Name</b></em>' attribute.
952 * <!-- begin-user-doc -->
953 * <!-- end-user-doc -->
954 * @generated
955 * @ordered
956 */
957 int VARIABLE__NAME = LITERAL_FEATURE_COUNT + 0;
958
959 /**
960 * The number of structural features of the '<em>Variable</em>' class.
961 * <!-- begin-user-doc -->
962 * <!-- end-user-doc -->
963 * @generated
964 * @ordered
965 */
966 int VARIABLE_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1;
967
968 /**
969 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AllInstancesImpl <em>All Instances</em>}' class.
970 * <!-- begin-user-doc -->
971 * <!-- end-user-doc -->
972 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AllInstancesImpl
973 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAllInstances()
974 * @generated
975 */
976 int ALL_INSTANCES = 35;
977
978 /**
979 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
980 * <!-- begin-user-doc -->
981 * <!-- end-user-doc -->
982 * @generated
983 * @ordered
984 */
985 int ALL_INSTANCES__SYMBOL = COMPLEX_OBJECT_FEATURE_COUNT + 0;
986
987 /**
988 * The number of structural features of the '<em>All Instances</em>' class.
989 * <!-- begin-user-doc -->
990 * <!-- end-user-doc -->
991 * @generated
992 * @ordered
993 */
994 int ALL_INSTANCES_FEATURE_COUNT = COMPLEX_OBJECT_FEATURE_COUNT + 1;
995
996 /**
997 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AllObjectsImpl <em>All Objects</em>}' class.
998 * <!-- begin-user-doc -->
999 * <!-- end-user-doc -->
1000 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AllObjectsImpl
1001 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAllObjects()
1002 * @generated
1003 */
1004 int ALL_OBJECTS = 36;
1005
1006 /**
1007 * The number of structural features of the '<em>All Objects</em>' class.
1008 * <!-- begin-user-doc -->
1009 * <!-- end-user-doc -->
1010 * @generated
1011 * @ordered
1012 */
1013 int ALL_OBJECTS_FEATURE_COUNT = COMPLEX_OBJECT_FEATURE_COUNT + 0;
1014
1015 /**
1016 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultInterpretationImpl <em>Default Interpretation</em>}' class.
1017 * <!-- begin-user-doc -->
1018 * <!-- end-user-doc -->
1019 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultInterpretationImpl
1020 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultInterpretation()
1021 * @generated
1022 */
1023 int DEFAULT_INTERPRETATION = 37;
1024
1025 /**
1026 * The feature id for the '<em><b>Interpretation</b></em>' containment reference.
1027 * <!-- begin-user-doc -->
1028 * <!-- end-user-doc -->
1029 * @generated
1030 * @ordered
1031 */
1032 int DEFAULT_INTERPRETATION__INTERPRETATION = INTERPRETATION_FEATURE_COUNT + 0;
1033
1034 /**
1035 * The number of structural features of the '<em>Default Interpretation</em>' class.
1036 * <!-- begin-user-doc -->
1037 * <!-- end-user-doc -->
1038 * @generated
1039 * @ordered
1040 */
1041 int DEFAULT_INTERPRETATION_FEATURE_COUNT = INTERPRETATION_FEATURE_COUNT + 1;
1042
1043 /**
1044 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CDInterpretationImpl <em>CD Interpretation</em>}' class.
1045 * <!-- begin-user-doc -->
1046 * <!-- end-user-doc -->
1047 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CDInterpretationImpl
1048 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCDInterpretation()
1049 * @generated
1050 */
1051 int CD_INTERPRETATION = 38;
1052
1053 /**
1054 * The number of structural features of the '<em>CD Interpretation</em>' class.
1055 * <!-- begin-user-doc -->
1056 * <!-- end-user-doc -->
1057 * @generated
1058 * @ordered
1059 */
1060 int CD_INTERPRETATION_FEATURE_COUNT = INTERPRETATION_FEATURE_COUNT + 0;
1061
1062 /**
1063 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl <em>Class Interpretation</em>}' class.
1064 * <!-- begin-user-doc -->
1065 * <!-- end-user-doc -->
1066 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl
1067 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassInterpretation()
1068 * @generated
1069 */
1070 int CLASS_INTERPRETATION = 39;
1071
1072 /**
1073 * The feature id for the '<em><b>Abstract</b></em>' attribute.
1074 * <!-- begin-user-doc -->
1075 * <!-- end-user-doc -->
1076 * @generated
1077 * @ordered
1078 */
1079 int CLASS_INTERPRETATION__ABSTRACT = CD_INTERPRETATION_FEATURE_COUNT + 0;
1080
1081 /**
1082 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
1083 * <!-- begin-user-doc -->
1084 * <!-- end-user-doc -->
1085 * @generated
1086 * @ordered
1087 */
1088 int CLASS_INTERPRETATION__SYMBOL = CD_INTERPRETATION_FEATURE_COUNT + 1;
1089
1090 /**
1091 * The feature id for the '<em><b>Supertypes</b></em>' containment reference list.
1092 * <!-- begin-user-doc -->
1093 * <!-- end-user-doc -->
1094 * @generated
1095 * @ordered
1096 */
1097 int CLASS_INTERPRETATION__SUPERTYPES = CD_INTERPRETATION_FEATURE_COUNT + 2;
1098
1099 /**
1100 * The feature id for the '<em><b>Fielt</b></em>' containment reference list.
1101 * <!-- begin-user-doc -->
1102 * <!-- end-user-doc -->
1103 * @generated
1104 * @ordered
1105 */
1106 int CLASS_INTERPRETATION__FIELT = CD_INTERPRETATION_FEATURE_COUNT + 3;
1107
1108 /**
1109 * The number of structural features of the '<em>Class Interpretation</em>' class.
1110 * <!-- begin-user-doc -->
1111 * <!-- end-user-doc -->
1112 * @generated
1113 * @ordered
1114 */
1115 int CLASS_INTERPRETATION_FEATURE_COUNT = CD_INTERPRETATION_FEATURE_COUNT + 4;
1116
1117 /**
1118 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumInterpretationImpl <em>Enum Interpretation</em>}' class.
1119 * <!-- begin-user-doc -->
1120 * <!-- end-user-doc -->
1121 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumInterpretationImpl
1122 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumInterpretation()
1123 * @generated
1124 */
1125 int ENUM_INTERPRETATION = 40;
1126
1127 /**
1128 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
1129 * <!-- begin-user-doc -->
1130 * <!-- end-user-doc -->
1131 * @generated
1132 * @ordered
1133 */
1134 int ENUM_INTERPRETATION__SYMBOL = CD_INTERPRETATION_FEATURE_COUNT + 0;
1135
1136 /**
1137 * The feature id for the '<em><b>Objects</b></em>' containment reference list.
1138 * <!-- begin-user-doc -->
1139 * <!-- end-user-doc -->
1140 * @generated
1141 * @ordered
1142 */
1143 int ENUM_INTERPRETATION__OBJECTS = CD_INTERPRETATION_FEATURE_COUNT + 1;
1144
1145 /**
1146 * The number of structural features of the '<em>Enum Interpretation</em>' class.
1147 * <!-- begin-user-doc -->
1148 * <!-- end-user-doc -->
1149 * @generated
1150 * @ordered
1151 */
1152 int ENUM_INTERPRETATION_FEATURE_COUNT = CD_INTERPRETATION_FEATURE_COUNT + 2;
1153
1154 /**
1155 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl <em>Field Relation Interpretation</em>}' class.
1156 * <!-- begin-user-doc -->
1157 * <!-- end-user-doc -->
1158 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl
1159 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFieldRelationInterpretation()
1160 * @generated
1161 */
1162 int FIELD_RELATION_INTERPRETATION = 41;
1163
1164 /**
1165 * The feature id for the '<em><b>Containment</b></em>' attribute.
1166 * <!-- begin-user-doc -->
1167 * <!-- end-user-doc -->
1168 * @generated
1169 * @ordered
1170 */
1171 int FIELD_RELATION_INTERPRETATION__CONTAINMENT = 0;
1172
1173 /**
1174 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
1175 * <!-- begin-user-doc -->
1176 * <!-- end-user-doc -->
1177 * @generated
1178 * @ordered
1179 */
1180 int FIELD_RELATION_INTERPRETATION__SYMBOL = 1;
1181
1182 /**
1183 * The feature id for the '<em><b>Multiplicity</b></em>' containment reference.
1184 * <!-- begin-user-doc -->
1185 * <!-- end-user-doc -->
1186 * @generated
1187 * @ordered
1188 */
1189 int FIELD_RELATION_INTERPRETATION__MULTIPLICITY = 2;
1190
1191 /**
1192 * The feature id for the '<em><b>Target</b></em>' containment reference.
1193 * <!-- begin-user-doc -->
1194 * <!-- end-user-doc -->
1195 * @generated
1196 * @ordered
1197 */
1198 int FIELD_RELATION_INTERPRETATION__TARGET = 3;
1199
1200 /**
1201 * The number of structural features of the '<em>Field Relation Interpretation</em>' class.
1202 * <!-- begin-user-doc -->
1203 * <!-- end-user-doc -->
1204 * @generated
1205 * @ordered
1206 */
1207 int FIELD_RELATION_INTERPRETATION_FEATURE_COUNT = 4;
1208
1209 /**
1210 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl <em>Global Relation Interpretation</em>}' class.
1211 * <!-- begin-user-doc -->
1212 * <!-- end-user-doc -->
1213 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl
1214 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getGlobalRelationInterpretation()
1215 * @generated
1216 */
1217 int GLOBAL_RELATION_INTERPRETATION = 42;
1218
1219 /**
1220 * The feature id for the '<em><b>Containment</b></em>' attribute.
1221 * <!-- begin-user-doc -->
1222 * <!-- end-user-doc -->
1223 * @generated
1224 * @ordered
1225 */
1226 int GLOBAL_RELATION_INTERPRETATION__CONTAINMENT = CD_INTERPRETATION_FEATURE_COUNT + 0;
1227
1228 /**
1229 * The feature id for the '<em><b>Symbol</b></em>' containment reference.
1230 * <!-- begin-user-doc -->
1231 * <!-- end-user-doc -->
1232 * @generated
1233 * @ordered
1234 */
1235 int GLOBAL_RELATION_INTERPRETATION__SYMBOL = CD_INTERPRETATION_FEATURE_COUNT + 1;
1236
1237 /**
1238 * The feature id for the '<em><b>Source Multiplicity</b></em>' containment reference.
1239 * <!-- begin-user-doc -->
1240 * <!-- end-user-doc -->
1241 * @generated
1242 * @ordered
1243 */
1244 int GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY = CD_INTERPRETATION_FEATURE_COUNT + 2;
1245
1246 /**
1247 * The feature id for the '<em><b>Source</b></em>' containment reference.
1248 * <!-- begin-user-doc -->
1249 * <!-- end-user-doc -->
1250 * @generated
1251 * @ordered
1252 */
1253 int GLOBAL_RELATION_INTERPRETATION__SOURCE = CD_INTERPRETATION_FEATURE_COUNT + 3;
1254
1255 /**
1256 * The feature id for the '<em><b>Target Multiplicity</b></em>' containment reference.
1257 * <!-- begin-user-doc -->
1258 * <!-- end-user-doc -->
1259 * @generated
1260 * @ordered
1261 */
1262 int GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY = CD_INTERPRETATION_FEATURE_COUNT + 4;
1263
1264 /**
1265 * The feature id for the '<em><b>Target</b></em>' containment reference.
1266 * <!-- begin-user-doc -->
1267 * <!-- end-user-doc -->
1268 * @generated
1269 * @ordered
1270 */
1271 int GLOBAL_RELATION_INTERPRETATION__TARGET = CD_INTERPRETATION_FEATURE_COUNT + 5;
1272
1273 /**
1274 * The number of structural features of the '<em>Global Relation Interpretation</em>' class.
1275 * <!-- begin-user-doc -->
1276 * <!-- end-user-doc -->
1277 * @generated
1278 * @ordered
1279 */
1280 int GLOBAL_RELATION_INTERPRETATION_FEATURE_COUNT = CD_INTERPRETATION_FEATURE_COUNT + 6;
1281
1282 /**
1283 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl <em>Multiplicity Definition</em>}' class.
1284 * <!-- begin-user-doc -->
1285 * <!-- end-user-doc -->
1286 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl
1287 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicityDefinition()
1288 * @generated
1289 */
1290 int MULTIPLICITY_DEFINITION = 43;
1291
1292 /**
1293 * The feature id for the '<em><b>Lower</b></em>' attribute.
1294 * <!-- begin-user-doc -->
1295 * <!-- end-user-doc -->
1296 * @generated
1297 * @ordered
1298 */
1299 int MULTIPLICITY_DEFINITION__LOWER = 0;
1300
1301 /**
1302 * The feature id for the '<em><b>Upper</b></em>' attribute.
1303 * <!-- begin-user-doc -->
1304 * <!-- end-user-doc -->
1305 * @generated
1306 * @ordered
1307 */
1308 int MULTIPLICITY_DEFINITION__UPPER = 1;
1309
1310 /**
1311 * The feature id for the '<em><b>Unlimited Upper</b></em>' attribute.
1312 * <!-- begin-user-doc -->
1313 * <!-- end-user-doc -->
1314 * @generated
1315 * @ordered
1316 */
1317 int MULTIPLICITY_DEFINITION__UNLIMITED_UPPER = 2;
1318
1319 /**
1320 * The number of structural features of the '<em>Multiplicity Definition</em>' class.
1321 * <!-- begin-user-doc -->
1322 * <!-- end-user-doc -->
1323 * @generated
1324 * @ordered
1325 */
1326 int MULTIPLICITY_DEFINITION_FEATURE_COUNT = 3;
1327
1328 /**
1329 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanTrueImpl <em>Boolean True</em>}' class.
1330 * <!-- begin-user-doc -->
1331 * <!-- end-user-doc -->
1332 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanTrueImpl
1333 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanTrue()
1334 * @generated
1335 */
1336 int BOOLEAN_TRUE = 44;
1337
1338 /**
1339 * The number of structural features of the '<em>Boolean True</em>' class.
1340 * <!-- begin-user-doc -->
1341 * <!-- end-user-doc -->
1342 * @generated
1343 * @ordered
1344 */
1345 int BOOLEAN_TRUE_FEATURE_COUNT = BOOLEAN_VALUE_FEATURE_COUNT + 0;
1346
1347 /**
1348 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanFalseImpl <em>Boolean False</em>}' class.
1349 * <!-- begin-user-doc -->
1350 * <!-- end-user-doc -->
1351 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanFalseImpl
1352 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanFalse()
1353 * @generated
1354 */
1355 int BOOLEAN_FALSE = 45;
1356
1357 /**
1358 * The number of structural features of the '<em>Boolean False</em>' class.
1359 * <!-- begin-user-doc -->
1360 * <!-- end-user-doc -->
1361 * @generated
1362 * @ordered
1363 */
1364 int BOOLEAN_FALSE_FEATURE_COUNT = BOOLEAN_VALUE_FEATURE_COUNT + 0;
1365
1366 /**
1367 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TrueImpl <em>True</em>}' class.
1368 * <!-- begin-user-doc -->
1369 * <!-- end-user-doc -->
1370 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TrueImpl
1371 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTrue()
1372 * @generated
1373 */
1374 int TRUE = 46;
1375
1376 /**
1377 * The number of structural features of the '<em>True</em>' class.
1378 * <!-- begin-user-doc -->
1379 * <!-- end-user-doc -->
1380 * @generated
1381 * @ordered
1382 */
1383 int TRUE_FEATURE_COUNT = TRUTH_VALUE_FEATURE_COUNT + 0;
1384
1385 /**
1386 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FalseImpl <em>False</em>}' class.
1387 * <!-- begin-user-doc -->
1388 * <!-- end-user-doc -->
1389 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FalseImpl
1390 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFalse()
1391 * @generated
1392 */
1393 int FALSE = 47;
1394
1395 /**
1396 * The number of structural features of the '<em>False</em>' class.
1397 * <!-- begin-user-doc -->
1398 * <!-- end-user-doc -->
1399 * @generated
1400 * @ordered
1401 */
1402 int FALSE_FEATURE_COUNT = TRUTH_VALUE_FEATURE_COUNT + 0;
1403
1404 /**
1405 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnknownImpl <em>Unknown</em>}' class.
1406 * <!-- begin-user-doc -->
1407 * <!-- end-user-doc -->
1408 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnknownImpl
1409 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnknown()
1410 * @generated
1411 */
1412 int UNKNOWN = 48;
1413
1414 /**
1415 * The number of structural features of the '<em>Unknown</em>' class.
1416 * <!-- begin-user-doc -->
1417 * <!-- end-user-doc -->
1418 * @generated
1419 * @ordered
1420 */
1421 int UNKNOWN_FEATURE_COUNT = TRUTH_VALUE_FEATURE_COUNT + 0;
1422
1423 /**
1424 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorImpl <em>Error</em>}' class.
1425 * <!-- begin-user-doc -->
1426 * <!-- end-user-doc -->
1427 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorImpl
1428 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getError()
1429 * @generated
1430 */
1431 int ERROR = 49;
1432
1433 /**
1434 * The number of structural features of the '<em>Error</em>' class.
1435 * <!-- begin-user-doc -->
1436 * <!-- end-user-doc -->
1437 * @generated
1438 * @ordered
1439 */
1440 int ERROR_FEATURE_COUNT = TRUTH_VALUE_FEATURE_COUNT + 0;
1441
1442 /**
1443 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PositiveImpl <em>Positive</em>}' class.
1444 * <!-- begin-user-doc -->
1445 * <!-- end-user-doc -->
1446 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PositiveImpl
1447 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPositive()
1448 * @generated
1449 */
1450 int POSITIVE = 50;
1451
1452 /**
1453 * The number of structural features of the '<em>Positive</em>' class.
1454 * <!-- begin-user-doc -->
1455 * <!-- end-user-doc -->
1456 * @generated
1457 * @ordered
1458 */
1459 int POSITIVE_FEATURE_COUNT = POLARITY_FEATURE_COUNT + 0;
1460
1461 /**
1462 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NegativeImpl <em>Negative</em>}' class.
1463 * <!-- begin-user-doc -->
1464 * <!-- end-user-doc -->
1465 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NegativeImpl
1466 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNegative()
1467 * @generated
1468 */
1469 int NEGATIVE = 51;
1470
1471 /**
1472 * The number of structural features of the '<em>Negative</em>' class.
1473 * <!-- begin-user-doc -->
1474 * <!-- end-user-doc -->
1475 * @generated
1476 * @ordered
1477 */
1478 int NEGATIVE_FEATURE_COUNT = POLARITY_FEATURE_COUNT + 0;
1479
1480 /**
1481 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReflexiveClosureImpl <em>Reflexive Closure</em>}' class.
1482 * <!-- begin-user-doc -->
1483 * <!-- end-user-doc -->
1484 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReflexiveClosureImpl
1485 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReflexiveClosure()
1486 * @generated
1487 */
1488 int REFLEXIVE_CLOSURE = 52;
1489
1490 /**
1491 * The number of structural features of the '<em>Reflexive Closure</em>' class.
1492 * <!-- begin-user-doc -->
1493 * <!-- end-user-doc -->
1494 * @generated
1495 * @ordered
1496 */
1497 int REFLEXIVE_CLOSURE_FEATURE_COUNT = CLOSURE_TYPE_FEATURE_COUNT + 0;
1498
1499 /**
1500 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IrreflexiveClosureImpl <em>Irreflexive Closure</em>}' class.
1501 * <!-- begin-user-doc -->
1502 * <!-- end-user-doc -->
1503 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IrreflexiveClosureImpl
1504 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIrreflexiveClosure()
1505 * @generated
1506 */
1507 int IRREFLEXIVE_CLOSURE = 53;
1508
1509 /**
1510 * The number of structural features of the '<em>Irreflexive Closure</em>' class.
1511 * <!-- begin-user-doc -->
1512 * <!-- end-user-doc -->
1513 * @generated
1514 * @ordered
1515 */
1516 int IRREFLEXIVE_CLOSURE_FEATURE_COUNT = CLOSURE_TYPE_FEATURE_COUNT + 0;
1517
1518
1519 /**
1520 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem <em>Problem</em>}'.
1521 * <!-- begin-user-doc -->
1522 * <!-- end-user-doc -->
1523 * @return the meta object for class '<em>Problem</em>'.
1524 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem
1525 * @generated
1526 */
1527 EClass getProblem();
1528
1529 /**
1530 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements <em>Statements</em>}'.
1531 * <!-- begin-user-doc -->
1532 * <!-- end-user-doc -->
1533 * @return the meta object for the containment reference list '<em>Statements</em>'.
1534 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements()
1535 * @see #getProblem()
1536 * @generated
1537 */
1538 EReference getProblem_Statements();
1539
1540 /**
1541 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement <em>Statement</em>}'.
1542 * <!-- begin-user-doc -->
1543 * <!-- end-user-doc -->
1544 * @return the meta object for class '<em>Statement</em>'.
1545 * @see org.eclipse.viatra.solver.language.solverLanguage.Statement
1546 * @generated
1547 */
1548 EClass getStatement();
1549
1550 /**
1551 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanValue <em>Boolean Value</em>}'.
1552 * <!-- begin-user-doc -->
1553 * <!-- end-user-doc -->
1554 * @return the meta object for class '<em>Boolean Value</em>'.
1555 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanValue
1556 * @generated
1557 */
1558 EClass getBooleanValue();
1559
1560 /**
1561 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TruthValue <em>Truth Value</em>}'.
1562 * <!-- begin-user-doc -->
1563 * <!-- end-user-doc -->
1564 * @return the meta object for class '<em>Truth Value</em>'.
1565 * @see org.eclipse.viatra.solver.language.solverLanguage.TruthValue
1566 * @generated
1567 */
1568 EClass getTruthValue();
1569
1570 /**
1571 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation <em>Interpretation</em>}'.
1572 * <!-- begin-user-doc -->
1573 * <!-- end-user-doc -->
1574 * @return the meta object for class '<em>Interpretation</em>'.
1575 * @see org.eclipse.viatra.solver.language.solverLanguage.Interpretation
1576 * @generated
1577 */
1578 EClass getInterpretation();
1579
1580 /**
1581 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation <em>Basic Interpretation</em>}'.
1582 * <!-- begin-user-doc -->
1583 * <!-- end-user-doc -->
1584 * @return the meta object for class '<em>Basic Interpretation</em>'.
1585 * @see org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation
1586 * @generated
1587 */
1588 EClass getBasicInterpretation();
1589
1590 /**
1591 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getSymbol <em>Symbol</em>}'.
1592 * <!-- begin-user-doc -->
1593 * <!-- end-user-doc -->
1594 * @return the meta object for the containment reference '<em>Symbol</em>'.
1595 * @see org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getSymbol()
1596 * @see #getBasicInterpretation()
1597 * @generated
1598 */
1599 EReference getBasicInterpretation_Symbol();
1600
1601 /**
1602 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getObjects <em>Objects</em>}'.
1603 * <!-- begin-user-doc -->
1604 * <!-- end-user-doc -->
1605 * @return the meta object for the containment reference list '<em>Objects</em>'.
1606 * @see org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getObjects()
1607 * @see #getBasicInterpretation()
1608 * @generated
1609 */
1610 EReference getBasicInterpretation_Objects();
1611
1612 /**
1613 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getValue <em>Value</em>}'.
1614 * <!-- begin-user-doc -->
1615 * <!-- end-user-doc -->
1616 * @return the meta object for the containment reference '<em>Value</em>'.
1617 * @see org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation#getValue()
1618 * @see #getBasicInterpretation()
1619 * @generated
1620 */
1621 EReference getBasicInterpretation_Value();
1622
1623 /**
1624 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol <em>Symbol</em>}'.
1625 * <!-- begin-user-doc -->
1626 * <!-- end-user-doc -->
1627 * @return the meta object for class '<em>Symbol</em>'.
1628 * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol
1629 * @generated
1630 */
1631 EClass getSymbol();
1632
1633 /**
1634 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol <em>Model Symbol</em>}'.
1635 * <!-- begin-user-doc -->
1636 * <!-- end-user-doc -->
1637 * @return the meta object for class '<em>Model Symbol</em>'.
1638 * @see org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol
1639 * @generated
1640 */
1641 EClass getModelSymbol();
1642
1643 /**
1644 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol#getName <em>Name</em>}'.
1645 * <!-- begin-user-doc -->
1646 * <!-- end-user-doc -->
1647 * @return the meta object for the attribute '<em>Name</em>'.
1648 * @see org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol#getName()
1649 * @see #getModelSymbol()
1650 * @generated
1651 */
1652 EAttribute getModelSymbol_Name();
1653
1654 /**
1655 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol <em>Partiality Symbol</em>}'.
1656 * <!-- begin-user-doc -->
1657 * <!-- end-user-doc -->
1658 * @return the meta object for class '<em>Partiality Symbol</em>'.
1659 * @see org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol
1660 * @generated
1661 */
1662 EClass getPartialitySymbol();
1663
1664 /**
1665 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol <em>Exist Symbol</em>}'.
1666 * <!-- begin-user-doc -->
1667 * <!-- end-user-doc -->
1668 * @return the meta object for class '<em>Exist Symbol</em>'.
1669 * @see org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol
1670 * @generated
1671 */
1672 EClass getExistSymbol();
1673
1674 /**
1675 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol <em>Equals Symbol</em>}'.
1676 * <!-- begin-user-doc -->
1677 * <!-- end-user-doc -->
1678 * @return the meta object for class '<em>Equals Symbol</em>'.
1679 * @see org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol
1680 * @generated
1681 */
1682 EClass getEqualsSymbol();
1683
1684 /**
1685 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.DataSymbol <em>Data Symbol</em>}'.
1686 * <!-- begin-user-doc -->
1687 * <!-- end-user-doc -->
1688 * @return the meta object for class '<em>Data Symbol</em>'.
1689 * @see org.eclipse.viatra.solver.language.solverLanguage.DataSymbol
1690 * @generated
1691 */
1692 EClass getDataSymbol();
1693
1694 /**
1695 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol <em>Boolean Symbol</em>}'.
1696 * <!-- begin-user-doc -->
1697 * <!-- end-user-doc -->
1698 * @return the meta object for class '<em>Boolean Symbol</em>'.
1699 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol
1700 * @generated
1701 */
1702 EClass getBooleanSymbol();
1703
1704 /**
1705 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol <em>Integer Symbol</em>}'.
1706 * <!-- begin-user-doc -->
1707 * <!-- end-user-doc -->
1708 * @return the meta object for class '<em>Integer Symbol</em>'.
1709 * @see org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol
1710 * @generated
1711 */
1712 EClass getIntegerSymbol();
1713
1714 /**
1715 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealSymbol <em>Real Symbol</em>}'.
1716 * <!-- begin-user-doc -->
1717 * <!-- end-user-doc -->
1718 * @return the meta object for class '<em>Real Symbol</em>'.
1719 * @see org.eclipse.viatra.solver.language.solverLanguage.RealSymbol
1720 * @generated
1721 */
1722 EClass getRealSymbol();
1723
1724 /**
1725 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringSymbol <em>String Symbol</em>}'.
1726 * <!-- begin-user-doc -->
1727 * <!-- end-user-doc -->
1728 * @return the meta object for class '<em>String Symbol</em>'.
1729 * @see org.eclipse.viatra.solver.language.solverLanguage.StringSymbol
1730 * @generated
1731 */
1732 EClass getStringSymbol();
1733
1734 /**
1735 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ComplexObject <em>Complex Object</em>}'.
1736 * <!-- begin-user-doc -->
1737 * <!-- end-user-doc -->
1738 * @return the meta object for class '<em>Complex Object</em>'.
1739 * @see org.eclipse.viatra.solver.language.solverLanguage.ComplexObject
1740 * @generated
1741 */
1742 EClass getComplexObject();
1743
1744 /**
1745 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Object <em>Object</em>}'.
1746 * <!-- begin-user-doc -->
1747 * <!-- end-user-doc -->
1748 * @return the meta object for class '<em>Object</em>'.
1749 * @see org.eclipse.viatra.solver.language.solverLanguage.Object
1750 * @generated
1751 */
1752 EClass getObject();
1753
1754 /**
1755 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedObject <em>Named Object</em>}'.
1756 * <!-- begin-user-doc -->
1757 * <!-- end-user-doc -->
1758 * @return the meta object for class '<em>Named Object</em>'.
1759 * @see org.eclipse.viatra.solver.language.solverLanguage.NamedObject
1760 * @generated
1761 */
1762 EClass getNamedObject();
1763
1764 /**
1765 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedObject#getName <em>Name</em>}'.
1766 * <!-- begin-user-doc -->
1767 * <!-- end-user-doc -->
1768 * @return the meta object for the attribute '<em>Name</em>'.
1769 * @see org.eclipse.viatra.solver.language.solverLanguage.NamedObject#getName()
1770 * @see #getNamedObject()
1771 * @generated
1772 */
1773 EAttribute getNamedObject_Name();
1774
1775 /**
1776 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject <em>Unnamed Object</em>}'.
1777 * <!-- begin-user-doc -->
1778 * <!-- end-user-doc -->
1779 * @return the meta object for class '<em>Unnamed Object</em>'.
1780 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject
1781 * @generated
1782 */
1783 EClass getUnnamedObject();
1784
1785 /**
1786 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject#getName <em>Name</em>}'.
1787 * <!-- begin-user-doc -->
1788 * <!-- end-user-doc -->
1789 * @return the meta object for the attribute '<em>Name</em>'.
1790 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject#getName()
1791 * @see #getUnnamedObject()
1792 * @generated
1793 */
1794 EAttribute getUnnamedObject_Name();
1795
1796 /**
1797 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.DataObject <em>Data Object</em>}'.
1798 * <!-- begin-user-doc -->
1799 * <!-- end-user-doc -->
1800 * @return the meta object for class '<em>Data Object</em>'.
1801 * @see org.eclipse.viatra.solver.language.solverLanguage.DataObject
1802 * @generated
1803 */
1804 EClass getDataObject();
1805
1806 /**
1807 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanObject <em>Boolean Object</em>}'.
1808 * <!-- begin-user-doc -->
1809 * <!-- end-user-doc -->
1810 * @return the meta object for class '<em>Boolean Object</em>'.
1811 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanObject
1812 * @generated
1813 */
1814 EClass getBooleanObject();
1815
1816 /**
1817 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanObject#getValue <em>Value</em>}'.
1818 * <!-- begin-user-doc -->
1819 * <!-- end-user-doc -->
1820 * @return the meta object for the containment reference '<em>Value</em>'.
1821 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanObject#getValue()
1822 * @see #getBooleanObject()
1823 * @generated
1824 */
1825 EReference getBooleanObject_Value();
1826
1827 /**
1828 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntObject <em>Int Object</em>}'.
1829 * <!-- begin-user-doc -->
1830 * <!-- end-user-doc -->
1831 * @return the meta object for class '<em>Int Object</em>'.
1832 * @see org.eclipse.viatra.solver.language.solverLanguage.IntObject
1833 * @generated
1834 */
1835 EClass getIntObject();
1836
1837 /**
1838 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.IntObject#getValue <em>Value</em>}'.
1839 * <!-- begin-user-doc -->
1840 * <!-- end-user-doc -->
1841 * @return the meta object for the attribute '<em>Value</em>'.
1842 * @see org.eclipse.viatra.solver.language.solverLanguage.IntObject#getValue()
1843 * @see #getIntObject()
1844 * @generated
1845 */
1846 EAttribute getIntObject_Value();
1847
1848 /**
1849 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealObject <em>Real Object</em>}'.
1850 * <!-- begin-user-doc -->
1851 * <!-- end-user-doc -->
1852 * @return the meta object for class '<em>Real Object</em>'.
1853 * @see org.eclipse.viatra.solver.language.solverLanguage.RealObject
1854 * @generated
1855 */
1856 EClass getRealObject();
1857
1858 /**
1859 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.RealObject#getValue <em>Value</em>}'.
1860 * <!-- begin-user-doc -->
1861 * <!-- end-user-doc -->
1862 * @return the meta object for the attribute '<em>Value</em>'.
1863 * @see org.eclipse.viatra.solver.language.solverLanguage.RealObject#getValue()
1864 * @see #getRealObject()
1865 * @generated
1866 */
1867 EAttribute getRealObject_Value();
1868
1869 /**
1870 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringObject <em>String Object</em>}'.
1871 * <!-- begin-user-doc -->
1872 * <!-- end-user-doc -->
1873 * @return the meta object for class '<em>String Object</em>'.
1874 * @see org.eclipse.viatra.solver.language.solverLanguage.StringObject
1875 * @generated
1876 */
1877 EClass getStringObject();
1878
1879 /**
1880 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.StringObject#getValue <em>Value</em>}'.
1881 * <!-- begin-user-doc -->
1882 * <!-- end-user-doc -->
1883 * @return the meta object for the attribute '<em>Value</em>'.
1884 * @see org.eclipse.viatra.solver.language.solverLanguage.StringObject#getValue()
1885 * @see #getStringObject()
1886 * @generated
1887 */
1888 EAttribute getStringObject_Value();
1889
1890 /**
1891 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate <em>Predicate</em>}'.
1892 * <!-- begin-user-doc -->
1893 * <!-- end-user-doc -->
1894 * @return the meta object for class '<em>Predicate</em>'.
1895 * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate
1896 * @generated
1897 */
1898 EClass getPredicate();
1899
1900 /**
1901 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate#getParameters <em>Parameters</em>}'.
1902 * <!-- begin-user-doc -->
1903 * <!-- end-user-doc -->
1904 * @return the meta object for the containment reference list '<em>Parameters</em>'.
1905 * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate#getParameters()
1906 * @see #getPredicate()
1907 * @generated
1908 */
1909 EReference getPredicate_Parameters();
1910
1911 /**
1912 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate#getBodies <em>Bodies</em>}'.
1913 * <!-- begin-user-doc -->
1914 * <!-- end-user-doc -->
1915 * @return the meta object for the containment reference list '<em>Bodies</em>'.
1916 * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate#getBodies()
1917 * @see #getPredicate()
1918 * @generated
1919 */
1920 EReference getPredicate_Bodies();
1921
1922 /**
1923 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol <em>Predicate Symbol</em>}'.
1924 * <!-- begin-user-doc -->
1925 * <!-- end-user-doc -->
1926 * @return the meta object for class '<em>Predicate Symbol</em>'.
1927 * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol
1928 * @generated
1929 */
1930 EClass getPredicateSymbol();
1931
1932 /**
1933 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol#getSymbol <em>Symbol</em>}'.
1934 * <!-- begin-user-doc -->
1935 * <!-- end-user-doc -->
1936 * @return the meta object for the containment reference '<em>Symbol</em>'.
1937 * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol#getSymbol()
1938 * @see #getPredicateSymbol()
1939 * @generated
1940 */
1941 EReference getPredicateSymbol_Symbol();
1942
1943 /**
1944 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate <em>Error Predicate</em>}'.
1945 * <!-- begin-user-doc -->
1946 * <!-- end-user-doc -->
1947 * @return the meta object for class '<em>Error Predicate</em>'.
1948 * @see org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate
1949 * @generated
1950 */
1951 EClass getErrorPredicate();
1952
1953 /**
1954 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate#getName <em>Name</em>}'.
1955 * <!-- begin-user-doc -->
1956 * <!-- end-user-doc -->
1957 * @return the meta object for the attribute '<em>Name</em>'.
1958 * @see org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate#getName()
1959 * @see #getErrorPredicate()
1960 * @generated
1961 */
1962 EAttribute getErrorPredicate_Name();
1963
1964 /**
1965 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter <em>Parameter</em>}'.
1966 * <!-- begin-user-doc -->
1967 * <!-- end-user-doc -->
1968 * @return the meta object for class '<em>Parameter</em>'.
1969 * @see org.eclipse.viatra.solver.language.solverLanguage.Parameter
1970 * @generated
1971 */
1972 EClass getParameter();
1973
1974 /**
1975 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter#getVariable <em>Variable</em>}'.
1976 * <!-- begin-user-doc -->
1977 * <!-- end-user-doc -->
1978 * @return the meta object for the containment reference '<em>Variable</em>'.
1979 * @see org.eclipse.viatra.solver.language.solverLanguage.Parameter#getVariable()
1980 * @see #getParameter()
1981 * @generated
1982 */
1983 EReference getParameter_Variable();
1984
1985 /**
1986 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter#getType <em>Type</em>}'.
1987 * <!-- begin-user-doc -->
1988 * <!-- end-user-doc -->
1989 * @return the meta object for the containment reference '<em>Type</em>'.
1990 * @see org.eclipse.viatra.solver.language.solverLanguage.Parameter#getType()
1991 * @see #getParameter()
1992 * @generated
1993 */
1994 EReference getParameter_Type();
1995
1996 /**
1997 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PatternBody <em>Pattern Body</em>}'.
1998 * <!-- begin-user-doc -->
1999 * <!-- end-user-doc -->
2000 * @return the meta object for class '<em>Pattern Body</em>'.
2001 * @see org.eclipse.viatra.solver.language.solverLanguage.PatternBody
2002 * @generated
2003 */
2004 EClass getPatternBody();
2005
2006 /**
2007 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.PatternBody#getConstraints <em>Constraints</em>}'.
2008 * <!-- begin-user-doc -->
2009 * <!-- end-user-doc -->
2010 * @return the meta object for the containment reference list '<em>Constraints</em>'.
2011 * @see org.eclipse.viatra.solver.language.solverLanguage.PatternBody#getConstraints()
2012 * @see #getPatternBody()
2013 * @generated
2014 */
2015 EReference getPatternBody_Constraints();
2016
2017 /**
2018 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Polarity <em>Polarity</em>}'.
2019 * <!-- begin-user-doc -->
2020 * <!-- end-user-doc -->
2021 * @return the meta object for class '<em>Polarity</em>'.
2022 * @see org.eclipse.viatra.solver.language.solverLanguage.Polarity
2023 * @generated
2024 */
2025 EClass getPolarity();
2026
2027 /**
2028 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint <em>Constraint</em>}'.
2029 * <!-- begin-user-doc -->
2030 * <!-- end-user-doc -->
2031 * @return the meta object for class '<em>Constraint</em>'.
2032 * @see org.eclipse.viatra.solver.language.solverLanguage.Constraint
2033 * @generated
2034 */
2035 EClass getConstraint();
2036
2037 /**
2038 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getPolarity <em>Polarity</em>}'.
2039 * <!-- begin-user-doc -->
2040 * <!-- end-user-doc -->
2041 * @return the meta object for the containment reference '<em>Polarity</em>'.
2042 * @see org.eclipse.viatra.solver.language.solverLanguage.Constraint#getPolarity()
2043 * @see #getConstraint()
2044 * @generated
2045 */
2046 EReference getConstraint_Polarity();
2047
2048 /**
2049 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getSymbol <em>Symbol</em>}'.
2050 * <!-- begin-user-doc -->
2051 * <!-- end-user-doc -->
2052 * @return the meta object for the containment reference '<em>Symbol</em>'.
2053 * @see org.eclipse.viatra.solver.language.solverLanguage.Constraint#getSymbol()
2054 * @see #getConstraint()
2055 * @generated
2056 */
2057 EReference getConstraint_Symbol();
2058
2059 /**
2060 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getParams <em>Params</em>}'.
2061 * <!-- begin-user-doc -->
2062 * <!-- end-user-doc -->
2063 * @return the meta object for the containment reference list '<em>Params</em>'.
2064 * @see org.eclipse.viatra.solver.language.solverLanguage.Constraint#getParams()
2065 * @see #getConstraint()
2066 * @generated
2067 */
2068 EReference getConstraint_Params();
2069
2070 /**
2071 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint#getClosureType <em>Closure Type</em>}'.
2072 * <!-- begin-user-doc -->
2073 * <!-- end-user-doc -->
2074 * @return the meta object for the containment reference '<em>Closure Type</em>'.
2075 * @see org.eclipse.viatra.solver.language.solverLanguage.Constraint#getClosureType()
2076 * @see #getConstraint()
2077 * @generated
2078 */
2079 EReference getConstraint_ClosureType();
2080
2081 /**
2082 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClosureType <em>Closure Type</em>}'.
2083 * <!-- begin-user-doc -->
2084 * <!-- end-user-doc -->
2085 * @return the meta object for class '<em>Closure Type</em>'.
2086 * @see org.eclipse.viatra.solver.language.solverLanguage.ClosureType
2087 * @generated
2088 */
2089 EClass getClosureType();
2090
2091 /**
2092 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal <em>Literal</em>}'.
2093 * <!-- begin-user-doc -->
2094 * <!-- end-user-doc -->
2095 * @return the meta object for class '<em>Literal</em>'.
2096 * @see org.eclipse.viatra.solver.language.solverLanguage.Literal
2097 * @generated
2098 */
2099 EClass getLiteral();
2100
2101 /**
2102 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable <em>Variable</em>}'.
2103 * <!-- begin-user-doc -->
2104 * <!-- end-user-doc -->
2105 * @return the meta object for class '<em>Variable</em>'.
2106 * @see org.eclipse.viatra.solver.language.solverLanguage.Variable
2107 * @generated
2108 */
2109 EClass getVariable();
2110
2111 /**
2112 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getName <em>Name</em>}'.
2113 * <!-- begin-user-doc -->
2114 * <!-- end-user-doc -->
2115 * @return the meta object for the attribute '<em>Name</em>'.
2116 * @see org.eclipse.viatra.solver.language.solverLanguage.Variable#getName()
2117 * @see #getVariable()
2118 * @generated
2119 */
2120 EAttribute getVariable_Name();
2121
2122 /**
2123 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AllInstances <em>All Instances</em>}'.
2124 * <!-- begin-user-doc -->
2125 * <!-- end-user-doc -->
2126 * @return the meta object for class '<em>All Instances</em>'.
2127 * @see org.eclipse.viatra.solver.language.solverLanguage.AllInstances
2128 * @generated
2129 */
2130 EClass getAllInstances();
2131
2132 /**
2133 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AllInstances#getSymbol <em>Symbol</em>}'.
2134 * <!-- begin-user-doc -->
2135 * <!-- end-user-doc -->
2136 * @return the meta object for the containment reference '<em>Symbol</em>'.
2137 * @see org.eclipse.viatra.solver.language.solverLanguage.AllInstances#getSymbol()
2138 * @see #getAllInstances()
2139 * @generated
2140 */
2141 EReference getAllInstances_Symbol();
2142
2143 /**
2144 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AllObjects <em>All Objects</em>}'.
2145 * <!-- begin-user-doc -->
2146 * <!-- end-user-doc -->
2147 * @return the meta object for class '<em>All Objects</em>'.
2148 * @see org.eclipse.viatra.solver.language.solverLanguage.AllObjects
2149 * @generated
2150 */
2151 EClass getAllObjects();
2152
2153 /**
2154 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation <em>Default Interpretation</em>}'.
2155 * <!-- begin-user-doc -->
2156 * <!-- end-user-doc -->
2157 * @return the meta object for class '<em>Default Interpretation</em>'.
2158 * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation
2159 * @generated
2160 */
2161 EClass getDefaultInterpretation();
2162
2163 /**
2164 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation#getInterpretation <em>Interpretation</em>}'.
2165 * <!-- begin-user-doc -->
2166 * <!-- end-user-doc -->
2167 * @return the meta object for the containment reference '<em>Interpretation</em>'.
2168 * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation#getInterpretation()
2169 * @see #getDefaultInterpretation()
2170 * @generated
2171 */
2172 EReference getDefaultInterpretation_Interpretation();
2173
2174 /**
2175 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation <em>CD Interpretation</em>}'.
2176 * <!-- begin-user-doc -->
2177 * <!-- end-user-doc -->
2178 * @return the meta object for class '<em>CD Interpretation</em>'.
2179 * @see org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation
2180 * @generated
2181 */
2182 EClass getCDInterpretation();
2183
2184 /**
2185 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation <em>Class Interpretation</em>}'.
2186 * <!-- begin-user-doc -->
2187 * <!-- end-user-doc -->
2188 * @return the meta object for class '<em>Class Interpretation</em>'.
2189 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation
2190 * @generated
2191 */
2192 EClass getClassInterpretation();
2193
2194 /**
2195 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#isAbstract <em>Abstract</em>}'.
2196 * <!-- begin-user-doc -->
2197 * <!-- end-user-doc -->
2198 * @return the meta object for the attribute '<em>Abstract</em>'.
2199 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#isAbstract()
2200 * @see #getClassInterpretation()
2201 * @generated
2202 */
2203 EAttribute getClassInterpretation_Abstract();
2204
2205 /**
2206 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSymbol <em>Symbol</em>}'.
2207 * <!-- begin-user-doc -->
2208 * <!-- end-user-doc -->
2209 * @return the meta object for the containment reference '<em>Symbol</em>'.
2210 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSymbol()
2211 * @see #getClassInterpretation()
2212 * @generated
2213 */
2214 EReference getClassInterpretation_Symbol();
2215
2216 /**
2217 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSupertypes <em>Supertypes</em>}'.
2218 * <!-- begin-user-doc -->
2219 * <!-- end-user-doc -->
2220 * @return the meta object for the containment reference list '<em>Supertypes</em>'.
2221 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getSupertypes()
2222 * @see #getClassInterpretation()
2223 * @generated
2224 */
2225 EReference getClassInterpretation_Supertypes();
2226
2227 /**
2228 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getFielt <em>Fielt</em>}'.
2229 * <!-- begin-user-doc -->
2230 * <!-- end-user-doc -->
2231 * @return the meta object for the containment reference list '<em>Fielt</em>'.
2232 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation#getFielt()
2233 * @see #getClassInterpretation()
2234 * @generated
2235 */
2236 EReference getClassInterpretation_Fielt();
2237
2238 /**
2239 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation <em>Enum Interpretation</em>}'.
2240 * <!-- begin-user-doc -->
2241 * <!-- end-user-doc -->
2242 * @return the meta object for class '<em>Enum Interpretation</em>'.
2243 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation
2244 * @generated
2245 */
2246 EClass getEnumInterpretation();
2247
2248 /**
2249 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getSymbol <em>Symbol</em>}'.
2250 * <!-- begin-user-doc -->
2251 * <!-- end-user-doc -->
2252 * @return the meta object for the containment reference '<em>Symbol</em>'.
2253 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getSymbol()
2254 * @see #getEnumInterpretation()
2255 * @generated
2256 */
2257 EReference getEnumInterpretation_Symbol();
2258
2259 /**
2260 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getObjects <em>Objects</em>}'.
2261 * <!-- begin-user-doc -->
2262 * <!-- end-user-doc -->
2263 * @return the meta object for the containment reference list '<em>Objects</em>'.
2264 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation#getObjects()
2265 * @see #getEnumInterpretation()
2266 * @generated
2267 */
2268 EReference getEnumInterpretation_Objects();
2269
2270 /**
2271 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation <em>Field Relation Interpretation</em>}'.
2272 * <!-- begin-user-doc -->
2273 * <!-- end-user-doc -->
2274 * @return the meta object for class '<em>Field Relation Interpretation</em>'.
2275 * @see org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation
2276 * @generated
2277 */
2278 EClass getFieldRelationInterpretation();
2279
2280 /**
2281 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#isContainment <em>Containment</em>}'.
2282 * <!-- begin-user-doc -->
2283 * <!-- end-user-doc -->
2284 * @return the meta object for the attribute '<em>Containment</em>'.
2285 * @see org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#isContainment()
2286 * @see #getFieldRelationInterpretation()
2287 * @generated
2288 */
2289 EAttribute getFieldRelationInterpretation_Containment();
2290
2291 /**
2292 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getSymbol <em>Symbol</em>}'.
2293 * <!-- begin-user-doc -->
2294 * <!-- end-user-doc -->
2295 * @return the meta object for the containment reference '<em>Symbol</em>'.
2296 * @see org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getSymbol()
2297 * @see #getFieldRelationInterpretation()
2298 * @generated
2299 */
2300 EReference getFieldRelationInterpretation_Symbol();
2301
2302 /**
2303 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getMultiplicity <em>Multiplicity</em>}'.
2304 * <!-- begin-user-doc -->
2305 * <!-- end-user-doc -->
2306 * @return the meta object for the containment reference '<em>Multiplicity</em>'.
2307 * @see org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getMultiplicity()
2308 * @see #getFieldRelationInterpretation()
2309 * @generated
2310 */
2311 EReference getFieldRelationInterpretation_Multiplicity();
2312
2313 /**
2314 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getTarget <em>Target</em>}'.
2315 * <!-- begin-user-doc -->
2316 * <!-- end-user-doc -->
2317 * @return the meta object for the containment reference '<em>Target</em>'.
2318 * @see org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation#getTarget()
2319 * @see #getFieldRelationInterpretation()
2320 * @generated
2321 */
2322 EReference getFieldRelationInterpretation_Target();
2323
2324 /**
2325 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation <em>Global Relation Interpretation</em>}'.
2326 * <!-- begin-user-doc -->
2327 * <!-- end-user-doc -->
2328 * @return the meta object for class '<em>Global Relation Interpretation</em>'.
2329 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation
2330 * @generated
2331 */
2332 EClass getGlobalRelationInterpretation();
2333
2334 /**
2335 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#isContainment <em>Containment</em>}'.
2336 * <!-- begin-user-doc -->
2337 * <!-- end-user-doc -->
2338 * @return the meta object for the attribute '<em>Containment</em>'.
2339 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#isContainment()
2340 * @see #getGlobalRelationInterpretation()
2341 * @generated
2342 */
2343 EAttribute getGlobalRelationInterpretation_Containment();
2344
2345 /**
2346 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSymbol <em>Symbol</em>}'.
2347 * <!-- begin-user-doc -->
2348 * <!-- end-user-doc -->
2349 * @return the meta object for the containment reference '<em>Symbol</em>'.
2350 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSymbol()
2351 * @see #getGlobalRelationInterpretation()
2352 * @generated
2353 */
2354 EReference getGlobalRelationInterpretation_Symbol();
2355
2356 /**
2357 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSourceMultiplicity <em>Source Multiplicity</em>}'.
2358 * <!-- begin-user-doc -->
2359 * <!-- end-user-doc -->
2360 * @return the meta object for the containment reference '<em>Source Multiplicity</em>'.
2361 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSourceMultiplicity()
2362 * @see #getGlobalRelationInterpretation()
2363 * @generated
2364 */
2365 EReference getGlobalRelationInterpretation_SourceMultiplicity();
2366
2367 /**
2368 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSource <em>Source</em>}'.
2369 * <!-- begin-user-doc -->
2370 * <!-- end-user-doc -->
2371 * @return the meta object for the containment reference '<em>Source</em>'.
2372 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getSource()
2373 * @see #getGlobalRelationInterpretation()
2374 * @generated
2375 */
2376 EReference getGlobalRelationInterpretation_Source();
2377
2378 /**
2379 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTargetMultiplicity <em>Target Multiplicity</em>}'.
2380 * <!-- begin-user-doc -->
2381 * <!-- end-user-doc -->
2382 * @return the meta object for the containment reference '<em>Target Multiplicity</em>'.
2383 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTargetMultiplicity()
2384 * @see #getGlobalRelationInterpretation()
2385 * @generated
2386 */
2387 EReference getGlobalRelationInterpretation_TargetMultiplicity();
2388
2389 /**
2390 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTarget <em>Target</em>}'.
2391 * <!-- begin-user-doc -->
2392 * <!-- end-user-doc -->
2393 * @return the meta object for the containment reference '<em>Target</em>'.
2394 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation#getTarget()
2395 * @see #getGlobalRelationInterpretation()
2396 * @generated
2397 */
2398 EReference getGlobalRelationInterpretation_Target();
2399
2400 /**
2401 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition <em>Multiplicity Definition</em>}'.
2402 * <!-- begin-user-doc -->
2403 * <!-- end-user-doc -->
2404 * @return the meta object for class '<em>Multiplicity Definition</em>'.
2405 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition
2406 * @generated
2407 */
2408 EClass getMultiplicityDefinition();
2409
2410 /**
2411 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getLower <em>Lower</em>}'.
2412 * <!-- begin-user-doc -->
2413 * <!-- end-user-doc -->
2414 * @return the meta object for the attribute '<em>Lower</em>'.
2415 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getLower()
2416 * @see #getMultiplicityDefinition()
2417 * @generated
2418 */
2419 EAttribute getMultiplicityDefinition_Lower();
2420
2421 /**
2422 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getUpper <em>Upper</em>}'.
2423 * <!-- begin-user-doc -->
2424 * <!-- end-user-doc -->
2425 * @return the meta object for the attribute '<em>Upper</em>'.
2426 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#getUpper()
2427 * @see #getMultiplicityDefinition()
2428 * @generated
2429 */
2430 EAttribute getMultiplicityDefinition_Upper();
2431
2432 /**
2433 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#isUnlimitedUpper <em>Unlimited Upper</em>}'.
2434 * <!-- begin-user-doc -->
2435 * <!-- end-user-doc -->
2436 * @return the meta object for the attribute '<em>Unlimited Upper</em>'.
2437 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition#isUnlimitedUpper()
2438 * @see #getMultiplicityDefinition()
2439 * @generated
2440 */
2441 EAttribute getMultiplicityDefinition_UnlimitedUpper();
2442
2443 /**
2444 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue <em>Boolean True</em>}'.
2445 * <!-- begin-user-doc -->
2446 * <!-- end-user-doc -->
2447 * @return the meta object for class '<em>Boolean True</em>'.
2448 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue
2449 * @generated
2450 */
2451 EClass getBooleanTrue();
2452
2453 /**
2454 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse <em>Boolean False</em>}'.
2455 * <!-- begin-user-doc -->
2456 * <!-- end-user-doc -->
2457 * @return the meta object for class '<em>Boolean False</em>'.
2458 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse
2459 * @generated
2460 */
2461 EClass getBooleanFalse();
2462
2463 /**
2464 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.True <em>True</em>}'.
2465 * <!-- begin-user-doc -->
2466 * <!-- end-user-doc -->
2467 * @return the meta object for class '<em>True</em>'.
2468 * @see org.eclipse.viatra.solver.language.solverLanguage.True
2469 * @generated
2470 */
2471 EClass getTrue();
2472
2473 /**
2474 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.False <em>False</em>}'.
2475 * <!-- begin-user-doc -->
2476 * <!-- end-user-doc -->
2477 * @return the meta object for class '<em>False</em>'.
2478 * @see org.eclipse.viatra.solver.language.solverLanguage.False
2479 * @generated
2480 */
2481 EClass getFalse();
2482
2483 /**
2484 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Unknown <em>Unknown</em>}'.
2485 * <!-- begin-user-doc -->
2486 * <!-- end-user-doc -->
2487 * @return the meta object for class '<em>Unknown</em>'.
2488 * @see org.eclipse.viatra.solver.language.solverLanguage.Unknown
2489 * @generated
2490 */
2491 EClass getUnknown();
2492
2493 /**
2494 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Error <em>Error</em>}'.
2495 * <!-- begin-user-doc -->
2496 * <!-- end-user-doc -->
2497 * @return the meta object for class '<em>Error</em>'.
2498 * @see org.eclipse.viatra.solver.language.solverLanguage.Error
2499 * @generated
2500 */
2501 EClass getError();
2502
2503 /**
2504 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Positive <em>Positive</em>}'.
2505 * <!-- begin-user-doc -->
2506 * <!-- end-user-doc -->
2507 * @return the meta object for class '<em>Positive</em>'.
2508 * @see org.eclipse.viatra.solver.language.solverLanguage.Positive
2509 * @generated
2510 */
2511 EClass getPositive();
2512
2513 /**
2514 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Negative <em>Negative</em>}'.
2515 * <!-- begin-user-doc -->
2516 * <!-- end-user-doc -->
2517 * @return the meta object for class '<em>Negative</em>'.
2518 * @see org.eclipse.viatra.solver.language.solverLanguage.Negative
2519 * @generated
2520 */
2521 EClass getNegative();
2522
2523 /**
2524 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure <em>Reflexive Closure</em>}'.
2525 * <!-- begin-user-doc -->
2526 * <!-- end-user-doc -->
2527 * @return the meta object for class '<em>Reflexive Closure</em>'.
2528 * @see org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure
2529 * @generated
2530 */
2531 EClass getReflexiveClosure();
2532
2533 /**
2534 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure <em>Irreflexive Closure</em>}'.
2535 * <!-- begin-user-doc -->
2536 * <!-- end-user-doc -->
2537 * @return the meta object for class '<em>Irreflexive Closure</em>'.
2538 * @see org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure
2539 * @generated
2540 */
2541 EClass getIrreflexiveClosure();
2542
2543 /**
2544 * Returns the factory that creates the instances of the model.
2545 * <!-- begin-user-doc -->
2546 * <!-- end-user-doc -->
2547 * @return the factory that creates the instances of the model.
2548 * @generated
2549 */
2550 SolverLanguageFactory getSolverLanguageFactory();
2551
2552 /**
2553 * <!-- begin-user-doc -->
2554 * Defines literals for the meta objects that represent
2555 * <ul>
2556 * <li>each class,</li>
2557 * <li>each feature of each class,</li>
2558 * <li>each enum,</li>
2559 * <li>and each data type</li>
2560 * </ul>
2561 * <!-- end-user-doc -->
2562 * @generated
2563 */
2564 interface Literals
2565 {
2566 /**
2567 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl <em>Problem</em>}' class.
2568 * <!-- begin-user-doc -->
2569 * <!-- end-user-doc -->
2570 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl
2571 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem()
2572 * @generated
2573 */
2574 EClass PROBLEM = eINSTANCE.getProblem();
2575
2576 /**
2577 * The meta object literal for the '<em><b>Statements</b></em>' containment reference list feature.
2578 * <!-- begin-user-doc -->
2579 * <!-- end-user-doc -->
2580 * @generated
2581 */
2582 EReference PROBLEM__STATEMENTS = eINSTANCE.getProblem_Statements();
2583
2584 /**
2585 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl <em>Statement</em>}' class.
2586 * <!-- begin-user-doc -->
2587 * <!-- end-user-doc -->
2588 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl
2589 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement()
2590 * @generated
2591 */
2592 EClass STATEMENT = eINSTANCE.getStatement();
2593
2594 /**
2595 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanValueImpl <em>Boolean Value</em>}' class.
2596 * <!-- begin-user-doc -->
2597 * <!-- end-user-doc -->
2598 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanValueImpl
2599 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanValue()
2600 * @generated
2601 */
2602 EClass BOOLEAN_VALUE = eINSTANCE.getBooleanValue();
2603
2604 /**
2605 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TruthValueImpl <em>Truth Value</em>}' class.
2606 * <!-- begin-user-doc -->
2607 * <!-- end-user-doc -->
2608 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TruthValueImpl
2609 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTruthValue()
2610 * @generated
2611 */
2612 EClass TRUTH_VALUE = eINSTANCE.getTruthValue();
2613
2614 /**
2615 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl <em>Interpretation</em>}' class.
2616 * <!-- begin-user-doc -->
2617 * <!-- end-user-doc -->
2618 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl
2619 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterpretation()
2620 * @generated
2621 */
2622 EClass INTERPRETATION = eINSTANCE.getInterpretation();
2623
2624 /**
2625 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl <em>Basic Interpretation</em>}' class.
2626 * <!-- begin-user-doc -->
2627 * <!-- end-user-doc -->
2628 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl
2629 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBasicInterpretation()
2630 * @generated
2631 */
2632 EClass BASIC_INTERPRETATION = eINSTANCE.getBasicInterpretation();
2633
2634 /**
2635 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
2636 * <!-- begin-user-doc -->
2637 * <!-- end-user-doc -->
2638 * @generated
2639 */
2640 EReference BASIC_INTERPRETATION__SYMBOL = eINSTANCE.getBasicInterpretation_Symbol();
2641
2642 /**
2643 * The meta object literal for the '<em><b>Objects</b></em>' containment reference list feature.
2644 * <!-- begin-user-doc -->
2645 * <!-- end-user-doc -->
2646 * @generated
2647 */
2648 EReference BASIC_INTERPRETATION__OBJECTS = eINSTANCE.getBasicInterpretation_Objects();
2649
2650 /**
2651 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
2652 * <!-- begin-user-doc -->
2653 * <!-- end-user-doc -->
2654 * @generated
2655 */
2656 EReference BASIC_INTERPRETATION__VALUE = eINSTANCE.getBasicInterpretation_Value();
2657
2658 /**
2659 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl <em>Symbol</em>}' class.
2660 * <!-- begin-user-doc -->
2661 * <!-- end-user-doc -->
2662 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl
2663 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSymbol()
2664 * @generated
2665 */
2666 EClass SYMBOL = eINSTANCE.getSymbol();
2667
2668 /**
2669 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ModelSymbolImpl <em>Model Symbol</em>}' class.
2670 * <!-- begin-user-doc -->
2671 * <!-- end-user-doc -->
2672 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ModelSymbolImpl
2673 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getModelSymbol()
2674 * @generated
2675 */
2676 EClass MODEL_SYMBOL = eINSTANCE.getModelSymbol();
2677
2678 /**
2679 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
2680 * <!-- begin-user-doc -->
2681 * <!-- end-user-doc -->
2682 * @generated
2683 */
2684 EAttribute MODEL_SYMBOL__NAME = eINSTANCE.getModelSymbol_Name();
2685
2686 /**
2687 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PartialitySymbolImpl <em>Partiality Symbol</em>}' class.
2688 * <!-- begin-user-doc -->
2689 * <!-- end-user-doc -->
2690 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PartialitySymbolImpl
2691 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPartialitySymbol()
2692 * @generated
2693 */
2694 EClass PARTIALITY_SYMBOL = eINSTANCE.getPartialitySymbol();
2695
2696 /**
2697 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExistSymbolImpl <em>Exist Symbol</em>}' class.
2698 * <!-- begin-user-doc -->
2699 * <!-- end-user-doc -->
2700 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExistSymbolImpl
2701 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExistSymbol()
2702 * @generated
2703 */
2704 EClass EXIST_SYMBOL = eINSTANCE.getExistSymbol();
2705
2706 /**
2707 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EqualsSymbolImpl <em>Equals Symbol</em>}' class.
2708 * <!-- begin-user-doc -->
2709 * <!-- end-user-doc -->
2710 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EqualsSymbolImpl
2711 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEqualsSymbol()
2712 * @generated
2713 */
2714 EClass EQUALS_SYMBOL = eINSTANCE.getEqualsSymbol();
2715
2716 /**
2717 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DataSymbolImpl <em>Data Symbol</em>}' class.
2718 * <!-- begin-user-doc -->
2719 * <!-- end-user-doc -->
2720 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DataSymbolImpl
2721 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDataSymbol()
2722 * @generated
2723 */
2724 EClass DATA_SYMBOL = eINSTANCE.getDataSymbol();
2725
2726 /**
2727 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanSymbolImpl <em>Boolean Symbol</em>}' class.
2728 * <!-- begin-user-doc -->
2729 * <!-- end-user-doc -->
2730 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanSymbolImpl
2731 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanSymbol()
2732 * @generated
2733 */
2734 EClass BOOLEAN_SYMBOL = eINSTANCE.getBooleanSymbol();
2735
2736 /**
2737 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntegerSymbolImpl <em>Integer Symbol</em>}' class.
2738 * <!-- begin-user-doc -->
2739 * <!-- end-user-doc -->
2740 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntegerSymbolImpl
2741 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntegerSymbol()
2742 * @generated
2743 */
2744 EClass INTEGER_SYMBOL = eINSTANCE.getIntegerSymbol();
2745
2746 /**
2747 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealSymbolImpl <em>Real Symbol</em>}' class.
2748 * <!-- begin-user-doc -->
2749 * <!-- end-user-doc -->
2750 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealSymbolImpl
2751 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealSymbol()
2752 * @generated
2753 */
2754 EClass REAL_SYMBOL = eINSTANCE.getRealSymbol();
2755
2756 /**
2757 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringSymbolImpl <em>String Symbol</em>}' class.
2758 * <!-- begin-user-doc -->
2759 * <!-- end-user-doc -->
2760 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringSymbolImpl
2761 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringSymbol()
2762 * @generated
2763 */
2764 EClass STRING_SYMBOL = eINSTANCE.getStringSymbol();
2765
2766 /**
2767 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComplexObjectImpl <em>Complex Object</em>}' class.
2768 * <!-- begin-user-doc -->
2769 * <!-- end-user-doc -->
2770 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ComplexObjectImpl
2771 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getComplexObject()
2772 * @generated
2773 */
2774 EClass COMPLEX_OBJECT = eINSTANCE.getComplexObject();
2775
2776 /**
2777 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectImpl <em>Object</em>}' class.
2778 * <!-- begin-user-doc -->
2779 * <!-- end-user-doc -->
2780 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectImpl
2781 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObject()
2782 * @generated
2783 */
2784 EClass OBJECT = eINSTANCE.getObject();
2785
2786 /**
2787 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamedObjectImpl <em>Named Object</em>}' class.
2788 * <!-- begin-user-doc -->
2789 * <!-- end-user-doc -->
2790 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamedObjectImpl
2791 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamedObject()
2792 * @generated
2793 */
2794 EClass NAMED_OBJECT = eINSTANCE.getNamedObject();
2795
2796 /**
2797 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
2798 * <!-- begin-user-doc -->
2799 * <!-- end-user-doc -->
2800 * @generated
2801 */
2802 EAttribute NAMED_OBJECT__NAME = eINSTANCE.getNamedObject_Name();
2803
2804 /**
2805 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedObjectImpl <em>Unnamed Object</em>}' class.
2806 * <!-- begin-user-doc -->
2807 * <!-- end-user-doc -->
2808 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedObjectImpl
2809 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedObject()
2810 * @generated
2811 */
2812 EClass UNNAMED_OBJECT = eINSTANCE.getUnnamedObject();
2813
2814 /**
2815 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
2816 * <!-- begin-user-doc -->
2817 * <!-- end-user-doc -->
2818 * @generated
2819 */
2820 EAttribute UNNAMED_OBJECT__NAME = eINSTANCE.getUnnamedObject_Name();
2821
2822 /**
2823 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DataObjectImpl <em>Data Object</em>}' class.
2824 * <!-- begin-user-doc -->
2825 * <!-- end-user-doc -->
2826 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DataObjectImpl
2827 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDataObject()
2828 * @generated
2829 */
2830 EClass DATA_OBJECT = eINSTANCE.getDataObject();
2831
2832 /**
2833 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanObjectImpl <em>Boolean Object</em>}' class.
2834 * <!-- begin-user-doc -->
2835 * <!-- end-user-doc -->
2836 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanObjectImpl
2837 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanObject()
2838 * @generated
2839 */
2840 EClass BOOLEAN_OBJECT = eINSTANCE.getBooleanObject();
2841
2842 /**
2843 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
2844 * <!-- begin-user-doc -->
2845 * <!-- end-user-doc -->
2846 * @generated
2847 */
2848 EReference BOOLEAN_OBJECT__VALUE = eINSTANCE.getBooleanObject_Value();
2849
2850 /**
2851 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntObjectImpl <em>Int Object</em>}' class.
2852 * <!-- begin-user-doc -->
2853 * <!-- end-user-doc -->
2854 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntObjectImpl
2855 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntObject()
2856 * @generated
2857 */
2858 EClass INT_OBJECT = eINSTANCE.getIntObject();
2859
2860 /**
2861 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
2862 * <!-- begin-user-doc -->
2863 * <!-- end-user-doc -->
2864 * @generated
2865 */
2866 EAttribute INT_OBJECT__VALUE = eINSTANCE.getIntObject_Value();
2867
2868 /**
2869 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealObjectImpl <em>Real Object</em>}' class.
2870 * <!-- begin-user-doc -->
2871 * <!-- end-user-doc -->
2872 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealObjectImpl
2873 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealObject()
2874 * @generated
2875 */
2876 EClass REAL_OBJECT = eINSTANCE.getRealObject();
2877
2878 /**
2879 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
2880 * <!-- begin-user-doc -->
2881 * <!-- end-user-doc -->
2882 * @generated
2883 */
2884 EAttribute REAL_OBJECT__VALUE = eINSTANCE.getRealObject_Value();
2885
2886 /**
2887 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringObjectImpl <em>String Object</em>}' class.
2888 * <!-- begin-user-doc -->
2889 * <!-- end-user-doc -->
2890 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringObjectImpl
2891 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringObject()
2892 * @generated
2893 */
2894 EClass STRING_OBJECT = eINSTANCE.getStringObject();
2895
2896 /**
2897 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
2898 * <!-- begin-user-doc -->
2899 * <!-- end-user-doc -->
2900 * @generated
2901 */
2902 EAttribute STRING_OBJECT__VALUE = eINSTANCE.getStringObject_Value();
2903
2904 /**
2905 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl <em>Predicate</em>}' class.
2906 * <!-- begin-user-doc -->
2907 * <!-- end-user-doc -->
2908 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl
2909 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate()
2910 * @generated
2911 */
2912 EClass PREDICATE = eINSTANCE.getPredicate();
2913
2914 /**
2915 * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
2916 * <!-- begin-user-doc -->
2917 * <!-- end-user-doc -->
2918 * @generated
2919 */
2920 EReference PREDICATE__PARAMETERS = eINSTANCE.getPredicate_Parameters();
2921
2922 /**
2923 * The meta object literal for the '<em><b>Bodies</b></em>' containment reference list feature.
2924 * <!-- begin-user-doc -->
2925 * <!-- end-user-doc -->
2926 * @generated
2927 */
2928 EReference PREDICATE__BODIES = eINSTANCE.getPredicate_Bodies();
2929
2930 /**
2931 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateSymbolImpl <em>Predicate Symbol</em>}' class.
2932 * <!-- begin-user-doc -->
2933 * <!-- end-user-doc -->
2934 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateSymbolImpl
2935 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateSymbol()
2936 * @generated
2937 */
2938 EClass PREDICATE_SYMBOL = eINSTANCE.getPredicateSymbol();
2939
2940 /**
2941 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
2942 * <!-- begin-user-doc -->
2943 * <!-- end-user-doc -->
2944 * @generated
2945 */
2946 EReference PREDICATE_SYMBOL__SYMBOL = eINSTANCE.getPredicateSymbol_Symbol();
2947
2948 /**
2949 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorPredicateImpl <em>Error Predicate</em>}' class.
2950 * <!-- begin-user-doc -->
2951 * <!-- end-user-doc -->
2952 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorPredicateImpl
2953 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getErrorPredicate()
2954 * @generated
2955 */
2956 EClass ERROR_PREDICATE = eINSTANCE.getErrorPredicate();
2957
2958 /**
2959 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
2960 * <!-- begin-user-doc -->
2961 * <!-- end-user-doc -->
2962 * @generated
2963 */
2964 EAttribute ERROR_PREDICATE__NAME = eINSTANCE.getErrorPredicate_Name();
2965
2966 /**
2967 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ParameterImpl <em>Parameter</em>}' class.
2968 * <!-- begin-user-doc -->
2969 * <!-- end-user-doc -->
2970 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ParameterImpl
2971 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getParameter()
2972 * @generated
2973 */
2974 EClass PARAMETER = eINSTANCE.getParameter();
2975
2976 /**
2977 * The meta object literal for the '<em><b>Variable</b></em>' containment reference feature.
2978 * <!-- begin-user-doc -->
2979 * <!-- end-user-doc -->
2980 * @generated
2981 */
2982 EReference PARAMETER__VARIABLE = eINSTANCE.getParameter_Variable();
2983
2984 /**
2985 * The meta object literal for the '<em><b>Type</b></em>' containment reference feature.
2986 * <!-- begin-user-doc -->
2987 * <!-- end-user-doc -->
2988 * @generated
2989 */
2990 EReference PARAMETER__TYPE = eINSTANCE.getParameter_Type();
2991
2992 /**
2993 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PatternBodyImpl <em>Pattern Body</em>}' class.
2994 * <!-- begin-user-doc -->
2995 * <!-- end-user-doc -->
2996 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PatternBodyImpl
2997 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPatternBody()
2998 * @generated
2999 */
3000 EClass PATTERN_BODY = eINSTANCE.getPatternBody();
3001
3002 /**
3003 * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
3004 * <!-- begin-user-doc -->
3005 * <!-- end-user-doc -->
3006 * @generated
3007 */
3008 EReference PATTERN_BODY__CONSTRAINTS = eINSTANCE.getPatternBody_Constraints();
3009
3010 /**
3011 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PolarityImpl <em>Polarity</em>}' class.
3012 * <!-- begin-user-doc -->
3013 * <!-- end-user-doc -->
3014 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PolarityImpl
3015 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPolarity()
3016 * @generated
3017 */
3018 EClass POLARITY = eINSTANCE.getPolarity();
3019
3020 /**
3021 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl <em>Constraint</em>}' class.
3022 * <!-- begin-user-doc -->
3023 * <!-- end-user-doc -->
3024 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl
3025 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConstraint()
3026 * @generated
3027 */
3028 EClass CONSTRAINT = eINSTANCE.getConstraint();
3029
3030 /**
3031 * The meta object literal for the '<em><b>Polarity</b></em>' containment reference feature.
3032 * <!-- begin-user-doc -->
3033 * <!-- end-user-doc -->
3034 * @generated
3035 */
3036 EReference CONSTRAINT__POLARITY = eINSTANCE.getConstraint_Polarity();
3037
3038 /**
3039 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
3040 * <!-- begin-user-doc -->
3041 * <!-- end-user-doc -->
3042 * @generated
3043 */
3044 EReference CONSTRAINT__SYMBOL = eINSTANCE.getConstraint_Symbol();
3045
3046 /**
3047 * The meta object literal for the '<em><b>Params</b></em>' containment reference list feature.
3048 * <!-- begin-user-doc -->
3049 * <!-- end-user-doc -->
3050 * @generated
3051 */
3052 EReference CONSTRAINT__PARAMS = eINSTANCE.getConstraint_Params();
3053
3054 /**
3055 * The meta object literal for the '<em><b>Closure Type</b></em>' containment reference feature.
3056 * <!-- begin-user-doc -->
3057 * <!-- end-user-doc -->
3058 * @generated
3059 */
3060 EReference CONSTRAINT__CLOSURE_TYPE = eINSTANCE.getConstraint_ClosureType();
3061
3062 /**
3063 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClosureTypeImpl <em>Closure Type</em>}' class.
3064 * <!-- begin-user-doc -->
3065 * <!-- end-user-doc -->
3066 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClosureTypeImpl
3067 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClosureType()
3068 * @generated
3069 */
3070 EClass CLOSURE_TYPE = eINSTANCE.getClosureType();
3071
3072 /**
3073 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl <em>Literal</em>}' class.
3074 * <!-- begin-user-doc -->
3075 * <!-- end-user-doc -->
3076 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl
3077 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral()
3078 * @generated
3079 */
3080 EClass LITERAL = eINSTANCE.getLiteral();
3081
3082 /**
3083 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl <em>Variable</em>}' class.
3084 * <!-- begin-user-doc -->
3085 * <!-- end-user-doc -->
3086 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl
3087 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable()
3088 * @generated
3089 */
3090 EClass VARIABLE = eINSTANCE.getVariable();
3091
3092 /**
3093 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
3094 * <!-- begin-user-doc -->
3095 * <!-- end-user-doc -->
3096 * @generated
3097 */
3098 EAttribute VARIABLE__NAME = eINSTANCE.getVariable_Name();
3099
3100 /**
3101 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AllInstancesImpl <em>All Instances</em>}' class.
3102 * <!-- begin-user-doc -->
3103 * <!-- end-user-doc -->
3104 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AllInstancesImpl
3105 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAllInstances()
3106 * @generated
3107 */
3108 EClass ALL_INSTANCES = eINSTANCE.getAllInstances();
3109
3110 /**
3111 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
3112 * <!-- begin-user-doc -->
3113 * <!-- end-user-doc -->
3114 * @generated
3115 */
3116 EReference ALL_INSTANCES__SYMBOL = eINSTANCE.getAllInstances_Symbol();
3117
3118 /**
3119 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AllObjectsImpl <em>All Objects</em>}' class.
3120 * <!-- begin-user-doc -->
3121 * <!-- end-user-doc -->
3122 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AllObjectsImpl
3123 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAllObjects()
3124 * @generated
3125 */
3126 EClass ALL_OBJECTS = eINSTANCE.getAllObjects();
3127
3128 /**
3129 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultInterpretationImpl <em>Default Interpretation</em>}' class.
3130 * <!-- begin-user-doc -->
3131 * <!-- end-user-doc -->
3132 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultInterpretationImpl
3133 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultInterpretation()
3134 * @generated
3135 */
3136 EClass DEFAULT_INTERPRETATION = eINSTANCE.getDefaultInterpretation();
3137
3138 /**
3139 * The meta object literal for the '<em><b>Interpretation</b></em>' containment reference feature.
3140 * <!-- begin-user-doc -->
3141 * <!-- end-user-doc -->
3142 * @generated
3143 */
3144 EReference DEFAULT_INTERPRETATION__INTERPRETATION = eINSTANCE.getDefaultInterpretation_Interpretation();
3145
3146 /**
3147 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CDInterpretationImpl <em>CD Interpretation</em>}' class.
3148 * <!-- begin-user-doc -->
3149 * <!-- end-user-doc -->
3150 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CDInterpretationImpl
3151 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCDInterpretation()
3152 * @generated
3153 */
3154 EClass CD_INTERPRETATION = eINSTANCE.getCDInterpretation();
3155
3156 /**
3157 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl <em>Class Interpretation</em>}' class.
3158 * <!-- begin-user-doc -->
3159 * <!-- end-user-doc -->
3160 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl
3161 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassInterpretation()
3162 * @generated
3163 */
3164 EClass CLASS_INTERPRETATION = eINSTANCE.getClassInterpretation();
3165
3166 /**
3167 * The meta object literal for the '<em><b>Abstract</b></em>' attribute feature.
3168 * <!-- begin-user-doc -->
3169 * <!-- end-user-doc -->
3170 * @generated
3171 */
3172 EAttribute CLASS_INTERPRETATION__ABSTRACT = eINSTANCE.getClassInterpretation_Abstract();
3173
3174 /**
3175 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
3176 * <!-- begin-user-doc -->
3177 * <!-- end-user-doc -->
3178 * @generated
3179 */
3180 EReference CLASS_INTERPRETATION__SYMBOL = eINSTANCE.getClassInterpretation_Symbol();
3181
3182 /**
3183 * The meta object literal for the '<em><b>Supertypes</b></em>' containment reference list feature.
3184 * <!-- begin-user-doc -->
3185 * <!-- end-user-doc -->
3186 * @generated
3187 */
3188 EReference CLASS_INTERPRETATION__SUPERTYPES = eINSTANCE.getClassInterpretation_Supertypes();
3189
3190 /**
3191 * The meta object literal for the '<em><b>Fielt</b></em>' containment reference list feature.
3192 * <!-- begin-user-doc -->
3193 * <!-- end-user-doc -->
3194 * @generated
3195 */
3196 EReference CLASS_INTERPRETATION__FIELT = eINSTANCE.getClassInterpretation_Fielt();
3197
3198 /**
3199 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumInterpretationImpl <em>Enum Interpretation</em>}' class.
3200 * <!-- begin-user-doc -->
3201 * <!-- end-user-doc -->
3202 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumInterpretationImpl
3203 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumInterpretation()
3204 * @generated
3205 */
3206 EClass ENUM_INTERPRETATION = eINSTANCE.getEnumInterpretation();
3207
3208 /**
3209 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
3210 * <!-- begin-user-doc -->
3211 * <!-- end-user-doc -->
3212 * @generated
3213 */
3214 EReference ENUM_INTERPRETATION__SYMBOL = eINSTANCE.getEnumInterpretation_Symbol();
3215
3216 /**
3217 * The meta object literal for the '<em><b>Objects</b></em>' containment reference list feature.
3218 * <!-- begin-user-doc -->
3219 * <!-- end-user-doc -->
3220 * @generated
3221 */
3222 EReference ENUM_INTERPRETATION__OBJECTS = eINSTANCE.getEnumInterpretation_Objects();
3223
3224 /**
3225 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl <em>Field Relation Interpretation</em>}' class.
3226 * <!-- begin-user-doc -->
3227 * <!-- end-user-doc -->
3228 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl
3229 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFieldRelationInterpretation()
3230 * @generated
3231 */
3232 EClass FIELD_RELATION_INTERPRETATION = eINSTANCE.getFieldRelationInterpretation();
3233
3234 /**
3235 * The meta object literal for the '<em><b>Containment</b></em>' attribute feature.
3236 * <!-- begin-user-doc -->
3237 * <!-- end-user-doc -->
3238 * @generated
3239 */
3240 EAttribute FIELD_RELATION_INTERPRETATION__CONTAINMENT = eINSTANCE.getFieldRelationInterpretation_Containment();
3241
3242 /**
3243 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
3244 * <!-- begin-user-doc -->
3245 * <!-- end-user-doc -->
3246 * @generated
3247 */
3248 EReference FIELD_RELATION_INTERPRETATION__SYMBOL = eINSTANCE.getFieldRelationInterpretation_Symbol();
3249
3250 /**
3251 * The meta object literal for the '<em><b>Multiplicity</b></em>' containment reference feature.
3252 * <!-- begin-user-doc -->
3253 * <!-- end-user-doc -->
3254 * @generated
3255 */
3256 EReference FIELD_RELATION_INTERPRETATION__MULTIPLICITY = eINSTANCE.getFieldRelationInterpretation_Multiplicity();
3257
3258 /**
3259 * The meta object literal for the '<em><b>Target</b></em>' containment reference feature.
3260 * <!-- begin-user-doc -->
3261 * <!-- end-user-doc -->
3262 * @generated
3263 */
3264 EReference FIELD_RELATION_INTERPRETATION__TARGET = eINSTANCE.getFieldRelationInterpretation_Target();
3265
3266 /**
3267 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl <em>Global Relation Interpretation</em>}' class.
3268 * <!-- begin-user-doc -->
3269 * <!-- end-user-doc -->
3270 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl
3271 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getGlobalRelationInterpretation()
3272 * @generated
3273 */
3274 EClass GLOBAL_RELATION_INTERPRETATION = eINSTANCE.getGlobalRelationInterpretation();
3275
3276 /**
3277 * The meta object literal for the '<em><b>Containment</b></em>' attribute feature.
3278 * <!-- begin-user-doc -->
3279 * <!-- end-user-doc -->
3280 * @generated
3281 */
3282 EAttribute GLOBAL_RELATION_INTERPRETATION__CONTAINMENT = eINSTANCE.getGlobalRelationInterpretation_Containment();
3283
3284 /**
3285 * The meta object literal for the '<em><b>Symbol</b></em>' containment reference feature.
3286 * <!-- begin-user-doc -->
3287 * <!-- end-user-doc -->
3288 * @generated
3289 */
3290 EReference GLOBAL_RELATION_INTERPRETATION__SYMBOL = eINSTANCE.getGlobalRelationInterpretation_Symbol();
3291
3292 /**
3293 * The meta object literal for the '<em><b>Source Multiplicity</b></em>' containment reference feature.
3294 * <!-- begin-user-doc -->
3295 * <!-- end-user-doc -->
3296 * @generated
3297 */
3298 EReference GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY = eINSTANCE.getGlobalRelationInterpretation_SourceMultiplicity();
3299
3300 /**
3301 * The meta object literal for the '<em><b>Source</b></em>' containment reference feature.
3302 * <!-- begin-user-doc -->
3303 * <!-- end-user-doc -->
3304 * @generated
3305 */
3306 EReference GLOBAL_RELATION_INTERPRETATION__SOURCE = eINSTANCE.getGlobalRelationInterpretation_Source();
3307
3308 /**
3309 * The meta object literal for the '<em><b>Target Multiplicity</b></em>' containment reference feature.
3310 * <!-- begin-user-doc -->
3311 * <!-- end-user-doc -->
3312 * @generated
3313 */
3314 EReference GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY = eINSTANCE.getGlobalRelationInterpretation_TargetMultiplicity();
3315
3316 /**
3317 * The meta object literal for the '<em><b>Target</b></em>' containment reference feature.
3318 * <!-- begin-user-doc -->
3319 * <!-- end-user-doc -->
3320 * @generated
3321 */
3322 EReference GLOBAL_RELATION_INTERPRETATION__TARGET = eINSTANCE.getGlobalRelationInterpretation_Target();
3323
3324 /**
3325 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl <em>Multiplicity Definition</em>}' class.
3326 * <!-- begin-user-doc -->
3327 * <!-- end-user-doc -->
3328 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl
3329 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicityDefinition()
3330 * @generated
3331 */
3332 EClass MULTIPLICITY_DEFINITION = eINSTANCE.getMultiplicityDefinition();
3333
3334 /**
3335 * The meta object literal for the '<em><b>Lower</b></em>' attribute feature.
3336 * <!-- begin-user-doc -->
3337 * <!-- end-user-doc -->
3338 * @generated
3339 */
3340 EAttribute MULTIPLICITY_DEFINITION__LOWER = eINSTANCE.getMultiplicityDefinition_Lower();
3341
3342 /**
3343 * The meta object literal for the '<em><b>Upper</b></em>' attribute feature.
3344 * <!-- begin-user-doc -->
3345 * <!-- end-user-doc -->
3346 * @generated
3347 */
3348 EAttribute MULTIPLICITY_DEFINITION__UPPER = eINSTANCE.getMultiplicityDefinition_Upper();
3349
3350 /**
3351 * The meta object literal for the '<em><b>Unlimited Upper</b></em>' attribute feature.
3352 * <!-- begin-user-doc -->
3353 * <!-- end-user-doc -->
3354 * @generated
3355 */
3356 EAttribute MULTIPLICITY_DEFINITION__UNLIMITED_UPPER = eINSTANCE.getMultiplicityDefinition_UnlimitedUpper();
3357
3358 /**
3359 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanTrueImpl <em>Boolean True</em>}' class.
3360 * <!-- begin-user-doc -->
3361 * <!-- end-user-doc -->
3362 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanTrueImpl
3363 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanTrue()
3364 * @generated
3365 */
3366 EClass BOOLEAN_TRUE = eINSTANCE.getBooleanTrue();
3367
3368 /**
3369 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanFalseImpl <em>Boolean False</em>}' class.
3370 * <!-- begin-user-doc -->
3371 * <!-- end-user-doc -->
3372 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanFalseImpl
3373 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBooleanFalse()
3374 * @generated
3375 */
3376 EClass BOOLEAN_FALSE = eINSTANCE.getBooleanFalse();
3377
3378 /**
3379 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TrueImpl <em>True</em>}' class.
3380 * <!-- begin-user-doc -->
3381 * <!-- end-user-doc -->
3382 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TrueImpl
3383 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTrue()
3384 * @generated
3385 */
3386 EClass TRUE = eINSTANCE.getTrue();
3387
3388 /**
3389 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FalseImpl <em>False</em>}' class.
3390 * <!-- begin-user-doc -->
3391 * <!-- end-user-doc -->
3392 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FalseImpl
3393 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFalse()
3394 * @generated
3395 */
3396 EClass FALSE = eINSTANCE.getFalse();
3397
3398 /**
3399 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnknownImpl <em>Unknown</em>}' class.
3400 * <!-- begin-user-doc -->
3401 * <!-- end-user-doc -->
3402 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnknownImpl
3403 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnknown()
3404 * @generated
3405 */
3406 EClass UNKNOWN = eINSTANCE.getUnknown();
3407
3408 /**
3409 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorImpl <em>Error</em>}' class.
3410 * <!-- begin-user-doc -->
3411 * <!-- end-user-doc -->
3412 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorImpl
3413 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getError()
3414 * @generated
3415 */
3416 EClass ERROR = eINSTANCE.getError();
3417
3418 /**
3419 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PositiveImpl <em>Positive</em>}' class.
3420 * <!-- begin-user-doc -->
3421 * <!-- end-user-doc -->
3422 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PositiveImpl
3423 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPositive()
3424 * @generated
3425 */
3426 EClass POSITIVE = eINSTANCE.getPositive();
3427
3428 /**
3429 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NegativeImpl <em>Negative</em>}' class.
3430 * <!-- begin-user-doc -->
3431 * <!-- end-user-doc -->
3432 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NegativeImpl
3433 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNegative()
3434 * @generated
3435 */
3436 EClass NEGATIVE = eINSTANCE.getNegative();
3437
3438 /**
3439 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReflexiveClosureImpl <em>Reflexive Closure</em>}' class.
3440 * <!-- begin-user-doc -->
3441 * <!-- end-user-doc -->
3442 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReflexiveClosureImpl
3443 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReflexiveClosure()
3444 * @generated
3445 */
3446 EClass REFLEXIVE_CLOSURE = eINSTANCE.getReflexiveClosure();
3447
3448 /**
3449 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IrreflexiveClosureImpl <em>Irreflexive Closure</em>}' class.
3450 * <!-- begin-user-doc -->
3451 * <!-- end-user-doc -->
3452 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IrreflexiveClosureImpl
3453 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIrreflexiveClosure()
3454 * @generated
3455 */
3456 EClass IRREFLEXIVE_CLOSURE = eINSTANCE.getIrreflexiveClosure();
3457
3458 }
3459
3460} //SolverLanguagePackage
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java
new file mode 100644
index 00000000..f3da8f9c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Statement</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStatement()
15 * @model
16 * @generated
17 */
18public interface Statement extends EObject
19{
20} // Statement
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringObject.java
new file mode 100644
index 00000000..d1d3ee6d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringObject.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>String Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.StringObject#getValue <em>Value</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringObject()
20 * @model
21 * @generated
22 */
23public interface StringObject extends DataObject
24{
25 /**
26 * Returns the value of the '<em><b>Value</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Value</em>' attribute.
30 * @see #setValue(String)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringObject_Value()
32 * @model
33 * @generated
34 */
35 String getValue();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.StringObject#getValue <em>Value</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Value</em>' attribute.
42 * @see #getValue()
43 * @generated
44 */
45 void setValue(String value);
46
47} // StringObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringSymbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringSymbol.java
new file mode 100644
index 00000000..f3d6d8ee
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringSymbol.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>String Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringSymbol()
14 * @model
15 * @generated
16 */
17public interface StringSymbol extends DataSymbol
18{
19} // StringSymbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java
new file mode 100644
index 00000000..dcf2a01a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Symbol</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSymbol()
15 * @model
16 * @generated
17 */
18public interface Symbol extends EObject
19{
20} // Symbol
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/True.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/True.java
new file mode 100644
index 00000000..d125d86a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/True.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>True</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTrue()
14 * @model
15 * @generated
16 */
17public interface True extends TruthValue
18{
19} // True
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TruthValue.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TruthValue.java
new file mode 100644
index 00000000..48e2b8e8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TruthValue.java
@@ -0,0 +1,20 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6import org.eclipse.emf.ecore.EObject;
7
8/**
9 * <!-- begin-user-doc -->
10 * A representation of the model object '<em><b>Truth Value</b></em>'.
11 * <!-- end-user-doc -->
12 *
13 *
14 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTruthValue()
15 * @model
16 * @generated
17 */
18public interface TruthValue extends EObject
19{
20} // TruthValue
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Unknown.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Unknown.java
new file mode 100644
index 00000000..496f433a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Unknown.java
@@ -0,0 +1,19 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Unknown</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnknown()
14 * @model
15 * @generated
16 */
17public interface Unknown extends TruthValue
18{
19} // Unknown
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedObject.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedObject.java
new file mode 100644
index 00000000..152ee782
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedObject.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Unnamed Object</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedObject()
20 * @model
21 * @generated
22 */
23public interface UnnamedObject extends org.eclipse.viatra.solver.language.solverLanguage.Object
24{
25 /**
26 * Returns the value of the '<em><b>Name</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Name</em>' attribute.
30 * @see #setName(String)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedObject_Name()
32 * @model
33 * @generated
34 */
35 String getName();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject#getName <em>Name</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Name</em>' attribute.
42 * @see #getName()
43 * @generated
44 */
45 void setName(String value);
46
47} // UnnamedObject
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java
new file mode 100644
index 00000000..2f915fa7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java
@@ -0,0 +1,47 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage;
5
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Variable</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable()
20 * @model
21 * @generated
22 */
23public interface Variable extends Literal
24{
25 /**
26 * Returns the value of the '<em><b>Name</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Name</em>' attribute.
30 * @see #setName(String)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable_Name()
32 * @model
33 * @generated
34 */
35 String getName();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getName <em>Name</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Name</em>' attribute.
42 * @see #getName()
43 * @generated
44 */
45 void setName(String value);
46
47} // Variable
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllInstancesImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllInstancesImpl.java
new file mode 100644
index 00000000..5da3bf30
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllInstancesImpl.java
@@ -0,0 +1,196 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.AllInstances;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>All Instances</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AllInstancesImpl#getSymbol <em>Symbol</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class AllInstancesImpl extends ComplexObjectImpl implements AllInstances
32{
33 /**
34 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getSymbol()
38 * @generated
39 * @ordered
40 */
41 protected Symbol symbol;
42
43 /**
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 protected AllInstancesImpl()
49 {
50 super();
51 }
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 @Override
59 protected EClass eStaticClass()
60 {
61 return SolverLanguagePackage.Literals.ALL_INSTANCES;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 @Override
70 public Symbol getSymbol()
71 {
72 return symbol;
73 }
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 public NotificationChain basicSetSymbol(Symbol newSymbol, NotificationChain msgs)
81 {
82 Symbol oldSymbol = symbol;
83 symbol = newSymbol;
84 if (eNotificationRequired())
85 {
86 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ALL_INSTANCES__SYMBOL, oldSymbol, newSymbol);
87 if (msgs == null) msgs = notification; else msgs.add(notification);
88 }
89 return msgs;
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public void setSymbol(Symbol newSymbol)
99 {
100 if (newSymbol != symbol)
101 {
102 NotificationChain msgs = null;
103 if (symbol != null)
104 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ALL_INSTANCES__SYMBOL, null, msgs);
105 if (newSymbol != null)
106 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ALL_INSTANCES__SYMBOL, null, msgs);
107 msgs = basicSetSymbol(newSymbol, msgs);
108 if (msgs != null) msgs.dispatch();
109 }
110 else if (eNotificationRequired())
111 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ALL_INSTANCES__SYMBOL, newSymbol, newSymbol));
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
121 {
122 switch (featureID)
123 {
124 case SolverLanguagePackage.ALL_INSTANCES__SYMBOL:
125 return basicSetSymbol(null, msgs);
126 }
127 return super.eInverseRemove(otherEnd, featureID, msgs);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public Object eGet(int featureID, boolean resolve, boolean coreType)
137 {
138 switch (featureID)
139 {
140 case SolverLanguagePackage.ALL_INSTANCES__SYMBOL:
141 return getSymbol();
142 }
143 return super.eGet(featureID, resolve, coreType);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public void eSet(int featureID, Object newValue)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.ALL_INSTANCES__SYMBOL:
157 setSymbol((Symbol)newValue);
158 return;
159 }
160 super.eSet(featureID, newValue);
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 @Override
169 public void eUnset(int featureID)
170 {
171 switch (featureID)
172 {
173 case SolverLanguagePackage.ALL_INSTANCES__SYMBOL:
174 setSymbol((Symbol)null);
175 return;
176 }
177 super.eUnset(featureID);
178 }
179
180 /**
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @generated
184 */
185 @Override
186 public boolean eIsSet(int featureID)
187 {
188 switch (featureID)
189 {
190 case SolverLanguagePackage.ALL_INSTANCES__SYMBOL:
191 return symbol != null;
192 }
193 return super.eIsSet(featureID);
194 }
195
196} //AllInstancesImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllObjectsImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllObjectsImpl.java
new file mode 100644
index 00000000..b1e9c3d0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AllObjectsImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.AllObjects;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>All Objects</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class AllObjectsImpl extends ComplexObjectImpl implements AllObjects
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected AllObjectsImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.ALL_OBJECTS;
39 }
40
41} //AllObjectsImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BasicInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BasicInterpretationImpl.java
new file mode 100644
index 00000000..aef515f6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BasicInterpretationImpl.java
@@ -0,0 +1,318 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.Notification;
9import org.eclipse.emf.common.notify.NotificationChain;
10
11import org.eclipse.emf.common.util.EList;
12
13import org.eclipse.emf.ecore.EClass;
14import org.eclipse.emf.ecore.InternalEObject;
15
16import org.eclipse.emf.ecore.impl.ENotificationImpl;
17
18import org.eclipse.emf.ecore.util.EObjectContainmentEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
22import org.eclipse.viatra.solver.language.solverLanguage.ComplexObject;
23import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
24import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
25import org.eclipse.viatra.solver.language.solverLanguage.TruthValue;
26
27/**
28 * <!-- begin-user-doc -->
29 * An implementation of the model object '<em><b>Basic Interpretation</b></em>'.
30 * <!-- end-user-doc -->
31 * <p>
32 * The following features are implemented:
33 * </p>
34 * <ul>
35 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl#getSymbol <em>Symbol</em>}</li>
36 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl#getObjects <em>Objects</em>}</li>
37 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BasicInterpretationImpl#getValue <em>Value</em>}</li>
38 * </ul>
39 *
40 * @generated
41 */
42public class BasicInterpretationImpl extends InterpretationImpl implements BasicInterpretation
43{
44 /**
45 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #getSymbol()
49 * @generated
50 * @ordered
51 */
52 protected Symbol symbol;
53
54 /**
55 * The cached value of the '{@link #getObjects() <em>Objects</em>}' containment reference list.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #getObjects()
59 * @generated
60 * @ordered
61 */
62 protected EList<ComplexObject> objects;
63
64 /**
65 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #getValue()
69 * @generated
70 * @ordered
71 */
72 protected TruthValue value;
73
74 /**
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @generated
78 */
79 protected BasicInterpretationImpl()
80 {
81 super();
82 }
83
84 /**
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @generated
88 */
89 @Override
90 protected EClass eStaticClass()
91 {
92 return SolverLanguagePackage.Literals.BASIC_INTERPRETATION;
93 }
94
95 /**
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @generated
99 */
100 @Override
101 public Symbol getSymbol()
102 {
103 return symbol;
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 public NotificationChain basicSetSymbol(Symbol newSymbol, NotificationChain msgs)
112 {
113 Symbol oldSymbol = symbol;
114 symbol = newSymbol;
115 if (eNotificationRequired())
116 {
117 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL, oldSymbol, newSymbol);
118 if (msgs == null) msgs = notification; else msgs.add(notification);
119 }
120 return msgs;
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public void setSymbol(Symbol newSymbol)
130 {
131 if (newSymbol != symbol)
132 {
133 NotificationChain msgs = null;
134 if (symbol != null)
135 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL, null, msgs);
136 if (newSymbol != null)
137 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL, null, msgs);
138 msgs = basicSetSymbol(newSymbol, msgs);
139 if (msgs != null) msgs.dispatch();
140 }
141 else if (eNotificationRequired())
142 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL, newSymbol, newSymbol));
143 }
144
145 /**
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 */
150 @Override
151 public EList<ComplexObject> getObjects()
152 {
153 if (objects == null)
154 {
155 objects = new EObjectContainmentEList<ComplexObject>(ComplexObject.class, this, SolverLanguagePackage.BASIC_INTERPRETATION__OBJECTS);
156 }
157 return objects;
158 }
159
160 /**
161 * <!-- begin-user-doc -->
162 * <!-- end-user-doc -->
163 * @generated
164 */
165 @Override
166 public TruthValue getValue()
167 {
168 return value;
169 }
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 public NotificationChain basicSetValue(TruthValue newValue, NotificationChain msgs)
177 {
178 TruthValue oldValue = value;
179 value = newValue;
180 if (eNotificationRequired())
181 {
182 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BASIC_INTERPRETATION__VALUE, oldValue, newValue);
183 if (msgs == null) msgs = notification; else msgs.add(notification);
184 }
185 return msgs;
186 }
187
188 /**
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @generated
192 */
193 @Override
194 public void setValue(TruthValue newValue)
195 {
196 if (newValue != value)
197 {
198 NotificationChain msgs = null;
199 if (value != null)
200 msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BASIC_INTERPRETATION__VALUE, null, msgs);
201 if (newValue != null)
202 msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BASIC_INTERPRETATION__VALUE, null, msgs);
203 msgs = basicSetValue(newValue, msgs);
204 if (msgs != null) msgs.dispatch();
205 }
206 else if (eNotificationRequired())
207 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BASIC_INTERPRETATION__VALUE, newValue, newValue));
208 }
209
210 /**
211 * <!-- begin-user-doc -->
212 * <!-- end-user-doc -->
213 * @generated
214 */
215 @Override
216 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
217 {
218 switch (featureID)
219 {
220 case SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL:
221 return basicSetSymbol(null, msgs);
222 case SolverLanguagePackage.BASIC_INTERPRETATION__OBJECTS:
223 return ((InternalEList<?>)getObjects()).basicRemove(otherEnd, msgs);
224 case SolverLanguagePackage.BASIC_INTERPRETATION__VALUE:
225 return basicSetValue(null, msgs);
226 }
227 return super.eInverseRemove(otherEnd, featureID, msgs);
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 @Override
236 public Object eGet(int featureID, boolean resolve, boolean coreType)
237 {
238 switch (featureID)
239 {
240 case SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL:
241 return getSymbol();
242 case SolverLanguagePackage.BASIC_INTERPRETATION__OBJECTS:
243 return getObjects();
244 case SolverLanguagePackage.BASIC_INTERPRETATION__VALUE:
245 return getValue();
246 }
247 return super.eGet(featureID, resolve, coreType);
248 }
249
250 /**
251 * <!-- begin-user-doc -->
252 * <!-- end-user-doc -->
253 * @generated
254 */
255 @SuppressWarnings("unchecked")
256 @Override
257 public void eSet(int featureID, Object newValue)
258 {
259 switch (featureID)
260 {
261 case SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL:
262 setSymbol((Symbol)newValue);
263 return;
264 case SolverLanguagePackage.BASIC_INTERPRETATION__OBJECTS:
265 getObjects().clear();
266 getObjects().addAll((Collection<? extends ComplexObject>)newValue);
267 return;
268 case SolverLanguagePackage.BASIC_INTERPRETATION__VALUE:
269 setValue((TruthValue)newValue);
270 return;
271 }
272 super.eSet(featureID, newValue);
273 }
274
275 /**
276 * <!-- begin-user-doc -->
277 * <!-- end-user-doc -->
278 * @generated
279 */
280 @Override
281 public void eUnset(int featureID)
282 {
283 switch (featureID)
284 {
285 case SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL:
286 setSymbol((Symbol)null);
287 return;
288 case SolverLanguagePackage.BASIC_INTERPRETATION__OBJECTS:
289 getObjects().clear();
290 return;
291 case SolverLanguagePackage.BASIC_INTERPRETATION__VALUE:
292 setValue((TruthValue)null);
293 return;
294 }
295 super.eUnset(featureID);
296 }
297
298 /**
299 * <!-- begin-user-doc -->
300 * <!-- end-user-doc -->
301 * @generated
302 */
303 @Override
304 public boolean eIsSet(int featureID)
305 {
306 switch (featureID)
307 {
308 case SolverLanguagePackage.BASIC_INTERPRETATION__SYMBOL:
309 return symbol != null;
310 case SolverLanguagePackage.BASIC_INTERPRETATION__OBJECTS:
311 return objects != null && !objects.isEmpty();
312 case SolverLanguagePackage.BASIC_INTERPRETATION__VALUE:
313 return value != null;
314 }
315 return super.eIsSet(featureID);
316 }
317
318} //BasicInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanFalseImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanFalseImpl.java
new file mode 100644
index 00000000..ae78f540
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanFalseImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Boolean False</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class BooleanFalseImpl extends BooleanValueImpl implements BooleanFalse
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected BooleanFalseImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.BOOLEAN_FALSE;
39 }
40
41} //BooleanFalseImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanObjectImpl.java
new file mode 100644
index 00000000..cb1a3ff4
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanObjectImpl.java
@@ -0,0 +1,196 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.BooleanObject;
15import org.eclipse.viatra.solver.language.solverLanguage.BooleanValue;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Boolean Object</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BooleanObjectImpl#getValue <em>Value</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class BooleanObjectImpl extends DataObjectImpl implements BooleanObject
32{
33 /**
34 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getValue()
38 * @generated
39 * @ordered
40 */
41 protected BooleanValue value;
42
43 /**
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 protected BooleanObjectImpl()
49 {
50 super();
51 }
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 @Override
59 protected EClass eStaticClass()
60 {
61 return SolverLanguagePackage.Literals.BOOLEAN_OBJECT;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 @Override
70 public BooleanValue getValue()
71 {
72 return value;
73 }
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 public NotificationChain basicSetValue(BooleanValue newValue, NotificationChain msgs)
81 {
82 BooleanValue oldValue = value;
83 value = newValue;
84 if (eNotificationRequired())
85 {
86 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOOLEAN_OBJECT__VALUE, oldValue, newValue);
87 if (msgs == null) msgs = notification; else msgs.add(notification);
88 }
89 return msgs;
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public void setValue(BooleanValue newValue)
99 {
100 if (newValue != value)
101 {
102 NotificationChain msgs = null;
103 if (value != null)
104 msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BOOLEAN_OBJECT__VALUE, null, msgs);
105 if (newValue != null)
106 msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BOOLEAN_OBJECT__VALUE, null, msgs);
107 msgs = basicSetValue(newValue, msgs);
108 if (msgs != null) msgs.dispatch();
109 }
110 else if (eNotificationRequired())
111 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOOLEAN_OBJECT__VALUE, newValue, newValue));
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
121 {
122 switch (featureID)
123 {
124 case SolverLanguagePackage.BOOLEAN_OBJECT__VALUE:
125 return basicSetValue(null, msgs);
126 }
127 return super.eInverseRemove(otherEnd, featureID, msgs);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public Object eGet(int featureID, boolean resolve, boolean coreType)
137 {
138 switch (featureID)
139 {
140 case SolverLanguagePackage.BOOLEAN_OBJECT__VALUE:
141 return getValue();
142 }
143 return super.eGet(featureID, resolve, coreType);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public void eSet(int featureID, Object newValue)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.BOOLEAN_OBJECT__VALUE:
157 setValue((BooleanValue)newValue);
158 return;
159 }
160 super.eSet(featureID, newValue);
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 @Override
169 public void eUnset(int featureID)
170 {
171 switch (featureID)
172 {
173 case SolverLanguagePackage.BOOLEAN_OBJECT__VALUE:
174 setValue((BooleanValue)null);
175 return;
176 }
177 super.eUnset(featureID);
178 }
179
180 /**
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @generated
184 */
185 @Override
186 public boolean eIsSet(int featureID)
187 {
188 switch (featureID)
189 {
190 case SolverLanguagePackage.BOOLEAN_OBJECT__VALUE:
191 return value != null;
192 }
193 return super.eIsSet(featureID);
194 }
195
196} //BooleanObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanSymbolImpl.java
new file mode 100644
index 00000000..49258091
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Boolean Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class BooleanSymbolImpl extends DataSymbolImpl implements BooleanSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected BooleanSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.BOOLEAN_SYMBOL;
39 }
40
41} //BooleanSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanTrueImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanTrueImpl.java
new file mode 100644
index 00000000..4d110ee9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanTrueImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Boolean True</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class BooleanTrueImpl extends BooleanValueImpl implements BooleanTrue
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected BooleanTrueImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.BOOLEAN_TRUE;
39 }
40
41} //BooleanTrueImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanValueImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanValueImpl.java
new file mode 100644
index 00000000..b27ab959
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BooleanValueImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.BooleanValue;
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Boolean Value</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class BooleanValueImpl extends MinimalEObjectImpl.Container implements BooleanValue
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected BooleanValueImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.BOOLEAN_VALUE;
41 }
42
43} //BooleanValueImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CDInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CDInterpretationImpl.java
new file mode 100644
index 00000000..b23bbba5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CDInterpretationImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>CD Interpretation</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class CDInterpretationImpl extends InterpretationImpl implements CDInterpretation
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected CDInterpretationImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.CD_INTERPRETATION;
39 }
40
41} //CDInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassInterpretationImpl.java
new file mode 100644
index 00000000..effc5970
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassInterpretationImpl.java
@@ -0,0 +1,356 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.Notification;
9import org.eclipse.emf.common.notify.NotificationChain;
10
11import org.eclipse.emf.common.util.EList;
12
13import org.eclipse.emf.ecore.EClass;
14import org.eclipse.emf.ecore.InternalEObject;
15
16import org.eclipse.emf.ecore.impl.ENotificationImpl;
17
18import org.eclipse.emf.ecore.util.EObjectContainmentEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21import org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation;
22import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
23import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
24import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
25
26/**
27 * <!-- begin-user-doc -->
28 * An implementation of the model object '<em><b>Class Interpretation</b></em>'.
29 * <!-- end-user-doc -->
30 * <p>
31 * The following features are implemented:
32 * </p>
33 * <ul>
34 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl#isAbstract <em>Abstract</em>}</li>
35 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl#getSymbol <em>Symbol</em>}</li>
36 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl#getSupertypes <em>Supertypes</em>}</li>
37 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassInterpretationImpl#getFielt <em>Fielt</em>}</li>
38 * </ul>
39 *
40 * @generated
41 */
42public class ClassInterpretationImpl extends CDInterpretationImpl implements ClassInterpretation
43{
44 /**
45 * The default value of the '{@link #isAbstract() <em>Abstract</em>}' attribute.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #isAbstract()
49 * @generated
50 * @ordered
51 */
52 protected static final boolean ABSTRACT_EDEFAULT = false;
53
54 /**
55 * The cached value of the '{@link #isAbstract() <em>Abstract</em>}' attribute.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #isAbstract()
59 * @generated
60 * @ordered
61 */
62 protected boolean abstract_ = ABSTRACT_EDEFAULT;
63
64 /**
65 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #getSymbol()
69 * @generated
70 * @ordered
71 */
72 protected ModelSymbol symbol;
73
74 /**
75 * The cached value of the '{@link #getSupertypes() <em>Supertypes</em>}' containment reference list.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @see #getSupertypes()
79 * @generated
80 * @ordered
81 */
82 protected EList<ModelSymbol> supertypes;
83
84 /**
85 * The cached value of the '{@link #getFielt() <em>Fielt</em>}' containment reference list.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @see #getFielt()
89 * @generated
90 * @ordered
91 */
92 protected EList<FieldRelationInterpretation> fielt;
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 protected ClassInterpretationImpl()
100 {
101 super();
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @Override
110 protected EClass eStaticClass()
111 {
112 return SolverLanguagePackage.Literals.CLASS_INTERPRETATION;
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 @Override
121 public boolean isAbstract()
122 {
123 return abstract_;
124 }
125
126 /**
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @generated
130 */
131 @Override
132 public void setAbstract(boolean newAbstract)
133 {
134 boolean oldAbstract = abstract_;
135 abstract_ = newAbstract;
136 if (eNotificationRequired())
137 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_INTERPRETATION__ABSTRACT, oldAbstract, abstract_));
138 }
139
140 /**
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @generated
144 */
145 @Override
146 public ModelSymbol getSymbol()
147 {
148 return symbol;
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 public NotificationChain basicSetSymbol(ModelSymbol newSymbol, NotificationChain msgs)
157 {
158 ModelSymbol oldSymbol = symbol;
159 symbol = newSymbol;
160 if (eNotificationRequired())
161 {
162 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL, oldSymbol, newSymbol);
163 if (msgs == null) msgs = notification; else msgs.add(notification);
164 }
165 return msgs;
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public void setSymbol(ModelSymbol newSymbol)
175 {
176 if (newSymbol != symbol)
177 {
178 NotificationChain msgs = null;
179 if (symbol != null)
180 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL, null, msgs);
181 if (newSymbol != null)
182 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL, null, msgs);
183 msgs = basicSetSymbol(newSymbol, msgs);
184 if (msgs != null) msgs.dispatch();
185 }
186 else if (eNotificationRequired())
187 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL, newSymbol, newSymbol));
188 }
189
190 /**
191 * <!-- begin-user-doc -->
192 * <!-- end-user-doc -->
193 * @generated
194 */
195 @Override
196 public EList<ModelSymbol> getSupertypes()
197 {
198 if (supertypes == null)
199 {
200 supertypes = new EObjectContainmentEList<ModelSymbol>(ModelSymbol.class, this, SolverLanguagePackage.CLASS_INTERPRETATION__SUPERTYPES);
201 }
202 return supertypes;
203 }
204
205 /**
206 * <!-- begin-user-doc -->
207 * <!-- end-user-doc -->
208 * @generated
209 */
210 @Override
211 public EList<FieldRelationInterpretation> getFielt()
212 {
213 if (fielt == null)
214 {
215 fielt = new EObjectContainmentEList<FieldRelationInterpretation>(FieldRelationInterpretation.class, this, SolverLanguagePackage.CLASS_INTERPRETATION__FIELT);
216 }
217 return fielt;
218 }
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 @Override
226 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
227 {
228 switch (featureID)
229 {
230 case SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL:
231 return basicSetSymbol(null, msgs);
232 case SolverLanguagePackage.CLASS_INTERPRETATION__SUPERTYPES:
233 return ((InternalEList<?>)getSupertypes()).basicRemove(otherEnd, msgs);
234 case SolverLanguagePackage.CLASS_INTERPRETATION__FIELT:
235 return ((InternalEList<?>)getFielt()).basicRemove(otherEnd, msgs);
236 }
237 return super.eInverseRemove(otherEnd, featureID, msgs);
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public Object eGet(int featureID, boolean resolve, boolean coreType)
247 {
248 switch (featureID)
249 {
250 case SolverLanguagePackage.CLASS_INTERPRETATION__ABSTRACT:
251 return isAbstract();
252 case SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL:
253 return getSymbol();
254 case SolverLanguagePackage.CLASS_INTERPRETATION__SUPERTYPES:
255 return getSupertypes();
256 case SolverLanguagePackage.CLASS_INTERPRETATION__FIELT:
257 return getFielt();
258 }
259 return super.eGet(featureID, resolve, coreType);
260 }
261
262 /**
263 * <!-- begin-user-doc -->
264 * <!-- end-user-doc -->
265 * @generated
266 */
267 @SuppressWarnings("unchecked")
268 @Override
269 public void eSet(int featureID, Object newValue)
270 {
271 switch (featureID)
272 {
273 case SolverLanguagePackage.CLASS_INTERPRETATION__ABSTRACT:
274 setAbstract((Boolean)newValue);
275 return;
276 case SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL:
277 setSymbol((ModelSymbol)newValue);
278 return;
279 case SolverLanguagePackage.CLASS_INTERPRETATION__SUPERTYPES:
280 getSupertypes().clear();
281 getSupertypes().addAll((Collection<? extends ModelSymbol>)newValue);
282 return;
283 case SolverLanguagePackage.CLASS_INTERPRETATION__FIELT:
284 getFielt().clear();
285 getFielt().addAll((Collection<? extends FieldRelationInterpretation>)newValue);
286 return;
287 }
288 super.eSet(featureID, newValue);
289 }
290
291 /**
292 * <!-- begin-user-doc -->
293 * <!-- end-user-doc -->
294 * @generated
295 */
296 @Override
297 public void eUnset(int featureID)
298 {
299 switch (featureID)
300 {
301 case SolverLanguagePackage.CLASS_INTERPRETATION__ABSTRACT:
302 setAbstract(ABSTRACT_EDEFAULT);
303 return;
304 case SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL:
305 setSymbol((ModelSymbol)null);
306 return;
307 case SolverLanguagePackage.CLASS_INTERPRETATION__SUPERTYPES:
308 getSupertypes().clear();
309 return;
310 case SolverLanguagePackage.CLASS_INTERPRETATION__FIELT:
311 getFielt().clear();
312 return;
313 }
314 super.eUnset(featureID);
315 }
316
317 /**
318 * <!-- begin-user-doc -->
319 * <!-- end-user-doc -->
320 * @generated
321 */
322 @Override
323 public boolean eIsSet(int featureID)
324 {
325 switch (featureID)
326 {
327 case SolverLanguagePackage.CLASS_INTERPRETATION__ABSTRACT:
328 return abstract_ != ABSTRACT_EDEFAULT;
329 case SolverLanguagePackage.CLASS_INTERPRETATION__SYMBOL:
330 return symbol != null;
331 case SolverLanguagePackage.CLASS_INTERPRETATION__SUPERTYPES:
332 return supertypes != null && !supertypes.isEmpty();
333 case SolverLanguagePackage.CLASS_INTERPRETATION__FIELT:
334 return fielt != null && !fielt.isEmpty();
335 }
336 return super.eIsSet(featureID);
337 }
338
339 /**
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 */
344 @Override
345 public String toString()
346 {
347 if (eIsProxy()) return super.toString();
348
349 StringBuilder result = new StringBuilder(super.toString());
350 result.append(" (abstract: ");
351 result.append(abstract_);
352 result.append(')');
353 return result.toString();
354 }
355
356} //ClassInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClosureTypeImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClosureTypeImpl.java
new file mode 100644
index 00000000..98136f79
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClosureTypeImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.ClosureType;
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Closure Type</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class ClosureTypeImpl extends MinimalEObjectImpl.Container implements ClosureType
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected ClosureTypeImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.CLOSURE_TYPE;
41 }
42
43} //ClosureTypeImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComplexObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComplexObjectImpl.java
new file mode 100644
index 00000000..09ad8a6d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComplexObjectImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.ComplexObject;
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Complex Object</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class ComplexObjectImpl extends MinimalEObjectImpl.Container implements ComplexObject
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected ComplexObjectImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.COMPLEX_OBJECT;
41 }
42
43} //ComplexObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConstraintImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConstraintImpl.java
new file mode 100644
index 00000000..2f990fee
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConstraintImpl.java
@@ -0,0 +1,393 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.Notification;
9import org.eclipse.emf.common.notify.NotificationChain;
10
11import org.eclipse.emf.common.util.EList;
12
13import org.eclipse.emf.ecore.EClass;
14import org.eclipse.emf.ecore.InternalEObject;
15
16import org.eclipse.emf.ecore.impl.ENotificationImpl;
17import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
18
19import org.eclipse.emf.ecore.util.EObjectContainmentEList;
20import org.eclipse.emf.ecore.util.InternalEList;
21
22import org.eclipse.viatra.solver.language.solverLanguage.ClosureType;
23import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
24import org.eclipse.viatra.solver.language.solverLanguage.Literal;
25import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
26import org.eclipse.viatra.solver.language.solverLanguage.Polarity;
27import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
28
29/**
30 * <!-- begin-user-doc -->
31 * An implementation of the model object '<em><b>Constraint</b></em>'.
32 * <!-- end-user-doc -->
33 * <p>
34 * The following features are implemented:
35 * </p>
36 * <ul>
37 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl#getPolarity <em>Polarity</em>}</li>
38 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl#getSymbol <em>Symbol</em>}</li>
39 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl#getParams <em>Params</em>}</li>
40 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConstraintImpl#getClosureType <em>Closure Type</em>}</li>
41 * </ul>
42 *
43 * @generated
44 */
45public class ConstraintImpl extends MinimalEObjectImpl.Container implements Constraint
46{
47 /**
48 * The cached value of the '{@link #getPolarity() <em>Polarity</em>}' containment reference.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @see #getPolarity()
52 * @generated
53 * @ordered
54 */
55 protected Polarity polarity;
56
57 /**
58 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @see #getSymbol()
62 * @generated
63 * @ordered
64 */
65 protected ModelSymbol symbol;
66
67 /**
68 * The cached value of the '{@link #getParams() <em>Params</em>}' containment reference list.
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @see #getParams()
72 * @generated
73 * @ordered
74 */
75 protected EList<Literal> params;
76
77 /**
78 * The cached value of the '{@link #getClosureType() <em>Closure Type</em>}' containment reference.
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @see #getClosureType()
82 * @generated
83 * @ordered
84 */
85 protected ClosureType closureType;
86
87 /**
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @generated
91 */
92 protected ConstraintImpl()
93 {
94 super();
95 }
96
97 /**
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 @Override
103 protected EClass eStaticClass()
104 {
105 return SolverLanguagePackage.Literals.CONSTRAINT;
106 }
107
108 /**
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated
112 */
113 @Override
114 public Polarity getPolarity()
115 {
116 return polarity;
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 public NotificationChain basicSetPolarity(Polarity newPolarity, NotificationChain msgs)
125 {
126 Polarity oldPolarity = polarity;
127 polarity = newPolarity;
128 if (eNotificationRequired())
129 {
130 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONSTRAINT__POLARITY, oldPolarity, newPolarity);
131 if (msgs == null) msgs = notification; else msgs.add(notification);
132 }
133 return msgs;
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public void setPolarity(Polarity newPolarity)
143 {
144 if (newPolarity != polarity)
145 {
146 NotificationChain msgs = null;
147 if (polarity != null)
148 msgs = ((InternalEObject)polarity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONSTRAINT__POLARITY, null, msgs);
149 if (newPolarity != null)
150 msgs = ((InternalEObject)newPolarity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONSTRAINT__POLARITY, null, msgs);
151 msgs = basicSetPolarity(newPolarity, msgs);
152 if (msgs != null) msgs.dispatch();
153 }
154 else if (eNotificationRequired())
155 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONSTRAINT__POLARITY, newPolarity, newPolarity));
156 }
157
158 /**
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @generated
162 */
163 @Override
164 public ModelSymbol getSymbol()
165 {
166 return symbol;
167 }
168
169 /**
170 * <!-- begin-user-doc -->
171 * <!-- end-user-doc -->
172 * @generated
173 */
174 public NotificationChain basicSetSymbol(ModelSymbol newSymbol, NotificationChain msgs)
175 {
176 ModelSymbol oldSymbol = symbol;
177 symbol = newSymbol;
178 if (eNotificationRequired())
179 {
180 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONSTRAINT__SYMBOL, oldSymbol, newSymbol);
181 if (msgs == null) msgs = notification; else msgs.add(notification);
182 }
183 return msgs;
184 }
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 @Override
192 public void setSymbol(ModelSymbol newSymbol)
193 {
194 if (newSymbol != symbol)
195 {
196 NotificationChain msgs = null;
197 if (symbol != null)
198 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONSTRAINT__SYMBOL, null, msgs);
199 if (newSymbol != null)
200 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONSTRAINT__SYMBOL, null, msgs);
201 msgs = basicSetSymbol(newSymbol, msgs);
202 if (msgs != null) msgs.dispatch();
203 }
204 else if (eNotificationRequired())
205 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONSTRAINT__SYMBOL, newSymbol, newSymbol));
206 }
207
208 /**
209 * <!-- begin-user-doc -->
210 * <!-- end-user-doc -->
211 * @generated
212 */
213 @Override
214 public EList<Literal> getParams()
215 {
216 if (params == null)
217 {
218 params = new EObjectContainmentEList<Literal>(Literal.class, this, SolverLanguagePackage.CONSTRAINT__PARAMS);
219 }
220 return params;
221 }
222
223 /**
224 * <!-- begin-user-doc -->
225 * <!-- end-user-doc -->
226 * @generated
227 */
228 @Override
229 public ClosureType getClosureType()
230 {
231 return closureType;
232 }
233
234 /**
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @generated
238 */
239 public NotificationChain basicSetClosureType(ClosureType newClosureType, NotificationChain msgs)
240 {
241 ClosureType oldClosureType = closureType;
242 closureType = newClosureType;
243 if (eNotificationRequired())
244 {
245 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE, oldClosureType, newClosureType);
246 if (msgs == null) msgs = notification; else msgs.add(notification);
247 }
248 return msgs;
249 }
250
251 /**
252 * <!-- begin-user-doc -->
253 * <!-- end-user-doc -->
254 * @generated
255 */
256 @Override
257 public void setClosureType(ClosureType newClosureType)
258 {
259 if (newClosureType != closureType)
260 {
261 NotificationChain msgs = null;
262 if (closureType != null)
263 msgs = ((InternalEObject)closureType).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE, null, msgs);
264 if (newClosureType != null)
265 msgs = ((InternalEObject)newClosureType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE, null, msgs);
266 msgs = basicSetClosureType(newClosureType, msgs);
267 if (msgs != null) msgs.dispatch();
268 }
269 else if (eNotificationRequired())
270 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE, newClosureType, newClosureType));
271 }
272
273 /**
274 * <!-- begin-user-doc -->
275 * <!-- end-user-doc -->
276 * @generated
277 */
278 @Override
279 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
280 {
281 switch (featureID)
282 {
283 case SolverLanguagePackage.CONSTRAINT__POLARITY:
284 return basicSetPolarity(null, msgs);
285 case SolverLanguagePackage.CONSTRAINT__SYMBOL:
286 return basicSetSymbol(null, msgs);
287 case SolverLanguagePackage.CONSTRAINT__PARAMS:
288 return ((InternalEList<?>)getParams()).basicRemove(otherEnd, msgs);
289 case SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE:
290 return basicSetClosureType(null, msgs);
291 }
292 return super.eInverseRemove(otherEnd, featureID, msgs);
293 }
294
295 /**
296 * <!-- begin-user-doc -->
297 * <!-- end-user-doc -->
298 * @generated
299 */
300 @Override
301 public Object eGet(int featureID, boolean resolve, boolean coreType)
302 {
303 switch (featureID)
304 {
305 case SolverLanguagePackage.CONSTRAINT__POLARITY:
306 return getPolarity();
307 case SolverLanguagePackage.CONSTRAINT__SYMBOL:
308 return getSymbol();
309 case SolverLanguagePackage.CONSTRAINT__PARAMS:
310 return getParams();
311 case SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE:
312 return getClosureType();
313 }
314 return super.eGet(featureID, resolve, coreType);
315 }
316
317 /**
318 * <!-- begin-user-doc -->
319 * <!-- end-user-doc -->
320 * @generated
321 */
322 @SuppressWarnings("unchecked")
323 @Override
324 public void eSet(int featureID, Object newValue)
325 {
326 switch (featureID)
327 {
328 case SolverLanguagePackage.CONSTRAINT__POLARITY:
329 setPolarity((Polarity)newValue);
330 return;
331 case SolverLanguagePackage.CONSTRAINT__SYMBOL:
332 setSymbol((ModelSymbol)newValue);
333 return;
334 case SolverLanguagePackage.CONSTRAINT__PARAMS:
335 getParams().clear();
336 getParams().addAll((Collection<? extends Literal>)newValue);
337 return;
338 case SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE:
339 setClosureType((ClosureType)newValue);
340 return;
341 }
342 super.eSet(featureID, newValue);
343 }
344
345 /**
346 * <!-- begin-user-doc -->
347 * <!-- end-user-doc -->
348 * @generated
349 */
350 @Override
351 public void eUnset(int featureID)
352 {
353 switch (featureID)
354 {
355 case SolverLanguagePackage.CONSTRAINT__POLARITY:
356 setPolarity((Polarity)null);
357 return;
358 case SolverLanguagePackage.CONSTRAINT__SYMBOL:
359 setSymbol((ModelSymbol)null);
360 return;
361 case SolverLanguagePackage.CONSTRAINT__PARAMS:
362 getParams().clear();
363 return;
364 case SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE:
365 setClosureType((ClosureType)null);
366 return;
367 }
368 super.eUnset(featureID);
369 }
370
371 /**
372 * <!-- begin-user-doc -->
373 * <!-- end-user-doc -->
374 * @generated
375 */
376 @Override
377 public boolean eIsSet(int featureID)
378 {
379 switch (featureID)
380 {
381 case SolverLanguagePackage.CONSTRAINT__POLARITY:
382 return polarity != null;
383 case SolverLanguagePackage.CONSTRAINT__SYMBOL:
384 return symbol != null;
385 case SolverLanguagePackage.CONSTRAINT__PARAMS:
386 return params != null && !params.isEmpty();
387 case SolverLanguagePackage.CONSTRAINT__CLOSURE_TYPE:
388 return closureType != null;
389 }
390 return super.eIsSet(featureID);
391 }
392
393} //ConstraintImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataObjectImpl.java
new file mode 100644
index 00000000..33bee29f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataObjectImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.DataObject;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Data Object</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class DataObjectImpl extends ObjectImpl implements DataObject
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected DataObjectImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.DATA_OBJECT;
39 }
40
41} //DataObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataSymbolImpl.java
new file mode 100644
index 00000000..221b4783
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DataSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.DataSymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Data Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class DataSymbolImpl extends SymbolImpl implements DataSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected DataSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.DATA_SYMBOL;
39 }
40
41} //DataSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultInterpretationImpl.java
new file mode 100644
index 00000000..eb2835a0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultInterpretationImpl.java
@@ -0,0 +1,196 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
15import org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Default Interpretation</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultInterpretationImpl#getInterpretation <em>Interpretation</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class DefaultInterpretationImpl extends InterpretationImpl implements DefaultInterpretation
32{
33 /**
34 * The cached value of the '{@link #getInterpretation() <em>Interpretation</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getInterpretation()
38 * @generated
39 * @ordered
40 */
41 protected BasicInterpretation interpretation;
42
43 /**
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 protected DefaultInterpretationImpl()
49 {
50 super();
51 }
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 @Override
59 protected EClass eStaticClass()
60 {
61 return SolverLanguagePackage.Literals.DEFAULT_INTERPRETATION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 @Override
70 public BasicInterpretation getInterpretation()
71 {
72 return interpretation;
73 }
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 public NotificationChain basicSetInterpretation(BasicInterpretation newInterpretation, NotificationChain msgs)
81 {
82 BasicInterpretation oldInterpretation = interpretation;
83 interpretation = newInterpretation;
84 if (eNotificationRequired())
85 {
86 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION, oldInterpretation, newInterpretation);
87 if (msgs == null) msgs = notification; else msgs.add(notification);
88 }
89 return msgs;
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public void setInterpretation(BasicInterpretation newInterpretation)
99 {
100 if (newInterpretation != interpretation)
101 {
102 NotificationChain msgs = null;
103 if (interpretation != null)
104 msgs = ((InternalEObject)interpretation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION, null, msgs);
105 if (newInterpretation != null)
106 msgs = ((InternalEObject)newInterpretation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION, null, msgs);
107 msgs = basicSetInterpretation(newInterpretation, msgs);
108 if (msgs != null) msgs.dispatch();
109 }
110 else if (eNotificationRequired())
111 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION, newInterpretation, newInterpretation));
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
121 {
122 switch (featureID)
123 {
124 case SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION:
125 return basicSetInterpretation(null, msgs);
126 }
127 return super.eInverseRemove(otherEnd, featureID, msgs);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public Object eGet(int featureID, boolean resolve, boolean coreType)
137 {
138 switch (featureID)
139 {
140 case SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION:
141 return getInterpretation();
142 }
143 return super.eGet(featureID, resolve, coreType);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public void eSet(int featureID, Object newValue)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION:
157 setInterpretation((BasicInterpretation)newValue);
158 return;
159 }
160 super.eSet(featureID, newValue);
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 @Override
169 public void eUnset(int featureID)
170 {
171 switch (featureID)
172 {
173 case SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION:
174 setInterpretation((BasicInterpretation)null);
175 return;
176 }
177 super.eUnset(featureID);
178 }
179
180 /**
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @generated
184 */
185 @Override
186 public boolean eIsSet(int featureID)
187 {
188 switch (featureID)
189 {
190 case SolverLanguagePackage.DEFAULT_INTERPRETATION__INTERPRETATION:
191 return interpretation != null;
192 }
193 return super.eIsSet(featureID);
194 }
195
196} //DefaultInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumInterpretationImpl.java
new file mode 100644
index 00000000..efa12ea6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumInterpretationImpl.java
@@ -0,0 +1,244 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.Notification;
9import org.eclipse.emf.common.notify.NotificationChain;
10
11import org.eclipse.emf.common.util.EList;
12
13import org.eclipse.emf.ecore.EClass;
14import org.eclipse.emf.ecore.InternalEObject;
15
16import org.eclipse.emf.ecore.impl.ENotificationImpl;
17
18import org.eclipse.emf.ecore.util.EObjectContainmentEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21import org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation;
22import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
23import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
24import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
25
26/**
27 * <!-- begin-user-doc -->
28 * An implementation of the model object '<em><b>Enum Interpretation</b></em>'.
29 * <!-- end-user-doc -->
30 * <p>
31 * The following features are implemented:
32 * </p>
33 * <ul>
34 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumInterpretationImpl#getSymbol <em>Symbol</em>}</li>
35 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumInterpretationImpl#getObjects <em>Objects</em>}</li>
36 * </ul>
37 *
38 * @generated
39 */
40public class EnumInterpretationImpl extends CDInterpretationImpl implements EnumInterpretation
41{
42 /**
43 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getSymbol()
47 * @generated
48 * @ordered
49 */
50 protected ModelSymbol symbol;
51
52 /**
53 * The cached value of the '{@link #getObjects() <em>Objects</em>}' containment reference list.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @see #getObjects()
57 * @generated
58 * @ordered
59 */
60 protected EList<NamedObject> objects;
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 protected EnumInterpretationImpl()
68 {
69 super();
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 @Override
78 protected EClass eStaticClass()
79 {
80 return SolverLanguagePackage.Literals.ENUM_INTERPRETATION;
81 }
82
83 /**
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @generated
87 */
88 @Override
89 public ModelSymbol getSymbol()
90 {
91 return symbol;
92 }
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 public NotificationChain basicSetSymbol(ModelSymbol newSymbol, NotificationChain msgs)
100 {
101 ModelSymbol oldSymbol = symbol;
102 symbol = newSymbol;
103 if (eNotificationRequired())
104 {
105 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL, oldSymbol, newSymbol);
106 if (msgs == null) msgs = notification; else msgs.add(notification);
107 }
108 return msgs;
109 }
110
111 /**
112 * <!-- begin-user-doc -->
113 * <!-- end-user-doc -->
114 * @generated
115 */
116 @Override
117 public void setSymbol(ModelSymbol newSymbol)
118 {
119 if (newSymbol != symbol)
120 {
121 NotificationChain msgs = null;
122 if (symbol != null)
123 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL, null, msgs);
124 if (newSymbol != null)
125 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL, null, msgs);
126 msgs = basicSetSymbol(newSymbol, msgs);
127 if (msgs != null) msgs.dispatch();
128 }
129 else if (eNotificationRequired())
130 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL, newSymbol, newSymbol));
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public EList<NamedObject> getObjects()
140 {
141 if (objects == null)
142 {
143 objects = new EObjectContainmentEList<NamedObject>(NamedObject.class, this, SolverLanguagePackage.ENUM_INTERPRETATION__OBJECTS);
144 }
145 return objects;
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
155 {
156 switch (featureID)
157 {
158 case SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL:
159 return basicSetSymbol(null, msgs);
160 case SolverLanguagePackage.ENUM_INTERPRETATION__OBJECTS:
161 return ((InternalEList<?>)getObjects()).basicRemove(otherEnd, msgs);
162 }
163 return super.eInverseRemove(otherEnd, featureID, msgs);
164 }
165
166 /**
167 * <!-- begin-user-doc -->
168 * <!-- end-user-doc -->
169 * @generated
170 */
171 @Override
172 public Object eGet(int featureID, boolean resolve, boolean coreType)
173 {
174 switch (featureID)
175 {
176 case SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL:
177 return getSymbol();
178 case SolverLanguagePackage.ENUM_INTERPRETATION__OBJECTS:
179 return getObjects();
180 }
181 return super.eGet(featureID, resolve, coreType);
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 @SuppressWarnings("unchecked")
190 @Override
191 public void eSet(int featureID, Object newValue)
192 {
193 switch (featureID)
194 {
195 case SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL:
196 setSymbol((ModelSymbol)newValue);
197 return;
198 case SolverLanguagePackage.ENUM_INTERPRETATION__OBJECTS:
199 getObjects().clear();
200 getObjects().addAll((Collection<? extends NamedObject>)newValue);
201 return;
202 }
203 super.eSet(featureID, newValue);
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 @Override
212 public void eUnset(int featureID)
213 {
214 switch (featureID)
215 {
216 case SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL:
217 setSymbol((ModelSymbol)null);
218 return;
219 case SolverLanguagePackage.ENUM_INTERPRETATION__OBJECTS:
220 getObjects().clear();
221 return;
222 }
223 super.eUnset(featureID);
224 }
225
226 /**
227 * <!-- begin-user-doc -->
228 * <!-- end-user-doc -->
229 * @generated
230 */
231 @Override
232 public boolean eIsSet(int featureID)
233 {
234 switch (featureID)
235 {
236 case SolverLanguagePackage.ENUM_INTERPRETATION__SYMBOL:
237 return symbol != null;
238 case SolverLanguagePackage.ENUM_INTERPRETATION__OBJECTS:
239 return objects != null && !objects.isEmpty();
240 }
241 return super.eIsSet(featureID);
242 }
243
244} //EnumInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EqualsSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EqualsSymbolImpl.java
new file mode 100644
index 00000000..33929f42
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EqualsSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Equals Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class EqualsSymbolImpl extends PartialitySymbolImpl implements EqualsSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected EqualsSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.EQUALS_SYMBOL;
39 }
40
41} //EqualsSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorImpl.java
new file mode 100644
index 00000000..e58094a7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorImpl.java
@@ -0,0 +1,40 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Error</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ErrorImpl extends TruthValueImpl implements org.eclipse.viatra.solver.language.solverLanguage.Error
18{
19 /**
20 * <!-- begin-user-doc -->
21 * <!-- end-user-doc -->
22 * @generated
23 */
24 protected ErrorImpl()
25 {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass()
36 {
37 return SolverLanguagePackage.Literals.ERROR;
38 }
39
40} //ErrorImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorPredicateImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorPredicateImpl.java
new file mode 100644
index 00000000..f9b0e8c8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ErrorPredicateImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Error Predicate</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ErrorPredicateImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class ErrorPredicateImpl extends PredicateImpl implements ErrorPredicate
29{
30 /**
31 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getName()
35 * @generated
36 * @ordered
37 */
38 protected static final String NAME_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getName()
45 * @generated
46 * @ordered
47 */
48 protected String name = NAME_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected ErrorPredicateImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.ERROR_PREDICATE;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public String getName()
78 {
79 return name;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setName(String newName)
89 {
90 String oldName = name;
91 name = newName;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ERROR_PREDICATE__NAME, oldName, name));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.ERROR_PREDICATE__NAME:
107 return getName();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.ERROR_PREDICATE__NAME:
123 setName((String)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.ERROR_PREDICATE__NAME:
140 setName(NAME_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.ERROR_PREDICATE__NAME:
157 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (name: ");
174 result.append(name);
175 result.append(')');
176 return result.toString();
177 }
178
179} //ErrorPredicateImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExistSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExistSymbolImpl.java
new file mode 100644
index 00000000..2fd59e41
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExistSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Exist Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class ExistSymbolImpl extends PartialitySymbolImpl implements ExistSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected ExistSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.EXIST_SYMBOL;
39 }
40
41} //ExistSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FalseImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FalseImpl.java
new file mode 100644
index 00000000..332f9af3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FalseImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.False;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>False</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class FalseImpl extends TruthValueImpl implements False
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected FalseImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.FALSE;
39 }
40
41} //FalseImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldRelationInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldRelationInterpretationImpl.java
new file mode 100644
index 00000000..ea9b80b2
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldRelationInterpretationImpl.java
@@ -0,0 +1,418 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
14
15import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
16import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
17import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
18import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
19import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Field Relation Interpretation</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl#isContainment <em>Containment</em>}</li>
30 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl#getSymbol <em>Symbol</em>}</li>
31 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl#getMultiplicity <em>Multiplicity</em>}</li>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldRelationInterpretationImpl#getTarget <em>Target</em>}</li>
33 * </ul>
34 *
35 * @generated
36 */
37public class FieldRelationInterpretationImpl extends MinimalEObjectImpl.Container implements FieldRelationInterpretation
38{
39 /**
40 * The default value of the '{@link #isContainment() <em>Containment</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #isContainment()
44 * @generated
45 * @ordered
46 */
47 protected static final boolean CONTAINMENT_EDEFAULT = false;
48
49 /**
50 * The cached value of the '{@link #isContainment() <em>Containment</em>}' attribute.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #isContainment()
54 * @generated
55 * @ordered
56 */
57 protected boolean containment = CONTAINMENT_EDEFAULT;
58
59 /**
60 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @see #getSymbol()
64 * @generated
65 * @ordered
66 */
67 protected ModelSymbol symbol;
68
69 /**
70 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' containment reference.
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @see #getMultiplicity()
74 * @generated
75 * @ordered
76 */
77 protected MultiplicityDefinition multiplicity;
78
79 /**
80 * The cached value of the '{@link #getTarget() <em>Target</em>}' containment reference.
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @see #getTarget()
84 * @generated
85 * @ordered
86 */
87 protected Symbol target;
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 protected FieldRelationInterpretationImpl()
95 {
96 super();
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 @Override
105 protected EClass eStaticClass()
106 {
107 return SolverLanguagePackage.Literals.FIELD_RELATION_INTERPRETATION;
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public boolean isContainment()
117 {
118 return containment;
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 @Override
127 public void setContainment(boolean newContainment)
128 {
129 boolean oldContainment = containment;
130 containment = newContainment;
131 if (eNotificationRequired())
132 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__CONTAINMENT, oldContainment, containment));
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 @Override
141 public ModelSymbol getSymbol()
142 {
143 return symbol;
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 public NotificationChain basicSetSymbol(ModelSymbol newSymbol, NotificationChain msgs)
152 {
153 ModelSymbol oldSymbol = symbol;
154 symbol = newSymbol;
155 if (eNotificationRequired())
156 {
157 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL, oldSymbol, newSymbol);
158 if (msgs == null) msgs = notification; else msgs.add(notification);
159 }
160 return msgs;
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 @Override
169 public void setSymbol(ModelSymbol newSymbol)
170 {
171 if (newSymbol != symbol)
172 {
173 NotificationChain msgs = null;
174 if (symbol != null)
175 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL, null, msgs);
176 if (newSymbol != null)
177 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL, null, msgs);
178 msgs = basicSetSymbol(newSymbol, msgs);
179 if (msgs != null) msgs.dispatch();
180 }
181 else if (eNotificationRequired())
182 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL, newSymbol, newSymbol));
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 @Override
191 public MultiplicityDefinition getMultiplicity()
192 {
193 return multiplicity;
194 }
195
196 /**
197 * <!-- begin-user-doc -->
198 * <!-- end-user-doc -->
199 * @generated
200 */
201 public NotificationChain basicSetMultiplicity(MultiplicityDefinition newMultiplicity, NotificationChain msgs)
202 {
203 MultiplicityDefinition oldMultiplicity = multiplicity;
204 multiplicity = newMultiplicity;
205 if (eNotificationRequired())
206 {
207 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY, oldMultiplicity, newMultiplicity);
208 if (msgs == null) msgs = notification; else msgs.add(notification);
209 }
210 return msgs;
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 @Override
219 public void setMultiplicity(MultiplicityDefinition newMultiplicity)
220 {
221 if (newMultiplicity != multiplicity)
222 {
223 NotificationChain msgs = null;
224 if (multiplicity != null)
225 msgs = ((InternalEObject)multiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY, null, msgs);
226 if (newMultiplicity != null)
227 msgs = ((InternalEObject)newMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY, null, msgs);
228 msgs = basicSetMultiplicity(newMultiplicity, msgs);
229 if (msgs != null) msgs.dispatch();
230 }
231 else if (eNotificationRequired())
232 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY, newMultiplicity, newMultiplicity));
233 }
234
235 /**
236 * <!-- begin-user-doc -->
237 * <!-- end-user-doc -->
238 * @generated
239 */
240 @Override
241 public Symbol getTarget()
242 {
243 return target;
244 }
245
246 /**
247 * <!-- begin-user-doc -->
248 * <!-- end-user-doc -->
249 * @generated
250 */
251 public NotificationChain basicSetTarget(Symbol newTarget, NotificationChain msgs)
252 {
253 Symbol oldTarget = target;
254 target = newTarget;
255 if (eNotificationRequired())
256 {
257 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET, oldTarget, newTarget);
258 if (msgs == null) msgs = notification; else msgs.add(notification);
259 }
260 return msgs;
261 }
262
263 /**
264 * <!-- begin-user-doc -->
265 * <!-- end-user-doc -->
266 * @generated
267 */
268 @Override
269 public void setTarget(Symbol newTarget)
270 {
271 if (newTarget != target)
272 {
273 NotificationChain msgs = null;
274 if (target != null)
275 msgs = ((InternalEObject)target).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET, null, msgs);
276 if (newTarget != null)
277 msgs = ((InternalEObject)newTarget).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET, null, msgs);
278 msgs = basicSetTarget(newTarget, msgs);
279 if (msgs != null) msgs.dispatch();
280 }
281 else if (eNotificationRequired())
282 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET, newTarget, newTarget));
283 }
284
285 /**
286 * <!-- begin-user-doc -->
287 * <!-- end-user-doc -->
288 * @generated
289 */
290 @Override
291 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
292 {
293 switch (featureID)
294 {
295 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL:
296 return basicSetSymbol(null, msgs);
297 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY:
298 return basicSetMultiplicity(null, msgs);
299 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET:
300 return basicSetTarget(null, msgs);
301 }
302 return super.eInverseRemove(otherEnd, featureID, msgs);
303 }
304
305 /**
306 * <!-- begin-user-doc -->
307 * <!-- end-user-doc -->
308 * @generated
309 */
310 @Override
311 public Object eGet(int featureID, boolean resolve, boolean coreType)
312 {
313 switch (featureID)
314 {
315 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__CONTAINMENT:
316 return isContainment();
317 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL:
318 return getSymbol();
319 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY:
320 return getMultiplicity();
321 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET:
322 return getTarget();
323 }
324 return super.eGet(featureID, resolve, coreType);
325 }
326
327 /**
328 * <!-- begin-user-doc -->
329 * <!-- end-user-doc -->
330 * @generated
331 */
332 @Override
333 public void eSet(int featureID, Object newValue)
334 {
335 switch (featureID)
336 {
337 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__CONTAINMENT:
338 setContainment((Boolean)newValue);
339 return;
340 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL:
341 setSymbol((ModelSymbol)newValue);
342 return;
343 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY:
344 setMultiplicity((MultiplicityDefinition)newValue);
345 return;
346 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET:
347 setTarget((Symbol)newValue);
348 return;
349 }
350 super.eSet(featureID, newValue);
351 }
352
353 /**
354 * <!-- begin-user-doc -->
355 * <!-- end-user-doc -->
356 * @generated
357 */
358 @Override
359 public void eUnset(int featureID)
360 {
361 switch (featureID)
362 {
363 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__CONTAINMENT:
364 setContainment(CONTAINMENT_EDEFAULT);
365 return;
366 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL:
367 setSymbol((ModelSymbol)null);
368 return;
369 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY:
370 setMultiplicity((MultiplicityDefinition)null);
371 return;
372 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET:
373 setTarget((Symbol)null);
374 return;
375 }
376 super.eUnset(featureID);
377 }
378
379 /**
380 * <!-- begin-user-doc -->
381 * <!-- end-user-doc -->
382 * @generated
383 */
384 @Override
385 public boolean eIsSet(int featureID)
386 {
387 switch (featureID)
388 {
389 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__CONTAINMENT:
390 return containment != CONTAINMENT_EDEFAULT;
391 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__SYMBOL:
392 return symbol != null;
393 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__MULTIPLICITY:
394 return multiplicity != null;
395 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION__TARGET:
396 return target != null;
397 }
398 return super.eIsSet(featureID);
399 }
400
401 /**
402 * <!-- begin-user-doc -->
403 * <!-- end-user-doc -->
404 * @generated
405 */
406 @Override
407 public String toString()
408 {
409 if (eIsProxy()) return super.toString();
410
411 StringBuilder result = new StringBuilder(super.toString());
412 result.append(" (containment: ");
413 result.append(containment);
414 result.append(')');
415 return result.toString();
416 }
417
418} //FieldRelationInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/GlobalRelationInterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/GlobalRelationInterpretationImpl.java
new file mode 100644
index 00000000..52f7a67d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/GlobalRelationInterpretationImpl.java
@@ -0,0 +1,563 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation;
15import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
16import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
17import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
18import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
19
20/**
21 * <!-- begin-user-doc -->
22 * An implementation of the model object '<em><b>Global Relation Interpretation</b></em>'.
23 * <!-- end-user-doc -->
24 * <p>
25 * The following features are implemented:
26 * </p>
27 * <ul>
28 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl#isContainment <em>Containment</em>}</li>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl#getSymbol <em>Symbol</em>}</li>
30 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl#getSourceMultiplicity <em>Source Multiplicity</em>}</li>
31 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl#getSource <em>Source</em>}</li>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl#getTargetMultiplicity <em>Target Multiplicity</em>}</li>
33 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.GlobalRelationInterpretationImpl#getTarget <em>Target</em>}</li>
34 * </ul>
35 *
36 * @generated
37 */
38public class GlobalRelationInterpretationImpl extends CDInterpretationImpl implements GlobalRelationInterpretation
39{
40 /**
41 * The default value of the '{@link #isContainment() <em>Containment</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #isContainment()
45 * @generated
46 * @ordered
47 */
48 protected static final boolean CONTAINMENT_EDEFAULT = false;
49
50 /**
51 * The cached value of the '{@link #isContainment() <em>Containment</em>}' attribute.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @see #isContainment()
55 * @generated
56 * @ordered
57 */
58 protected boolean containment = CONTAINMENT_EDEFAULT;
59
60 /**
61 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see #getSymbol()
65 * @generated
66 * @ordered
67 */
68 protected ModelSymbol symbol;
69
70 /**
71 * The cached value of the '{@link #getSourceMultiplicity() <em>Source Multiplicity</em>}' containment reference.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @see #getSourceMultiplicity()
75 * @generated
76 * @ordered
77 */
78 protected MultiplicityDefinition sourceMultiplicity;
79
80 /**
81 * The cached value of the '{@link #getSource() <em>Source</em>}' containment reference.
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @see #getSource()
85 * @generated
86 * @ordered
87 */
88 protected Symbol source;
89
90 /**
91 * The cached value of the '{@link #getTargetMultiplicity() <em>Target Multiplicity</em>}' containment reference.
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @see #getTargetMultiplicity()
95 * @generated
96 * @ordered
97 */
98 protected MultiplicityDefinition targetMultiplicity;
99
100 /**
101 * The cached value of the '{@link #getTarget() <em>Target</em>}' containment reference.
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @see #getTarget()
105 * @generated
106 * @ordered
107 */
108 protected Symbol target;
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 protected GlobalRelationInterpretationImpl()
116 {
117 super();
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 @Override
126 protected EClass eStaticClass()
127 {
128 return SolverLanguagePackage.Literals.GLOBAL_RELATION_INTERPRETATION;
129 }
130
131 /**
132 * <!-- begin-user-doc -->
133 * <!-- end-user-doc -->
134 * @generated
135 */
136 @Override
137 public boolean isContainment()
138 {
139 return containment;
140 }
141
142 /**
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 */
147 @Override
148 public void setContainment(boolean newContainment)
149 {
150 boolean oldContainment = containment;
151 containment = newContainment;
152 if (eNotificationRequired())
153 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__CONTAINMENT, oldContainment, containment));
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 @Override
162 public ModelSymbol getSymbol()
163 {
164 return symbol;
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 public NotificationChain basicSetSymbol(ModelSymbol newSymbol, NotificationChain msgs)
173 {
174 ModelSymbol oldSymbol = symbol;
175 symbol = newSymbol;
176 if (eNotificationRequired())
177 {
178 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL, oldSymbol, newSymbol);
179 if (msgs == null) msgs = notification; else msgs.add(notification);
180 }
181 return msgs;
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 @Override
190 public void setSymbol(ModelSymbol newSymbol)
191 {
192 if (newSymbol != symbol)
193 {
194 NotificationChain msgs = null;
195 if (symbol != null)
196 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL, null, msgs);
197 if (newSymbol != null)
198 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL, null, msgs);
199 msgs = basicSetSymbol(newSymbol, msgs);
200 if (msgs != null) msgs.dispatch();
201 }
202 else if (eNotificationRequired())
203 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL, newSymbol, newSymbol));
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 @Override
212 public MultiplicityDefinition getSourceMultiplicity()
213 {
214 return sourceMultiplicity;
215 }
216
217 /**
218 * <!-- begin-user-doc -->
219 * <!-- end-user-doc -->
220 * @generated
221 */
222 public NotificationChain basicSetSourceMultiplicity(MultiplicityDefinition newSourceMultiplicity, NotificationChain msgs)
223 {
224 MultiplicityDefinition oldSourceMultiplicity = sourceMultiplicity;
225 sourceMultiplicity = newSourceMultiplicity;
226 if (eNotificationRequired())
227 {
228 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY, oldSourceMultiplicity, newSourceMultiplicity);
229 if (msgs == null) msgs = notification; else msgs.add(notification);
230 }
231 return msgs;
232 }
233
234 /**
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @generated
238 */
239 @Override
240 public void setSourceMultiplicity(MultiplicityDefinition newSourceMultiplicity)
241 {
242 if (newSourceMultiplicity != sourceMultiplicity)
243 {
244 NotificationChain msgs = null;
245 if (sourceMultiplicity != null)
246 msgs = ((InternalEObject)sourceMultiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY, null, msgs);
247 if (newSourceMultiplicity != null)
248 msgs = ((InternalEObject)newSourceMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY, null, msgs);
249 msgs = basicSetSourceMultiplicity(newSourceMultiplicity, msgs);
250 if (msgs != null) msgs.dispatch();
251 }
252 else if (eNotificationRequired())
253 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY, newSourceMultiplicity, newSourceMultiplicity));
254 }
255
256 /**
257 * <!-- begin-user-doc -->
258 * <!-- end-user-doc -->
259 * @generated
260 */
261 @Override
262 public Symbol getSource()
263 {
264 return source;
265 }
266
267 /**
268 * <!-- begin-user-doc -->
269 * <!-- end-user-doc -->
270 * @generated
271 */
272 public NotificationChain basicSetSource(Symbol newSource, NotificationChain msgs)
273 {
274 Symbol oldSource = source;
275 source = newSource;
276 if (eNotificationRequired())
277 {
278 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE, oldSource, newSource);
279 if (msgs == null) msgs = notification; else msgs.add(notification);
280 }
281 return msgs;
282 }
283
284 /**
285 * <!-- begin-user-doc -->
286 * <!-- end-user-doc -->
287 * @generated
288 */
289 @Override
290 public void setSource(Symbol newSource)
291 {
292 if (newSource != source)
293 {
294 NotificationChain msgs = null;
295 if (source != null)
296 msgs = ((InternalEObject)source).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE, null, msgs);
297 if (newSource != null)
298 msgs = ((InternalEObject)newSource).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE, null, msgs);
299 msgs = basicSetSource(newSource, msgs);
300 if (msgs != null) msgs.dispatch();
301 }
302 else if (eNotificationRequired())
303 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE, newSource, newSource));
304 }
305
306 /**
307 * <!-- begin-user-doc -->
308 * <!-- end-user-doc -->
309 * @generated
310 */
311 @Override
312 public MultiplicityDefinition getTargetMultiplicity()
313 {
314 return targetMultiplicity;
315 }
316
317 /**
318 * <!-- begin-user-doc -->
319 * <!-- end-user-doc -->
320 * @generated
321 */
322 public NotificationChain basicSetTargetMultiplicity(MultiplicityDefinition newTargetMultiplicity, NotificationChain msgs)
323 {
324 MultiplicityDefinition oldTargetMultiplicity = targetMultiplicity;
325 targetMultiplicity = newTargetMultiplicity;
326 if (eNotificationRequired())
327 {
328 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY, oldTargetMultiplicity, newTargetMultiplicity);
329 if (msgs == null) msgs = notification; else msgs.add(notification);
330 }
331 return msgs;
332 }
333
334 /**
335 * <!-- begin-user-doc -->
336 * <!-- end-user-doc -->
337 * @generated
338 */
339 @Override
340 public void setTargetMultiplicity(MultiplicityDefinition newTargetMultiplicity)
341 {
342 if (newTargetMultiplicity != targetMultiplicity)
343 {
344 NotificationChain msgs = null;
345 if (targetMultiplicity != null)
346 msgs = ((InternalEObject)targetMultiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY, null, msgs);
347 if (newTargetMultiplicity != null)
348 msgs = ((InternalEObject)newTargetMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY, null, msgs);
349 msgs = basicSetTargetMultiplicity(newTargetMultiplicity, msgs);
350 if (msgs != null) msgs.dispatch();
351 }
352 else if (eNotificationRequired())
353 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY, newTargetMultiplicity, newTargetMultiplicity));
354 }
355
356 /**
357 * <!-- begin-user-doc -->
358 * <!-- end-user-doc -->
359 * @generated
360 */
361 @Override
362 public Symbol getTarget()
363 {
364 return target;
365 }
366
367 /**
368 * <!-- begin-user-doc -->
369 * <!-- end-user-doc -->
370 * @generated
371 */
372 public NotificationChain basicSetTarget(Symbol newTarget, NotificationChain msgs)
373 {
374 Symbol oldTarget = target;
375 target = newTarget;
376 if (eNotificationRequired())
377 {
378 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET, oldTarget, newTarget);
379 if (msgs == null) msgs = notification; else msgs.add(notification);
380 }
381 return msgs;
382 }
383
384 /**
385 * <!-- begin-user-doc -->
386 * <!-- end-user-doc -->
387 * @generated
388 */
389 @Override
390 public void setTarget(Symbol newTarget)
391 {
392 if (newTarget != target)
393 {
394 NotificationChain msgs = null;
395 if (target != null)
396 msgs = ((InternalEObject)target).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET, null, msgs);
397 if (newTarget != null)
398 msgs = ((InternalEObject)newTarget).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET, null, msgs);
399 msgs = basicSetTarget(newTarget, msgs);
400 if (msgs != null) msgs.dispatch();
401 }
402 else if (eNotificationRequired())
403 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET, newTarget, newTarget));
404 }
405
406 /**
407 * <!-- begin-user-doc -->
408 * <!-- end-user-doc -->
409 * @generated
410 */
411 @Override
412 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
413 {
414 switch (featureID)
415 {
416 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL:
417 return basicSetSymbol(null, msgs);
418 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY:
419 return basicSetSourceMultiplicity(null, msgs);
420 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE:
421 return basicSetSource(null, msgs);
422 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY:
423 return basicSetTargetMultiplicity(null, msgs);
424 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET:
425 return basicSetTarget(null, msgs);
426 }
427 return super.eInverseRemove(otherEnd, featureID, msgs);
428 }
429
430 /**
431 * <!-- begin-user-doc -->
432 * <!-- end-user-doc -->
433 * @generated
434 */
435 @Override
436 public Object eGet(int featureID, boolean resolve, boolean coreType)
437 {
438 switch (featureID)
439 {
440 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__CONTAINMENT:
441 return isContainment();
442 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL:
443 return getSymbol();
444 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY:
445 return getSourceMultiplicity();
446 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE:
447 return getSource();
448 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY:
449 return getTargetMultiplicity();
450 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET:
451 return getTarget();
452 }
453 return super.eGet(featureID, resolve, coreType);
454 }
455
456 /**
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 */
461 @Override
462 public void eSet(int featureID, Object newValue)
463 {
464 switch (featureID)
465 {
466 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__CONTAINMENT:
467 setContainment((Boolean)newValue);
468 return;
469 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL:
470 setSymbol((ModelSymbol)newValue);
471 return;
472 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY:
473 setSourceMultiplicity((MultiplicityDefinition)newValue);
474 return;
475 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE:
476 setSource((Symbol)newValue);
477 return;
478 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY:
479 setTargetMultiplicity((MultiplicityDefinition)newValue);
480 return;
481 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET:
482 setTarget((Symbol)newValue);
483 return;
484 }
485 super.eSet(featureID, newValue);
486 }
487
488 /**
489 * <!-- begin-user-doc -->
490 * <!-- end-user-doc -->
491 * @generated
492 */
493 @Override
494 public void eUnset(int featureID)
495 {
496 switch (featureID)
497 {
498 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__CONTAINMENT:
499 setContainment(CONTAINMENT_EDEFAULT);
500 return;
501 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL:
502 setSymbol((ModelSymbol)null);
503 return;
504 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY:
505 setSourceMultiplicity((MultiplicityDefinition)null);
506 return;
507 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE:
508 setSource((Symbol)null);
509 return;
510 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY:
511 setTargetMultiplicity((MultiplicityDefinition)null);
512 return;
513 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET:
514 setTarget((Symbol)null);
515 return;
516 }
517 super.eUnset(featureID);
518 }
519
520 /**
521 * <!-- begin-user-doc -->
522 * <!-- end-user-doc -->
523 * @generated
524 */
525 @Override
526 public boolean eIsSet(int featureID)
527 {
528 switch (featureID)
529 {
530 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__CONTAINMENT:
531 return containment != CONTAINMENT_EDEFAULT;
532 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SYMBOL:
533 return symbol != null;
534 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY:
535 return sourceMultiplicity != null;
536 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__SOURCE:
537 return source != null;
538 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY:
539 return targetMultiplicity != null;
540 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION__TARGET:
541 return target != null;
542 }
543 return super.eIsSet(featureID);
544 }
545
546 /**
547 * <!-- begin-user-doc -->
548 * <!-- end-user-doc -->
549 * @generated
550 */
551 @Override
552 public String toString()
553 {
554 if (eIsProxy()) return super.toString();
555
556 StringBuilder result = new StringBuilder(super.toString());
557 result.append(" (containment: ");
558 result.append(containment);
559 result.append(')');
560 return result.toString();
561 }
562
563} //GlobalRelationInterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntObjectImpl.java
new file mode 100644
index 00000000..fa844b68
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntObjectImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.IntObject;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Int Object</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntObjectImpl#getValue <em>Value</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class IntObjectImpl extends DataObjectImpl implements IntObject
29{
30 /**
31 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getValue()
35 * @generated
36 * @ordered
37 */
38 protected static final int VALUE_EDEFAULT = 0;
39
40 /**
41 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getValue()
45 * @generated
46 * @ordered
47 */
48 protected int value = VALUE_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected IntObjectImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.INT_OBJECT;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public int getValue()
78 {
79 return value;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setValue(int newValue)
89 {
90 int oldValue = value;
91 value = newValue;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INT_OBJECT__VALUE, oldValue, value));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.INT_OBJECT__VALUE:
107 return getValue();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.INT_OBJECT__VALUE:
123 setValue((Integer)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.INT_OBJECT__VALUE:
140 setValue(VALUE_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.INT_OBJECT__VALUE:
157 return value != VALUE_EDEFAULT;
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (value: ");
174 result.append(value);
175 result.append(')');
176 return result.toString();
177 }
178
179} //IntObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntegerSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntegerSymbolImpl.java
new file mode 100644
index 00000000..bcd978fa
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntegerSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Integer Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class IntegerSymbolImpl extends DataSymbolImpl implements IntegerSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected IntegerSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.INTEGER_SYMBOL;
39 }
40
41} //IntegerSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java
new file mode 100644
index 00000000..fb41d77d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.Interpretation;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Interpretation</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class InterpretationImpl extends StatementImpl implements Interpretation
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected InterpretationImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.INTERPRETATION;
39 }
40
41} //InterpretationImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IrreflexiveClosureImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IrreflexiveClosureImpl.java
new file mode 100644
index 00000000..07ad66f9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IrreflexiveClosureImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Irreflexive Closure</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class IrreflexiveClosureImpl extends ClosureTypeImpl implements IrreflexiveClosure
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected IrreflexiveClosureImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.IRREFLEXIVE_CLOSURE;
39 }
40
41} //IrreflexiveClosureImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java
new file mode 100644
index 00000000..518aa2b7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.Literal;
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Literal</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class LiteralImpl extends MinimalEObjectImpl.Container implements Literal
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected LiteralImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.LITERAL;
41 }
42
43} //LiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ModelSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ModelSymbolImpl.java
new file mode 100644
index 00000000..bd195572
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ModelSymbolImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Model Symbol</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ModelSymbolImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class ModelSymbolImpl extends SymbolImpl implements ModelSymbol
29{
30 /**
31 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getName()
35 * @generated
36 * @ordered
37 */
38 protected static final String NAME_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getName()
45 * @generated
46 * @ordered
47 */
48 protected String name = NAME_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected ModelSymbolImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.MODEL_SYMBOL;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public String getName()
78 {
79 return name;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setName(String newName)
89 {
90 String oldName = name;
91 name = newName;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MODEL_SYMBOL__NAME, oldName, name));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.MODEL_SYMBOL__NAME:
107 return getName();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.MODEL_SYMBOL__NAME:
123 setName((String)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.MODEL_SYMBOL__NAME:
140 setName(NAME_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.MODEL_SYMBOL__NAME:
157 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (name: ");
174 result.append(name);
175 result.append(')');
176 return result.toString();
177 }
178
179} //ModelSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityDefinitionImpl.java
new file mode 100644
index 00000000..a346568c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityDefinitionImpl.java
@@ -0,0 +1,296 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Multiplicity Definition</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl#getLower <em>Lower</em>}</li>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl#getUpper <em>Upper</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityDefinitionImpl#isUnlimitedUpper <em>Unlimited Upper</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class MultiplicityDefinitionImpl extends MinimalEObjectImpl.Container implements MultiplicityDefinition
32{
33 /**
34 * The default value of the '{@link #getLower() <em>Lower</em>}' attribute.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getLower()
38 * @generated
39 * @ordered
40 */
41 protected static final int LOWER_EDEFAULT = 0;
42
43 /**
44 * The cached value of the '{@link #getLower() <em>Lower</em>}' attribute.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getLower()
48 * @generated
49 * @ordered
50 */
51 protected int lower = LOWER_EDEFAULT;
52
53 /**
54 * The default value of the '{@link #getUpper() <em>Upper</em>}' attribute.
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @see #getUpper()
58 * @generated
59 * @ordered
60 */
61 protected static final int UPPER_EDEFAULT = 0;
62
63 /**
64 * The cached value of the '{@link #getUpper() <em>Upper</em>}' attribute.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @see #getUpper()
68 * @generated
69 * @ordered
70 */
71 protected int upper = UPPER_EDEFAULT;
72
73 /**
74 * The default value of the '{@link #isUnlimitedUpper() <em>Unlimited Upper</em>}' attribute.
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @see #isUnlimitedUpper()
78 * @generated
79 * @ordered
80 */
81 protected static final boolean UNLIMITED_UPPER_EDEFAULT = false;
82
83 /**
84 * The cached value of the '{@link #isUnlimitedUpper() <em>Unlimited Upper</em>}' attribute.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @see #isUnlimitedUpper()
88 * @generated
89 * @ordered
90 */
91 protected boolean unlimitedUpper = UNLIMITED_UPPER_EDEFAULT;
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 protected MultiplicityDefinitionImpl()
99 {
100 super();
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 protected EClass eStaticClass()
110 {
111 return SolverLanguagePackage.Literals.MULTIPLICITY_DEFINITION;
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public int getLower()
121 {
122 return lower;
123 }
124
125 /**
126 * <!-- begin-user-doc -->
127 * <!-- end-user-doc -->
128 * @generated
129 */
130 @Override
131 public void setLower(int newLower)
132 {
133 int oldLower = lower;
134 lower = newLower;
135 if (eNotificationRequired())
136 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MULTIPLICITY_DEFINITION__LOWER, oldLower, lower));
137 }
138
139 /**
140 * <!-- begin-user-doc -->
141 * <!-- end-user-doc -->
142 * @generated
143 */
144 @Override
145 public int getUpper()
146 {
147 return upper;
148 }
149
150 /**
151 * <!-- begin-user-doc -->
152 * <!-- end-user-doc -->
153 * @generated
154 */
155 @Override
156 public void setUpper(int newUpper)
157 {
158 int oldUpper = upper;
159 upper = newUpper;
160 if (eNotificationRequired())
161 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MULTIPLICITY_DEFINITION__UPPER, oldUpper, upper));
162 }
163
164 /**
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @generated
168 */
169 @Override
170 public boolean isUnlimitedUpper()
171 {
172 return unlimitedUpper;
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 @Override
181 public void setUnlimitedUpper(boolean newUnlimitedUpper)
182 {
183 boolean oldUnlimitedUpper = unlimitedUpper;
184 unlimitedUpper = newUnlimitedUpper;
185 if (eNotificationRequired())
186 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MULTIPLICITY_DEFINITION__UNLIMITED_UPPER, oldUnlimitedUpper, unlimitedUpper));
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 @Override
195 public Object eGet(int featureID, boolean resolve, boolean coreType)
196 {
197 switch (featureID)
198 {
199 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__LOWER:
200 return getLower();
201 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UPPER:
202 return getUpper();
203 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UNLIMITED_UPPER:
204 return isUnlimitedUpper();
205 }
206 return super.eGet(featureID, resolve, coreType);
207 }
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 @Override
215 public void eSet(int featureID, Object newValue)
216 {
217 switch (featureID)
218 {
219 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__LOWER:
220 setLower((Integer)newValue);
221 return;
222 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UPPER:
223 setUpper((Integer)newValue);
224 return;
225 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UNLIMITED_UPPER:
226 setUnlimitedUpper((Boolean)newValue);
227 return;
228 }
229 super.eSet(featureID, newValue);
230 }
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
237 @Override
238 public void eUnset(int featureID)
239 {
240 switch (featureID)
241 {
242 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__LOWER:
243 setLower(LOWER_EDEFAULT);
244 return;
245 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UPPER:
246 setUpper(UPPER_EDEFAULT);
247 return;
248 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UNLIMITED_UPPER:
249 setUnlimitedUpper(UNLIMITED_UPPER_EDEFAULT);
250 return;
251 }
252 super.eUnset(featureID);
253 }
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 @Override
261 public boolean eIsSet(int featureID)
262 {
263 switch (featureID)
264 {
265 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__LOWER:
266 return lower != LOWER_EDEFAULT;
267 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UPPER:
268 return upper != UPPER_EDEFAULT;
269 case SolverLanguagePackage.MULTIPLICITY_DEFINITION__UNLIMITED_UPPER:
270 return unlimitedUpper != UNLIMITED_UPPER_EDEFAULT;
271 }
272 return super.eIsSet(featureID);
273 }
274
275 /**
276 * <!-- begin-user-doc -->
277 * <!-- end-user-doc -->
278 * @generated
279 */
280 @Override
281 public String toString()
282 {
283 if (eIsProxy()) return super.toString();
284
285 StringBuilder result = new StringBuilder(super.toString());
286 result.append(" (lower: ");
287 result.append(lower);
288 result.append(", upper: ");
289 result.append(upper);
290 result.append(", unlimitedUpper: ");
291 result.append(unlimitedUpper);
292 result.append(')');
293 return result.toString();
294 }
295
296} //MultiplicityDefinitionImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedObjectImpl.java
new file mode 100644
index 00000000..9d907661
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedObjectImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Named Object</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamedObjectImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class NamedObjectImpl extends ObjectImpl implements NamedObject
29{
30 /**
31 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getName()
35 * @generated
36 * @ordered
37 */
38 protected static final String NAME_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getName()
45 * @generated
46 * @ordered
47 */
48 protected String name = NAME_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected NamedObjectImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.NAMED_OBJECT;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public String getName()
78 {
79 return name;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setName(String newName)
89 {
90 String oldName = name;
91 name = newName;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.NAMED_OBJECT__NAME, oldName, name));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.NAMED_OBJECT__NAME:
107 return getName();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.NAMED_OBJECT__NAME:
123 setName((String)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.NAMED_OBJECT__NAME:
140 setName(NAME_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.NAMED_OBJECT__NAME:
157 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (name: ");
174 result.append(name);
175 result.append(')');
176 return result.toString();
177 }
178
179} //NamedObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NegativeImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NegativeImpl.java
new file mode 100644
index 00000000..a30b228f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NegativeImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.Negative;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Negative</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class NegativeImpl extends PolarityImpl implements Negative
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected NegativeImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.NEGATIVE;
39 }
40
41} //NegativeImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectImpl.java
new file mode 100644
index 00000000..d2f9b8d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectImpl.java
@@ -0,0 +1,40 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Object</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ObjectImpl extends ComplexObjectImpl implements org.eclipse.viatra.solver.language.solverLanguage.Object
18{
19 /**
20 * <!-- begin-user-doc -->
21 * <!-- end-user-doc -->
22 * @generated
23 */
24 protected ObjectImpl()
25 {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass()
36 {
37 return SolverLanguagePackage.Literals.OBJECT;
38 }
39
40} //ObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ParameterImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ParameterImpl.java
new file mode 100644
index 00000000..6281c4bc
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ParameterImpl.java
@@ -0,0 +1,271 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
14
15import org.eclipse.viatra.solver.language.solverLanguage.Parameter;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
18import org.eclipse.viatra.solver.language.solverLanguage.Variable;
19
20/**
21 * <!-- begin-user-doc -->
22 * An implementation of the model object '<em><b>Parameter</b></em>'.
23 * <!-- end-user-doc -->
24 * <p>
25 * The following features are implemented:
26 * </p>
27 * <ul>
28 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ParameterImpl#getVariable <em>Variable</em>}</li>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ParameterImpl#getType <em>Type</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class ParameterImpl extends MinimalEObjectImpl.Container implements Parameter
35{
36 /**
37 * The cached value of the '{@link #getVariable() <em>Variable</em>}' containment reference.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @see #getVariable()
41 * @generated
42 * @ordered
43 */
44 protected Variable variable;
45
46 /**
47 * The cached value of the '{@link #getType() <em>Type</em>}' containment reference.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @see #getType()
51 * @generated
52 * @ordered
53 */
54 protected Symbol type;
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 protected ParameterImpl()
62 {
63 super();
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 @Override
72 protected EClass eStaticClass()
73 {
74 return SolverLanguagePackage.Literals.PARAMETER;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public Variable getVariable()
84 {
85 return variable;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public NotificationChain basicSetVariable(Variable newVariable, NotificationChain msgs)
94 {
95 Variable oldVariable = variable;
96 variable = newVariable;
97 if (eNotificationRequired())
98 {
99 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PARAMETER__VARIABLE, oldVariable, newVariable);
100 if (msgs == null) msgs = notification; else msgs.add(notification);
101 }
102 return msgs;
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @Override
111 public void setVariable(Variable newVariable)
112 {
113 if (newVariable != variable)
114 {
115 NotificationChain msgs = null;
116 if (variable != null)
117 msgs = ((InternalEObject)variable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PARAMETER__VARIABLE, null, msgs);
118 if (newVariable != null)
119 msgs = ((InternalEObject)newVariable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PARAMETER__VARIABLE, null, msgs);
120 msgs = basicSetVariable(newVariable, msgs);
121 if (msgs != null) msgs.dispatch();
122 }
123 else if (eNotificationRequired())
124 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PARAMETER__VARIABLE, newVariable, newVariable));
125 }
126
127 /**
128 * <!-- begin-user-doc -->
129 * <!-- end-user-doc -->
130 * @generated
131 */
132 @Override
133 public Symbol getType()
134 {
135 return type;
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 public NotificationChain basicSetType(Symbol newType, NotificationChain msgs)
144 {
145 Symbol oldType = type;
146 type = newType;
147 if (eNotificationRequired())
148 {
149 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PARAMETER__TYPE, oldType, newType);
150 if (msgs == null) msgs = notification; else msgs.add(notification);
151 }
152 return msgs;
153 }
154
155 /**
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 @Override
161 public void setType(Symbol newType)
162 {
163 if (newType != type)
164 {
165 NotificationChain msgs = null;
166 if (type != null)
167 msgs = ((InternalEObject)type).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PARAMETER__TYPE, null, msgs);
168 if (newType != null)
169 msgs = ((InternalEObject)newType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PARAMETER__TYPE, null, msgs);
170 msgs = basicSetType(newType, msgs);
171 if (msgs != null) msgs.dispatch();
172 }
173 else if (eNotificationRequired())
174 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PARAMETER__TYPE, newType, newType));
175 }
176
177 /**
178 * <!-- begin-user-doc -->
179 * <!-- end-user-doc -->
180 * @generated
181 */
182 @Override
183 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
184 {
185 switch (featureID)
186 {
187 case SolverLanguagePackage.PARAMETER__VARIABLE:
188 return basicSetVariable(null, msgs);
189 case SolverLanguagePackage.PARAMETER__TYPE:
190 return basicSetType(null, msgs);
191 }
192 return super.eInverseRemove(otherEnd, featureID, msgs);
193 }
194
195 /**
196 * <!-- begin-user-doc -->
197 * <!-- end-user-doc -->
198 * @generated
199 */
200 @Override
201 public Object eGet(int featureID, boolean resolve, boolean coreType)
202 {
203 switch (featureID)
204 {
205 case SolverLanguagePackage.PARAMETER__VARIABLE:
206 return getVariable();
207 case SolverLanguagePackage.PARAMETER__TYPE:
208 return getType();
209 }
210 return super.eGet(featureID, resolve, coreType);
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 @Override
219 public void eSet(int featureID, Object newValue)
220 {
221 switch (featureID)
222 {
223 case SolverLanguagePackage.PARAMETER__VARIABLE:
224 setVariable((Variable)newValue);
225 return;
226 case SolverLanguagePackage.PARAMETER__TYPE:
227 setType((Symbol)newValue);
228 return;
229 }
230 super.eSet(featureID, newValue);
231 }
232
233 /**
234 * <!-- begin-user-doc -->
235 * <!-- end-user-doc -->
236 * @generated
237 */
238 @Override
239 public void eUnset(int featureID)
240 {
241 switch (featureID)
242 {
243 case SolverLanguagePackage.PARAMETER__VARIABLE:
244 setVariable((Variable)null);
245 return;
246 case SolverLanguagePackage.PARAMETER__TYPE:
247 setType((Symbol)null);
248 return;
249 }
250 super.eUnset(featureID);
251 }
252
253 /**
254 * <!-- begin-user-doc -->
255 * <!-- end-user-doc -->
256 * @generated
257 */
258 @Override
259 public boolean eIsSet(int featureID)
260 {
261 switch (featureID)
262 {
263 case SolverLanguagePackage.PARAMETER__VARIABLE:
264 return variable != null;
265 case SolverLanguagePackage.PARAMETER__TYPE:
266 return type != null;
267 }
268 return super.eIsSet(featureID);
269 }
270
271} //ParameterImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PartialitySymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PartialitySymbolImpl.java
new file mode 100644
index 00000000..efc2c5f5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PartialitySymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Partiality Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class PartialitySymbolImpl extends SymbolImpl implements PartialitySymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected PartialitySymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.PARTIALITY_SYMBOL;
39 }
40
41} //PartialitySymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PatternBodyImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PatternBodyImpl.java
new file mode 100644
index 00000000..5cd03fbf
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PatternBodyImpl.java
@@ -0,0 +1,169 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
16
17import org.eclipse.emf.ecore.util.EObjectContainmentEList;
18import org.eclipse.emf.ecore.util.InternalEList;
19
20import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
21import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
22import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Pattern Body</b></em>'.
27 * <!-- end-user-doc -->
28 * <p>
29 * The following features are implemented:
30 * </p>
31 * <ul>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PatternBodyImpl#getConstraints <em>Constraints</em>}</li>
33 * </ul>
34 *
35 * @generated
36 */
37public class PatternBodyImpl extends MinimalEObjectImpl.Container implements PatternBody
38{
39 /**
40 * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getConstraints()
44 * @generated
45 * @ordered
46 */
47 protected EList<Constraint> constraints;
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 protected PatternBodyImpl()
55 {
56 super();
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 @Override
65 protected EClass eStaticClass()
66 {
67 return SolverLanguagePackage.Literals.PATTERN_BODY;
68 }
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 @Override
76 public EList<Constraint> getConstraints()
77 {
78 if (constraints == null)
79 {
80 constraints = new EObjectContainmentEList<Constraint>(Constraint.class, this, SolverLanguagePackage.PATTERN_BODY__CONSTRAINTS);
81 }
82 return constraints;
83 }
84
85 /**
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @generated
89 */
90 @Override
91 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
92 {
93 switch (featureID)
94 {
95 case SolverLanguagePackage.PATTERN_BODY__CONSTRAINTS:
96 return ((InternalEList<?>)getConstraints()).basicRemove(otherEnd, msgs);
97 }
98 return super.eInverseRemove(otherEnd, featureID, msgs);
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 @Override
107 public Object eGet(int featureID, boolean resolve, boolean coreType)
108 {
109 switch (featureID)
110 {
111 case SolverLanguagePackage.PATTERN_BODY__CONSTRAINTS:
112 return getConstraints();
113 }
114 return super.eGet(featureID, resolve, coreType);
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 @SuppressWarnings("unchecked")
123 @Override
124 public void eSet(int featureID, Object newValue)
125 {
126 switch (featureID)
127 {
128 case SolverLanguagePackage.PATTERN_BODY__CONSTRAINTS:
129 getConstraints().clear();
130 getConstraints().addAll((Collection<? extends Constraint>)newValue);
131 return;
132 }
133 super.eSet(featureID, newValue);
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public void eUnset(int featureID)
143 {
144 switch (featureID)
145 {
146 case SolverLanguagePackage.PATTERN_BODY__CONSTRAINTS:
147 getConstraints().clear();
148 return;
149 }
150 super.eUnset(featureID);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @Override
159 public boolean eIsSet(int featureID)
160 {
161 switch (featureID)
162 {
163 case SolverLanguagePackage.PATTERN_BODY__CONSTRAINTS:
164 return constraints != null && !constraints.isEmpty();
165 }
166 return super.eIsSet(featureID);
167 }
168
169} //PatternBodyImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PolarityImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PolarityImpl.java
new file mode 100644
index 00000000..7c2ae07d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PolarityImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.Polarity;
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Polarity</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class PolarityImpl extends MinimalEObjectImpl.Container implements Polarity
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected PolarityImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.POLARITY;
41 }
42
43} //PolarityImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PositiveImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PositiveImpl.java
new file mode 100644
index 00000000..130cfe7a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PositiveImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.Positive;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Positive</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class PositiveImpl extends PolarityImpl implements Positive
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected PositiveImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.POSITIVE;
39 }
40
41} //PositiveImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java
new file mode 100644
index 00000000..947d74bb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java
@@ -0,0 +1,207 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.util.EObjectContainmentEList;
16import org.eclipse.emf.ecore.util.InternalEList;
17
18import org.eclipse.viatra.solver.language.solverLanguage.Parameter;
19import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
20import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
21import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Predicate</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl#getParameters <em>Parameters</em>}</li>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl#getBodies <em>Bodies</em>}</li>
33 * </ul>
34 *
35 * @generated
36 */
37public class PredicateImpl extends StatementImpl implements Predicate
38{
39 /**
40 * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getParameters()
44 * @generated
45 * @ordered
46 */
47 protected EList<Parameter> parameters;
48
49 /**
50 * The cached value of the '{@link #getBodies() <em>Bodies</em>}' containment reference list.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getBodies()
54 * @generated
55 * @ordered
56 */
57 protected EList<PatternBody> bodies;
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 protected PredicateImpl()
65 {
66 super();
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 @Override
75 protected EClass eStaticClass()
76 {
77 return SolverLanguagePackage.Literals.PREDICATE;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 @Override
86 public EList<Parameter> getParameters()
87 {
88 if (parameters == null)
89 {
90 parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this, SolverLanguagePackage.PREDICATE__PARAMETERS);
91 }
92 return parameters;
93 }
94
95 /**
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @generated
99 */
100 @Override
101 public EList<PatternBody> getBodies()
102 {
103 if (bodies == null)
104 {
105 bodies = new EObjectContainmentEList<PatternBody>(PatternBody.class, this, SolverLanguagePackage.PREDICATE__BODIES);
106 }
107 return bodies;
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
117 {
118 switch (featureID)
119 {
120 case SolverLanguagePackage.PREDICATE__PARAMETERS:
121 return ((InternalEList<?>)getParameters()).basicRemove(otherEnd, msgs);
122 case SolverLanguagePackage.PREDICATE__BODIES:
123 return ((InternalEList<?>)getBodies()).basicRemove(otherEnd, msgs);
124 }
125 return super.eInverseRemove(otherEnd, featureID, msgs);
126 }
127
128 /**
129 * <!-- begin-user-doc -->
130 * <!-- end-user-doc -->
131 * @generated
132 */
133 @Override
134 public Object eGet(int featureID, boolean resolve, boolean coreType)
135 {
136 switch (featureID)
137 {
138 case SolverLanguagePackage.PREDICATE__PARAMETERS:
139 return getParameters();
140 case SolverLanguagePackage.PREDICATE__BODIES:
141 return getBodies();
142 }
143 return super.eGet(featureID, resolve, coreType);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @SuppressWarnings("unchecked")
152 @Override
153 public void eSet(int featureID, Object newValue)
154 {
155 switch (featureID)
156 {
157 case SolverLanguagePackage.PREDICATE__PARAMETERS:
158 getParameters().clear();
159 getParameters().addAll((Collection<? extends Parameter>)newValue);
160 return;
161 case SolverLanguagePackage.PREDICATE__BODIES:
162 getBodies().clear();
163 getBodies().addAll((Collection<? extends PatternBody>)newValue);
164 return;
165 }
166 super.eSet(featureID, newValue);
167 }
168
169 /**
170 * <!-- begin-user-doc -->
171 * <!-- end-user-doc -->
172 * @generated
173 */
174 @Override
175 public void eUnset(int featureID)
176 {
177 switch (featureID)
178 {
179 case SolverLanguagePackage.PREDICATE__PARAMETERS:
180 getParameters().clear();
181 return;
182 case SolverLanguagePackage.PREDICATE__BODIES:
183 getBodies().clear();
184 return;
185 }
186 super.eUnset(featureID);
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 @Override
195 public boolean eIsSet(int featureID)
196 {
197 switch (featureID)
198 {
199 case SolverLanguagePackage.PREDICATE__PARAMETERS:
200 return parameters != null && !parameters.isEmpty();
201 case SolverLanguagePackage.PREDICATE__BODIES:
202 return bodies != null && !bodies.isEmpty();
203 }
204 return super.eIsSet(featureID);
205 }
206
207} //PredicateImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateSymbolImpl.java
new file mode 100644
index 00000000..f49c6701
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateSymbolImpl.java
@@ -0,0 +1,196 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.ecore.EClass;
10import org.eclipse.emf.ecore.InternalEObject;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
15import org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Predicate Symbol</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateSymbolImpl#getSymbol <em>Symbol</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class PredicateSymbolImpl extends PredicateImpl implements PredicateSymbol
32{
33 /**
34 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getSymbol()
38 * @generated
39 * @ordered
40 */
41 protected ModelSymbol symbol;
42
43 /**
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 protected PredicateSymbolImpl()
49 {
50 super();
51 }
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 @Override
59 protected EClass eStaticClass()
60 {
61 return SolverLanguagePackage.Literals.PREDICATE_SYMBOL;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 @Override
70 public ModelSymbol getSymbol()
71 {
72 return symbol;
73 }
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 public NotificationChain basicSetSymbol(ModelSymbol newSymbol, NotificationChain msgs)
81 {
82 ModelSymbol oldSymbol = symbol;
83 symbol = newSymbol;
84 if (eNotificationRequired())
85 {
86 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL, oldSymbol, newSymbol);
87 if (msgs == null) msgs = notification; else msgs.add(notification);
88 }
89 return msgs;
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public void setSymbol(ModelSymbol newSymbol)
99 {
100 if (newSymbol != symbol)
101 {
102 NotificationChain msgs = null;
103 if (symbol != null)
104 msgs = ((InternalEObject)symbol).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL, null, msgs);
105 if (newSymbol != null)
106 msgs = ((InternalEObject)newSymbol).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL, null, msgs);
107 msgs = basicSetSymbol(newSymbol, msgs);
108 if (msgs != null) msgs.dispatch();
109 }
110 else if (eNotificationRequired())
111 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL, newSymbol, newSymbol));
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
121 {
122 switch (featureID)
123 {
124 case SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL:
125 return basicSetSymbol(null, msgs);
126 }
127 return super.eInverseRemove(otherEnd, featureID, msgs);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public Object eGet(int featureID, boolean resolve, boolean coreType)
137 {
138 switch (featureID)
139 {
140 case SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL:
141 return getSymbol();
142 }
143 return super.eGet(featureID, resolve, coreType);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public void eSet(int featureID, Object newValue)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL:
157 setSymbol((ModelSymbol)newValue);
158 return;
159 }
160 super.eSet(featureID, newValue);
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 @Override
169 public void eUnset(int featureID)
170 {
171 switch (featureID)
172 {
173 case SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL:
174 setSymbol((ModelSymbol)null);
175 return;
176 }
177 super.eUnset(featureID);
178 }
179
180 /**
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @generated
184 */
185 @Override
186 public boolean eIsSet(int featureID)
187 {
188 switch (featureID)
189 {
190 case SolverLanguagePackage.PREDICATE_SYMBOL__SYMBOL:
191 return symbol != null;
192 }
193 return super.eIsSet(featureID);
194 }
195
196} //PredicateSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java
new file mode 100644
index 00000000..e5cc3585
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java
@@ -0,0 +1,169 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.util.Collection;
7
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
16
17import org.eclipse.emf.ecore.util.EObjectContainmentEList;
18import org.eclipse.emf.ecore.util.InternalEList;
19
20import org.eclipse.viatra.solver.language.solverLanguage.Problem;
21import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
22import org.eclipse.viatra.solver.language.solverLanguage.Statement;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Problem</b></em>'.
27 * <!-- end-user-doc -->
28 * <p>
29 * The following features are implemented:
30 * </p>
31 * <ul>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getStatements <em>Statements</em>}</li>
33 * </ul>
34 *
35 * @generated
36 */
37public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem
38{
39 /**
40 * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getStatements()
44 * @generated
45 * @ordered
46 */
47 protected EList<Statement> statements;
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 protected ProblemImpl()
55 {
56 super();
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 @Override
65 protected EClass eStaticClass()
66 {
67 return SolverLanguagePackage.Literals.PROBLEM;
68 }
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 @Override
76 public EList<Statement> getStatements()
77 {
78 if (statements == null)
79 {
80 statements = new EObjectContainmentEList<Statement>(Statement.class, this, SolverLanguagePackage.PROBLEM__STATEMENTS);
81 }
82 return statements;
83 }
84
85 /**
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @generated
89 */
90 @Override
91 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
92 {
93 switch (featureID)
94 {
95 case SolverLanguagePackage.PROBLEM__STATEMENTS:
96 return ((InternalEList<?>)getStatements()).basicRemove(otherEnd, msgs);
97 }
98 return super.eInverseRemove(otherEnd, featureID, msgs);
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 @Override
107 public Object eGet(int featureID, boolean resolve, boolean coreType)
108 {
109 switch (featureID)
110 {
111 case SolverLanguagePackage.PROBLEM__STATEMENTS:
112 return getStatements();
113 }
114 return super.eGet(featureID, resolve, coreType);
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 @SuppressWarnings("unchecked")
123 @Override
124 public void eSet(int featureID, Object newValue)
125 {
126 switch (featureID)
127 {
128 case SolverLanguagePackage.PROBLEM__STATEMENTS:
129 getStatements().clear();
130 getStatements().addAll((Collection<? extends Statement>)newValue);
131 return;
132 }
133 super.eSet(featureID, newValue);
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public void eUnset(int featureID)
143 {
144 switch (featureID)
145 {
146 case SolverLanguagePackage.PROBLEM__STATEMENTS:
147 getStatements().clear();
148 return;
149 }
150 super.eUnset(featureID);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @Override
159 public boolean eIsSet(int featureID)
160 {
161 switch (featureID)
162 {
163 case SolverLanguagePackage.PROBLEM__STATEMENTS:
164 return statements != null && !statements.isEmpty();
165 }
166 return super.eIsSet(featureID);
167 }
168
169} //ProblemImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealObjectImpl.java
new file mode 100644
index 00000000..bc32a9a6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealObjectImpl.java
@@ -0,0 +1,181 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import java.math.BigDecimal;
7
8import org.eclipse.emf.common.notify.Notification;
9
10import org.eclipse.emf.ecore.EClass;
11
12import org.eclipse.emf.ecore.impl.ENotificationImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.RealObject;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Real Object</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealObjectImpl#getValue <em>Value</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class RealObjectImpl extends DataObjectImpl implements RealObject
31{
32 /**
33 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getValue()
37 * @generated
38 * @ordered
39 */
40 protected static final BigDecimal VALUE_EDEFAULT = null;
41
42 /**
43 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getValue()
47 * @generated
48 * @ordered
49 */
50 protected BigDecimal value = VALUE_EDEFAULT;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected RealObjectImpl()
58 {
59 super();
60 }
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 @Override
68 protected EClass eStaticClass()
69 {
70 return SolverLanguagePackage.Literals.REAL_OBJECT;
71 }
72
73 /**
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @generated
77 */
78 @Override
79 public BigDecimal getValue()
80 {
81 return value;
82 }
83
84 /**
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @generated
88 */
89 @Override
90 public void setValue(BigDecimal newValue)
91 {
92 BigDecimal oldValue = value;
93 value = newValue;
94 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.REAL_OBJECT__VALUE, oldValue, value));
96 }
97
98 /**
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @generated
102 */
103 @Override
104 public Object eGet(int featureID, boolean resolve, boolean coreType)
105 {
106 switch (featureID)
107 {
108 case SolverLanguagePackage.REAL_OBJECT__VALUE:
109 return getValue();
110 }
111 return super.eGet(featureID, resolve, coreType);
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public void eSet(int featureID, Object newValue)
121 {
122 switch (featureID)
123 {
124 case SolverLanguagePackage.REAL_OBJECT__VALUE:
125 setValue((BigDecimal)newValue);
126 return;
127 }
128 super.eSet(featureID, newValue);
129 }
130
131 /**
132 * <!-- begin-user-doc -->
133 * <!-- end-user-doc -->
134 * @generated
135 */
136 @Override
137 public void eUnset(int featureID)
138 {
139 switch (featureID)
140 {
141 case SolverLanguagePackage.REAL_OBJECT__VALUE:
142 setValue(VALUE_EDEFAULT);
143 return;
144 }
145 super.eUnset(featureID);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public boolean eIsSet(int featureID)
155 {
156 switch (featureID)
157 {
158 case SolverLanguagePackage.REAL_OBJECT__VALUE:
159 return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
160 }
161 return super.eIsSet(featureID);
162 }
163
164 /**
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @generated
168 */
169 @Override
170 public String toString()
171 {
172 if (eIsProxy()) return super.toString();
173
174 StringBuilder result = new StringBuilder(super.toString());
175 result.append(" (value: ");
176 result.append(value);
177 result.append(')');
178 return result.toString();
179 }
180
181} //RealObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealSymbolImpl.java
new file mode 100644
index 00000000..8cfd0980
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.RealSymbol;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Real Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class RealSymbolImpl extends DataSymbolImpl implements RealSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected RealSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.REAL_SYMBOL;
39 }
40
41} //RealSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReflexiveClosureImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReflexiveClosureImpl.java
new file mode 100644
index 00000000..111b48cb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReflexiveClosureImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure;
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Reflexive Closure</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class ReflexiveClosureImpl extends ClosureTypeImpl implements ReflexiveClosure
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected ReflexiveClosureImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.REFLEXIVE_CLOSURE;
39 }
40
41} //ReflexiveClosureImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java
new file mode 100644
index 00000000..12ffc551
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java
@@ -0,0 +1,851 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7import org.eclipse.emf.ecore.EObject;
8import org.eclipse.emf.ecore.EPackage;
9
10import org.eclipse.emf.ecore.impl.EFactoryImpl;
11
12import org.eclipse.emf.ecore.plugin.EcorePlugin;
13
14import org.eclipse.viatra.solver.language.solverLanguage.AllInstances;
15import org.eclipse.viatra.solver.language.solverLanguage.AllObjects;
16import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
17import org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse;
18import org.eclipse.viatra.solver.language.solverLanguage.BooleanObject;
19import org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol;
20import org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue;
21import org.eclipse.viatra.solver.language.solverLanguage.BooleanValue;
22import org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation;
23import org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation;
24import org.eclipse.viatra.solver.language.solverLanguage.ClosureType;
25import org.eclipse.viatra.solver.language.solverLanguage.ComplexObject;
26import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
27import org.eclipse.viatra.solver.language.solverLanguage.DataObject;
28import org.eclipse.viatra.solver.language.solverLanguage.DataSymbol;
29import org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation;
30import org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation;
31import org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol;
32import org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate;
33import org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol;
34import org.eclipse.viatra.solver.language.solverLanguage.False;
35import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
36import org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation;
37import org.eclipse.viatra.solver.language.solverLanguage.IntObject;
38import org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol;
39import org.eclipse.viatra.solver.language.solverLanguage.Interpretation;
40import org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure;
41import org.eclipse.viatra.solver.language.solverLanguage.Literal;
42import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
43import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
44import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
45import org.eclipse.viatra.solver.language.solverLanguage.Negative;
46import org.eclipse.viatra.solver.language.solverLanguage.Parameter;
47import org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol;
48import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
49import org.eclipse.viatra.solver.language.solverLanguage.Polarity;
50import org.eclipse.viatra.solver.language.solverLanguage.Positive;
51import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
52import org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol;
53import org.eclipse.viatra.solver.language.solverLanguage.Problem;
54import org.eclipse.viatra.solver.language.solverLanguage.RealObject;
55import org.eclipse.viatra.solver.language.solverLanguage.RealSymbol;
56import org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure;
57import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory;
58import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
59import org.eclipse.viatra.solver.language.solverLanguage.Statement;
60import org.eclipse.viatra.solver.language.solverLanguage.StringObject;
61import org.eclipse.viatra.solver.language.solverLanguage.StringSymbol;
62import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
63import org.eclipse.viatra.solver.language.solverLanguage.True;
64import org.eclipse.viatra.solver.language.solverLanguage.TruthValue;
65import org.eclipse.viatra.solver.language.solverLanguage.Unknown;
66import org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject;
67import org.eclipse.viatra.solver.language.solverLanguage.Variable;
68
69/**
70 * <!-- begin-user-doc -->
71 * An implementation of the model <b>Factory</b>.
72 * <!-- end-user-doc -->
73 * @generated
74 */
75public class SolverLanguageFactoryImpl extends EFactoryImpl implements SolverLanguageFactory
76{
77 /**
78 * Creates the default factory implementation.
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 public static SolverLanguageFactory init()
84 {
85 try
86 {
87 SolverLanguageFactory theSolverLanguageFactory = (SolverLanguageFactory)EPackage.Registry.INSTANCE.getEFactory(SolverLanguagePackage.eNS_URI);
88 if (theSolverLanguageFactory != null)
89 {
90 return theSolverLanguageFactory;
91 }
92 }
93 catch (Exception exception)
94 {
95 EcorePlugin.INSTANCE.log(exception);
96 }
97 return new SolverLanguageFactoryImpl();
98 }
99
100 /**
101 * Creates an instance of the factory.
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 public SolverLanguageFactoryImpl()
107 {
108 super();
109 }
110
111 /**
112 * <!-- begin-user-doc -->
113 * <!-- end-user-doc -->
114 * @generated
115 */
116 @Override
117 public EObject create(EClass eClass)
118 {
119 switch (eClass.getClassifierID())
120 {
121 case SolverLanguagePackage.PROBLEM: return createProblem();
122 case SolverLanguagePackage.STATEMENT: return createStatement();
123 case SolverLanguagePackage.BOOLEAN_VALUE: return createBooleanValue();
124 case SolverLanguagePackage.TRUTH_VALUE: return createTruthValue();
125 case SolverLanguagePackage.INTERPRETATION: return createInterpretation();
126 case SolverLanguagePackage.BASIC_INTERPRETATION: return createBasicInterpretation();
127 case SolverLanguagePackage.SYMBOL: return createSymbol();
128 case SolverLanguagePackage.MODEL_SYMBOL: return createModelSymbol();
129 case SolverLanguagePackage.PARTIALITY_SYMBOL: return createPartialitySymbol();
130 case SolverLanguagePackage.EXIST_SYMBOL: return createExistSymbol();
131 case SolverLanguagePackage.EQUALS_SYMBOL: return createEqualsSymbol();
132 case SolverLanguagePackage.DATA_SYMBOL: return createDataSymbol();
133 case SolverLanguagePackage.BOOLEAN_SYMBOL: return createBooleanSymbol();
134 case SolverLanguagePackage.INTEGER_SYMBOL: return createIntegerSymbol();
135 case SolverLanguagePackage.REAL_SYMBOL: return createRealSymbol();
136 case SolverLanguagePackage.STRING_SYMBOL: return createStringSymbol();
137 case SolverLanguagePackage.COMPLEX_OBJECT: return createComplexObject();
138 case SolverLanguagePackage.OBJECT: return createObject();
139 case SolverLanguagePackage.NAMED_OBJECT: return createNamedObject();
140 case SolverLanguagePackage.UNNAMED_OBJECT: return createUnnamedObject();
141 case SolverLanguagePackage.DATA_OBJECT: return createDataObject();
142 case SolverLanguagePackage.BOOLEAN_OBJECT: return createBooleanObject();
143 case SolverLanguagePackage.INT_OBJECT: return createIntObject();
144 case SolverLanguagePackage.REAL_OBJECT: return createRealObject();
145 case SolverLanguagePackage.STRING_OBJECT: return createStringObject();
146 case SolverLanguagePackage.PREDICATE: return createPredicate();
147 case SolverLanguagePackage.PREDICATE_SYMBOL: return createPredicateSymbol();
148 case SolverLanguagePackage.ERROR_PREDICATE: return createErrorPredicate();
149 case SolverLanguagePackage.PARAMETER: return createParameter();
150 case SolverLanguagePackage.PATTERN_BODY: return createPatternBody();
151 case SolverLanguagePackage.POLARITY: return createPolarity();
152 case SolverLanguagePackage.CONSTRAINT: return createConstraint();
153 case SolverLanguagePackage.CLOSURE_TYPE: return createClosureType();
154 case SolverLanguagePackage.LITERAL: return createLiteral();
155 case SolverLanguagePackage.VARIABLE: return createVariable();
156 case SolverLanguagePackage.ALL_INSTANCES: return createAllInstances();
157 case SolverLanguagePackage.ALL_OBJECTS: return createAllObjects();
158 case SolverLanguagePackage.DEFAULT_INTERPRETATION: return createDefaultInterpretation();
159 case SolverLanguagePackage.CD_INTERPRETATION: return createCDInterpretation();
160 case SolverLanguagePackage.CLASS_INTERPRETATION: return createClassInterpretation();
161 case SolverLanguagePackage.ENUM_INTERPRETATION: return createEnumInterpretation();
162 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION: return createFieldRelationInterpretation();
163 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION: return createGlobalRelationInterpretation();
164 case SolverLanguagePackage.MULTIPLICITY_DEFINITION: return createMultiplicityDefinition();
165 case SolverLanguagePackage.BOOLEAN_TRUE: return createBooleanTrue();
166 case SolverLanguagePackage.BOOLEAN_FALSE: return createBooleanFalse();
167 case SolverLanguagePackage.TRUE: return createTrue();
168 case SolverLanguagePackage.FALSE: return createFalse();
169 case SolverLanguagePackage.UNKNOWN: return createUnknown();
170 case SolverLanguagePackage.ERROR: return createError();
171 case SolverLanguagePackage.POSITIVE: return createPositive();
172 case SolverLanguagePackage.NEGATIVE: return createNegative();
173 case SolverLanguagePackage.REFLEXIVE_CLOSURE: return createReflexiveClosure();
174 case SolverLanguagePackage.IRREFLEXIVE_CLOSURE: return createIrreflexiveClosure();
175 default:
176 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
177 }
178 }
179
180 /**
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @generated
184 */
185 @Override
186 public Problem createProblem()
187 {
188 ProblemImpl problem = new ProblemImpl();
189 return problem;
190 }
191
192 /**
193 * <!-- begin-user-doc -->
194 * <!-- end-user-doc -->
195 * @generated
196 */
197 @Override
198 public Statement createStatement()
199 {
200 StatementImpl statement = new StatementImpl();
201 return statement;
202 }
203
204 /**
205 * <!-- begin-user-doc -->
206 * <!-- end-user-doc -->
207 * @generated
208 */
209 @Override
210 public BooleanValue createBooleanValue()
211 {
212 BooleanValueImpl booleanValue = new BooleanValueImpl();
213 return booleanValue;
214 }
215
216 /**
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 */
221 @Override
222 public TruthValue createTruthValue()
223 {
224 TruthValueImpl truthValue = new TruthValueImpl();
225 return truthValue;
226 }
227
228 /**
229 * <!-- begin-user-doc -->
230 * <!-- end-user-doc -->
231 * @generated
232 */
233 @Override
234 public Interpretation createInterpretation()
235 {
236 InterpretationImpl interpretation = new InterpretationImpl();
237 return interpretation;
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public BasicInterpretation createBasicInterpretation()
247 {
248 BasicInterpretationImpl basicInterpretation = new BasicInterpretationImpl();
249 return basicInterpretation;
250 }
251
252 /**
253 * <!-- begin-user-doc -->
254 * <!-- end-user-doc -->
255 * @generated
256 */
257 @Override
258 public Symbol createSymbol()
259 {
260 SymbolImpl symbol = new SymbolImpl();
261 return symbol;
262 }
263
264 /**
265 * <!-- begin-user-doc -->
266 * <!-- end-user-doc -->
267 * @generated
268 */
269 @Override
270 public ModelSymbol createModelSymbol()
271 {
272 ModelSymbolImpl modelSymbol = new ModelSymbolImpl();
273 return modelSymbol;
274 }
275
276 /**
277 * <!-- begin-user-doc -->
278 * <!-- end-user-doc -->
279 * @generated
280 */
281 @Override
282 public PartialitySymbol createPartialitySymbol()
283 {
284 PartialitySymbolImpl partialitySymbol = new PartialitySymbolImpl();
285 return partialitySymbol;
286 }
287
288 /**
289 * <!-- begin-user-doc -->
290 * <!-- end-user-doc -->
291 * @generated
292 */
293 @Override
294 public ExistSymbol createExistSymbol()
295 {
296 ExistSymbolImpl existSymbol = new ExistSymbolImpl();
297 return existSymbol;
298 }
299
300 /**
301 * <!-- begin-user-doc -->
302 * <!-- end-user-doc -->
303 * @generated
304 */
305 @Override
306 public EqualsSymbol createEqualsSymbol()
307 {
308 EqualsSymbolImpl equalsSymbol = new EqualsSymbolImpl();
309 return equalsSymbol;
310 }
311
312 /**
313 * <!-- begin-user-doc -->
314 * <!-- end-user-doc -->
315 * @generated
316 */
317 @Override
318 public DataSymbol createDataSymbol()
319 {
320 DataSymbolImpl dataSymbol = new DataSymbolImpl();
321 return dataSymbol;
322 }
323
324 /**
325 * <!-- begin-user-doc -->
326 * <!-- end-user-doc -->
327 * @generated
328 */
329 @Override
330 public BooleanSymbol createBooleanSymbol()
331 {
332 BooleanSymbolImpl booleanSymbol = new BooleanSymbolImpl();
333 return booleanSymbol;
334 }
335
336 /**
337 * <!-- begin-user-doc -->
338 * <!-- end-user-doc -->
339 * @generated
340 */
341 @Override
342 public IntegerSymbol createIntegerSymbol()
343 {
344 IntegerSymbolImpl integerSymbol = new IntegerSymbolImpl();
345 return integerSymbol;
346 }
347
348 /**
349 * <!-- begin-user-doc -->
350 * <!-- end-user-doc -->
351 * @generated
352 */
353 @Override
354 public RealSymbol createRealSymbol()
355 {
356 RealSymbolImpl realSymbol = new RealSymbolImpl();
357 return realSymbol;
358 }
359
360 /**
361 * <!-- begin-user-doc -->
362 * <!-- end-user-doc -->
363 * @generated
364 */
365 @Override
366 public StringSymbol createStringSymbol()
367 {
368 StringSymbolImpl stringSymbol = new StringSymbolImpl();
369 return stringSymbol;
370 }
371
372 /**
373 * <!-- begin-user-doc -->
374 * <!-- end-user-doc -->
375 * @generated
376 */
377 @Override
378 public ComplexObject createComplexObject()
379 {
380 ComplexObjectImpl complexObject = new ComplexObjectImpl();
381 return complexObject;
382 }
383
384 /**
385 * <!-- begin-user-doc -->
386 * <!-- end-user-doc -->
387 * @generated
388 */
389 @Override
390 public org.eclipse.viatra.solver.language.solverLanguage.Object createObject()
391 {
392 ObjectImpl object = new ObjectImpl();
393 return object;
394 }
395
396 /**
397 * <!-- begin-user-doc -->
398 * <!-- end-user-doc -->
399 * @generated
400 */
401 @Override
402 public NamedObject createNamedObject()
403 {
404 NamedObjectImpl namedObject = new NamedObjectImpl();
405 return namedObject;
406 }
407
408 /**
409 * <!-- begin-user-doc -->
410 * <!-- end-user-doc -->
411 * @generated
412 */
413 @Override
414 public UnnamedObject createUnnamedObject()
415 {
416 UnnamedObjectImpl unnamedObject = new UnnamedObjectImpl();
417 return unnamedObject;
418 }
419
420 /**
421 * <!-- begin-user-doc -->
422 * <!-- end-user-doc -->
423 * @generated
424 */
425 @Override
426 public DataObject createDataObject()
427 {
428 DataObjectImpl dataObject = new DataObjectImpl();
429 return dataObject;
430 }
431
432 /**
433 * <!-- begin-user-doc -->
434 * <!-- end-user-doc -->
435 * @generated
436 */
437 @Override
438 public BooleanObject createBooleanObject()
439 {
440 BooleanObjectImpl booleanObject = new BooleanObjectImpl();
441 return booleanObject;
442 }
443
444 /**
445 * <!-- begin-user-doc -->
446 * <!-- end-user-doc -->
447 * @generated
448 */
449 @Override
450 public IntObject createIntObject()
451 {
452 IntObjectImpl intObject = new IntObjectImpl();
453 return intObject;
454 }
455
456 /**
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 */
461 @Override
462 public RealObject createRealObject()
463 {
464 RealObjectImpl realObject = new RealObjectImpl();
465 return realObject;
466 }
467
468 /**
469 * <!-- begin-user-doc -->
470 * <!-- end-user-doc -->
471 * @generated
472 */
473 @Override
474 public StringObject createStringObject()
475 {
476 StringObjectImpl stringObject = new StringObjectImpl();
477 return stringObject;
478 }
479
480 /**
481 * <!-- begin-user-doc -->
482 * <!-- end-user-doc -->
483 * @generated
484 */
485 @Override
486 public Predicate createPredicate()
487 {
488 PredicateImpl predicate = new PredicateImpl();
489 return predicate;
490 }
491
492 /**
493 * <!-- begin-user-doc -->
494 * <!-- end-user-doc -->
495 * @generated
496 */
497 @Override
498 public PredicateSymbol createPredicateSymbol()
499 {
500 PredicateSymbolImpl predicateSymbol = new PredicateSymbolImpl();
501 return predicateSymbol;
502 }
503
504 /**
505 * <!-- begin-user-doc -->
506 * <!-- end-user-doc -->
507 * @generated
508 */
509 @Override
510 public ErrorPredicate createErrorPredicate()
511 {
512 ErrorPredicateImpl errorPredicate = new ErrorPredicateImpl();
513 return errorPredicate;
514 }
515
516 /**
517 * <!-- begin-user-doc -->
518 * <!-- end-user-doc -->
519 * @generated
520 */
521 @Override
522 public Parameter createParameter()
523 {
524 ParameterImpl parameter = new ParameterImpl();
525 return parameter;
526 }
527
528 /**
529 * <!-- begin-user-doc -->
530 * <!-- end-user-doc -->
531 * @generated
532 */
533 @Override
534 public PatternBody createPatternBody()
535 {
536 PatternBodyImpl patternBody = new PatternBodyImpl();
537 return patternBody;
538 }
539
540 /**
541 * <!-- begin-user-doc -->
542 * <!-- end-user-doc -->
543 * @generated
544 */
545 @Override
546 public Polarity createPolarity()
547 {
548 PolarityImpl polarity = new PolarityImpl();
549 return polarity;
550 }
551
552 /**
553 * <!-- begin-user-doc -->
554 * <!-- end-user-doc -->
555 * @generated
556 */
557 @Override
558 public Constraint createConstraint()
559 {
560 ConstraintImpl constraint = new ConstraintImpl();
561 return constraint;
562 }
563
564 /**
565 * <!-- begin-user-doc -->
566 * <!-- end-user-doc -->
567 * @generated
568 */
569 @Override
570 public ClosureType createClosureType()
571 {
572 ClosureTypeImpl closureType = new ClosureTypeImpl();
573 return closureType;
574 }
575
576 /**
577 * <!-- begin-user-doc -->
578 * <!-- end-user-doc -->
579 * @generated
580 */
581 @Override
582 public Literal createLiteral()
583 {
584 LiteralImpl literal = new LiteralImpl();
585 return literal;
586 }
587
588 /**
589 * <!-- begin-user-doc -->
590 * <!-- end-user-doc -->
591 * @generated
592 */
593 @Override
594 public Variable createVariable()
595 {
596 VariableImpl variable = new VariableImpl();
597 return variable;
598 }
599
600 /**
601 * <!-- begin-user-doc -->
602 * <!-- end-user-doc -->
603 * @generated
604 */
605 @Override
606 public AllInstances createAllInstances()
607 {
608 AllInstancesImpl allInstances = new AllInstancesImpl();
609 return allInstances;
610 }
611
612 /**
613 * <!-- begin-user-doc -->
614 * <!-- end-user-doc -->
615 * @generated
616 */
617 @Override
618 public AllObjects createAllObjects()
619 {
620 AllObjectsImpl allObjects = new AllObjectsImpl();
621 return allObjects;
622 }
623
624 /**
625 * <!-- begin-user-doc -->
626 * <!-- end-user-doc -->
627 * @generated
628 */
629 @Override
630 public DefaultInterpretation createDefaultInterpretation()
631 {
632 DefaultInterpretationImpl defaultInterpretation = new DefaultInterpretationImpl();
633 return defaultInterpretation;
634 }
635
636 /**
637 * <!-- begin-user-doc -->
638 * <!-- end-user-doc -->
639 * @generated
640 */
641 @Override
642 public CDInterpretation createCDInterpretation()
643 {
644 CDInterpretationImpl cdInterpretation = new CDInterpretationImpl();
645 return cdInterpretation;
646 }
647
648 /**
649 * <!-- begin-user-doc -->
650 * <!-- end-user-doc -->
651 * @generated
652 */
653 @Override
654 public ClassInterpretation createClassInterpretation()
655 {
656 ClassInterpretationImpl classInterpretation = new ClassInterpretationImpl();
657 return classInterpretation;
658 }
659
660 /**
661 * <!-- begin-user-doc -->
662 * <!-- end-user-doc -->
663 * @generated
664 */
665 @Override
666 public EnumInterpretation createEnumInterpretation()
667 {
668 EnumInterpretationImpl enumInterpretation = new EnumInterpretationImpl();
669 return enumInterpretation;
670 }
671
672 /**
673 * <!-- begin-user-doc -->
674 * <!-- end-user-doc -->
675 * @generated
676 */
677 @Override
678 public FieldRelationInterpretation createFieldRelationInterpretation()
679 {
680 FieldRelationInterpretationImpl fieldRelationInterpretation = new FieldRelationInterpretationImpl();
681 return fieldRelationInterpretation;
682 }
683
684 /**
685 * <!-- begin-user-doc -->
686 * <!-- end-user-doc -->
687 * @generated
688 */
689 @Override
690 public GlobalRelationInterpretation createGlobalRelationInterpretation()
691 {
692 GlobalRelationInterpretationImpl globalRelationInterpretation = new GlobalRelationInterpretationImpl();
693 return globalRelationInterpretation;
694 }
695
696 /**
697 * <!-- begin-user-doc -->
698 * <!-- end-user-doc -->
699 * @generated
700 */
701 @Override
702 public MultiplicityDefinition createMultiplicityDefinition()
703 {
704 MultiplicityDefinitionImpl multiplicityDefinition = new MultiplicityDefinitionImpl();
705 return multiplicityDefinition;
706 }
707
708 /**
709 * <!-- begin-user-doc -->
710 * <!-- end-user-doc -->
711 * @generated
712 */
713 @Override
714 public BooleanTrue createBooleanTrue()
715 {
716 BooleanTrueImpl booleanTrue = new BooleanTrueImpl();
717 return booleanTrue;
718 }
719
720 /**
721 * <!-- begin-user-doc -->
722 * <!-- end-user-doc -->
723 * @generated
724 */
725 @Override
726 public BooleanFalse createBooleanFalse()
727 {
728 BooleanFalseImpl booleanFalse = new BooleanFalseImpl();
729 return booleanFalse;
730 }
731
732 /**
733 * <!-- begin-user-doc -->
734 * <!-- end-user-doc -->
735 * @generated
736 */
737 @Override
738 public True createTrue()
739 {
740 TrueImpl true_ = new TrueImpl();
741 return true_;
742 }
743
744 /**
745 * <!-- begin-user-doc -->
746 * <!-- end-user-doc -->
747 * @generated
748 */
749 @Override
750 public False createFalse()
751 {
752 FalseImpl false_ = new FalseImpl();
753 return false_;
754 }
755
756 /**
757 * <!-- begin-user-doc -->
758 * <!-- end-user-doc -->
759 * @generated
760 */
761 @Override
762 public Unknown createUnknown()
763 {
764 UnknownImpl unknown = new UnknownImpl();
765 return unknown;
766 }
767
768 /**
769 * <!-- begin-user-doc -->
770 * <!-- end-user-doc -->
771 * @generated
772 */
773 @Override
774 public org.eclipse.viatra.solver.language.solverLanguage.Error createError()
775 {
776 ErrorImpl error = new ErrorImpl();
777 return error;
778 }
779
780 /**
781 * <!-- begin-user-doc -->
782 * <!-- end-user-doc -->
783 * @generated
784 */
785 @Override
786 public Positive createPositive()
787 {
788 PositiveImpl positive = new PositiveImpl();
789 return positive;
790 }
791
792 /**
793 * <!-- begin-user-doc -->
794 * <!-- end-user-doc -->
795 * @generated
796 */
797 @Override
798 public Negative createNegative()
799 {
800 NegativeImpl negative = new NegativeImpl();
801 return negative;
802 }
803
804 /**
805 * <!-- begin-user-doc -->
806 * <!-- end-user-doc -->
807 * @generated
808 */
809 @Override
810 public ReflexiveClosure createReflexiveClosure()
811 {
812 ReflexiveClosureImpl reflexiveClosure = new ReflexiveClosureImpl();
813 return reflexiveClosure;
814 }
815
816 /**
817 * <!-- begin-user-doc -->
818 * <!-- end-user-doc -->
819 * @generated
820 */
821 @Override
822 public IrreflexiveClosure createIrreflexiveClosure()
823 {
824 IrreflexiveClosureImpl irreflexiveClosure = new IrreflexiveClosureImpl();
825 return irreflexiveClosure;
826 }
827
828 /**
829 * <!-- begin-user-doc -->
830 * <!-- end-user-doc -->
831 * @generated
832 */
833 @Override
834 public SolverLanguagePackage getSolverLanguagePackage()
835 {
836 return (SolverLanguagePackage)getEPackage();
837 }
838
839 /**
840 * <!-- begin-user-doc -->
841 * <!-- end-user-doc -->
842 * @deprecated
843 * @generated
844 */
845 @Deprecated
846 public static SolverLanguagePackage getPackage()
847 {
848 return SolverLanguagePackage.eINSTANCE;
849 }
850
851} //SolverLanguageFactoryImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
new file mode 100644
index 00000000..9e5d391b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
@@ -0,0 +1,2007 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EAttribute;
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.EReference;
10
11import org.eclipse.emf.ecore.impl.EPackageImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.AllInstances;
14import org.eclipse.viatra.solver.language.solverLanguage.AllObjects;
15import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
16import org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse;
17import org.eclipse.viatra.solver.language.solverLanguage.BooleanObject;
18import org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol;
19import org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue;
20import org.eclipse.viatra.solver.language.solverLanguage.BooleanValue;
21import org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation;
22import org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation;
23import org.eclipse.viatra.solver.language.solverLanguage.ClosureType;
24import org.eclipse.viatra.solver.language.solverLanguage.ComplexObject;
25import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
26import org.eclipse.viatra.solver.language.solverLanguage.DataObject;
27import org.eclipse.viatra.solver.language.solverLanguage.DataSymbol;
28import org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation;
29import org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation;
30import org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol;
31import org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate;
32import org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol;
33import org.eclipse.viatra.solver.language.solverLanguage.False;
34import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
35import org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation;
36import org.eclipse.viatra.solver.language.solverLanguage.IntObject;
37import org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol;
38import org.eclipse.viatra.solver.language.solverLanguage.Interpretation;
39import org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure;
40import org.eclipse.viatra.solver.language.solverLanguage.Literal;
41import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
42import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
43import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
44import org.eclipse.viatra.solver.language.solverLanguage.Negative;
45import org.eclipse.viatra.solver.language.solverLanguage.Parameter;
46import org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol;
47import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
48import org.eclipse.viatra.solver.language.solverLanguage.Polarity;
49import org.eclipse.viatra.solver.language.solverLanguage.Positive;
50import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
51import org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol;
52import org.eclipse.viatra.solver.language.solverLanguage.Problem;
53import org.eclipse.viatra.solver.language.solverLanguage.RealObject;
54import org.eclipse.viatra.solver.language.solverLanguage.RealSymbol;
55import org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure;
56import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory;
57import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
58import org.eclipse.viatra.solver.language.solverLanguage.Statement;
59import org.eclipse.viatra.solver.language.solverLanguage.StringObject;
60import org.eclipse.viatra.solver.language.solverLanguage.StringSymbol;
61import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
62import org.eclipse.viatra.solver.language.solverLanguage.True;
63import org.eclipse.viatra.solver.language.solverLanguage.TruthValue;
64import org.eclipse.viatra.solver.language.solverLanguage.Unknown;
65import org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject;
66import org.eclipse.viatra.solver.language.solverLanguage.Variable;
67
68/**
69 * <!-- begin-user-doc -->
70 * An implementation of the model <b>Package</b>.
71 * <!-- end-user-doc -->
72 * @generated
73 */
74public class SolverLanguagePackageImpl extends EPackageImpl implements SolverLanguagePackage
75{
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 private EClass problemEClass = null;
82
83 /**
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @generated
87 */
88 private EClass statementEClass = null;
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 private EClass booleanValueEClass = null;
96
97 /**
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 private EClass truthValueEClass = null;
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 private EClass interpretationEClass = null;
110
111 /**
112 * <!-- begin-user-doc -->
113 * <!-- end-user-doc -->
114 * @generated
115 */
116 private EClass basicInterpretationEClass = null;
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 private EClass symbolEClass = null;
124
125 /**
126 * <!-- begin-user-doc -->
127 * <!-- end-user-doc -->
128 * @generated
129 */
130 private EClass modelSymbolEClass = null;
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 private EClass partialitySymbolEClass = null;
138
139 /**
140 * <!-- begin-user-doc -->
141 * <!-- end-user-doc -->
142 * @generated
143 */
144 private EClass existSymbolEClass = null;
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 private EClass equalsSymbolEClass = null;
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 private EClass dataSymbolEClass = null;
159
160 /**
161 * <!-- begin-user-doc -->
162 * <!-- end-user-doc -->
163 * @generated
164 */
165 private EClass booleanSymbolEClass = null;
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 private EClass integerSymbolEClass = null;
173
174 /**
175 * <!-- begin-user-doc -->
176 * <!-- end-user-doc -->
177 * @generated
178 */
179 private EClass realSymbolEClass = null;
180
181 /**
182 * <!-- begin-user-doc -->
183 * <!-- end-user-doc -->
184 * @generated
185 */
186 private EClass stringSymbolEClass = null;
187
188 /**
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @generated
192 */
193 private EClass complexObjectEClass = null;
194
195 /**
196 * <!-- begin-user-doc -->
197 * <!-- end-user-doc -->
198 * @generated
199 */
200 private EClass objectEClass = null;
201
202 /**
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @generated
206 */
207 private EClass namedObjectEClass = null;
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 private EClass unnamedObjectEClass = null;
215
216 /**
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 */
221 private EClass dataObjectEClass = null;
222
223 /**
224 * <!-- begin-user-doc -->
225 * <!-- end-user-doc -->
226 * @generated
227 */
228 private EClass booleanObjectEClass = null;
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 private EClass intObjectEClass = null;
236
237 /**
238 * <!-- begin-user-doc -->
239 * <!-- end-user-doc -->
240 * @generated
241 */
242 private EClass realObjectEClass = null;
243
244 /**
245 * <!-- begin-user-doc -->
246 * <!-- end-user-doc -->
247 * @generated
248 */
249 private EClass stringObjectEClass = null;
250
251 /**
252 * <!-- begin-user-doc -->
253 * <!-- end-user-doc -->
254 * @generated
255 */
256 private EClass predicateEClass = null;
257
258 /**
259 * <!-- begin-user-doc -->
260 * <!-- end-user-doc -->
261 * @generated
262 */
263 private EClass predicateSymbolEClass = null;
264
265 /**
266 * <!-- begin-user-doc -->
267 * <!-- end-user-doc -->
268 * @generated
269 */
270 private EClass errorPredicateEClass = null;
271
272 /**
273 * <!-- begin-user-doc -->
274 * <!-- end-user-doc -->
275 * @generated
276 */
277 private EClass parameterEClass = null;
278
279 /**
280 * <!-- begin-user-doc -->
281 * <!-- end-user-doc -->
282 * @generated
283 */
284 private EClass patternBodyEClass = null;
285
286 /**
287 * <!-- begin-user-doc -->
288 * <!-- end-user-doc -->
289 * @generated
290 */
291 private EClass polarityEClass = null;
292
293 /**
294 * <!-- begin-user-doc -->
295 * <!-- end-user-doc -->
296 * @generated
297 */
298 private EClass constraintEClass = null;
299
300 /**
301 * <!-- begin-user-doc -->
302 * <!-- end-user-doc -->
303 * @generated
304 */
305 private EClass closureTypeEClass = null;
306
307 /**
308 * <!-- begin-user-doc -->
309 * <!-- end-user-doc -->
310 * @generated
311 */
312 private EClass literalEClass = null;
313
314 /**
315 * <!-- begin-user-doc -->
316 * <!-- end-user-doc -->
317 * @generated
318 */
319 private EClass variableEClass = null;
320
321 /**
322 * <!-- begin-user-doc -->
323 * <!-- end-user-doc -->
324 * @generated
325 */
326 private EClass allInstancesEClass = null;
327
328 /**
329 * <!-- begin-user-doc -->
330 * <!-- end-user-doc -->
331 * @generated
332 */
333 private EClass allObjectsEClass = null;
334
335 /**
336 * <!-- begin-user-doc -->
337 * <!-- end-user-doc -->
338 * @generated
339 */
340 private EClass defaultInterpretationEClass = null;
341
342 /**
343 * <!-- begin-user-doc -->
344 * <!-- end-user-doc -->
345 * @generated
346 */
347 private EClass cdInterpretationEClass = null;
348
349 /**
350 * <!-- begin-user-doc -->
351 * <!-- end-user-doc -->
352 * @generated
353 */
354 private EClass classInterpretationEClass = null;
355
356 /**
357 * <!-- begin-user-doc -->
358 * <!-- end-user-doc -->
359 * @generated
360 */
361 private EClass enumInterpretationEClass = null;
362
363 /**
364 * <!-- begin-user-doc -->
365 * <!-- end-user-doc -->
366 * @generated
367 */
368 private EClass fieldRelationInterpretationEClass = null;
369
370 /**
371 * <!-- begin-user-doc -->
372 * <!-- end-user-doc -->
373 * @generated
374 */
375 private EClass globalRelationInterpretationEClass = null;
376
377 /**
378 * <!-- begin-user-doc -->
379 * <!-- end-user-doc -->
380 * @generated
381 */
382 private EClass multiplicityDefinitionEClass = null;
383
384 /**
385 * <!-- begin-user-doc -->
386 * <!-- end-user-doc -->
387 * @generated
388 */
389 private EClass booleanTrueEClass = null;
390
391 /**
392 * <!-- begin-user-doc -->
393 * <!-- end-user-doc -->
394 * @generated
395 */
396 private EClass booleanFalseEClass = null;
397
398 /**
399 * <!-- begin-user-doc -->
400 * <!-- end-user-doc -->
401 * @generated
402 */
403 private EClass trueEClass = null;
404
405 /**
406 * <!-- begin-user-doc -->
407 * <!-- end-user-doc -->
408 * @generated
409 */
410 private EClass falseEClass = null;
411
412 /**
413 * <!-- begin-user-doc -->
414 * <!-- end-user-doc -->
415 * @generated
416 */
417 private EClass unknownEClass = null;
418
419 /**
420 * <!-- begin-user-doc -->
421 * <!-- end-user-doc -->
422 * @generated
423 */
424 private EClass errorEClass = null;
425
426 /**
427 * <!-- begin-user-doc -->
428 * <!-- end-user-doc -->
429 * @generated
430 */
431 private EClass positiveEClass = null;
432
433 /**
434 * <!-- begin-user-doc -->
435 * <!-- end-user-doc -->
436 * @generated
437 */
438 private EClass negativeEClass = null;
439
440 /**
441 * <!-- begin-user-doc -->
442 * <!-- end-user-doc -->
443 * @generated
444 */
445 private EClass reflexiveClosureEClass = null;
446
447 /**
448 * <!-- begin-user-doc -->
449 * <!-- end-user-doc -->
450 * @generated
451 */
452 private EClass irreflexiveClosureEClass = null;
453
454 /**
455 * Creates an instance of the model <b>Package</b>, registered with
456 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
457 * package URI value.
458 * <p>Note: the correct way to create the package is via the static
459 * factory method {@link #init init()}, which also performs
460 * initialization of the package, or returns the registered package,
461 * if one already exists.
462 * <!-- begin-user-doc -->
463 * <!-- end-user-doc -->
464 * @see org.eclipse.emf.ecore.EPackage.Registry
465 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#eNS_URI
466 * @see #init()
467 * @generated
468 */
469 private SolverLanguagePackageImpl()
470 {
471 super(eNS_URI, SolverLanguageFactory.eINSTANCE);
472 }
473
474 /**
475 * <!-- begin-user-doc -->
476 * <!-- end-user-doc -->
477 * @generated
478 */
479 private static boolean isInited = false;
480
481 /**
482 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
483 *
484 * <p>This method is used to initialize {@link SolverLanguagePackage#eINSTANCE} when that field is accessed.
485 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
486 * <!-- begin-user-doc -->
487 * <!-- end-user-doc -->
488 * @see #eNS_URI
489 * @see #createPackageContents()
490 * @see #initializePackageContents()
491 * @generated
492 */
493 public static SolverLanguagePackage init()
494 {
495 if (isInited) return (SolverLanguagePackage)EPackage.Registry.INSTANCE.getEPackage(SolverLanguagePackage.eNS_URI);
496
497 // Obtain or create and register package
498 Object registeredSolverLanguagePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
499 SolverLanguagePackageImpl theSolverLanguagePackage = registeredSolverLanguagePackage instanceof SolverLanguagePackageImpl ? (SolverLanguagePackageImpl)registeredSolverLanguagePackage : new SolverLanguagePackageImpl();
500
501 isInited = true;
502
503 // Create package meta-data objects
504 theSolverLanguagePackage.createPackageContents();
505
506 // Initialize created meta-data
507 theSolverLanguagePackage.initializePackageContents();
508
509 // Mark meta-data to indicate it can't be changed
510 theSolverLanguagePackage.freeze();
511
512 // Update the registry and return the package
513 EPackage.Registry.INSTANCE.put(SolverLanguagePackage.eNS_URI, theSolverLanguagePackage);
514 return theSolverLanguagePackage;
515 }
516
517 /**
518 * <!-- begin-user-doc -->
519 * <!-- end-user-doc -->
520 * @generated
521 */
522 @Override
523 public EClass getProblem()
524 {
525 return problemEClass;
526 }
527
528 /**
529 * <!-- begin-user-doc -->
530 * <!-- end-user-doc -->
531 * @generated
532 */
533 @Override
534 public EReference getProblem_Statements()
535 {
536 return (EReference)problemEClass.getEStructuralFeatures().get(0);
537 }
538
539 /**
540 * <!-- begin-user-doc -->
541 * <!-- end-user-doc -->
542 * @generated
543 */
544 @Override
545 public EClass getStatement()
546 {
547 return statementEClass;
548 }
549
550 /**
551 * <!-- begin-user-doc -->
552 * <!-- end-user-doc -->
553 * @generated
554 */
555 @Override
556 public EClass getBooleanValue()
557 {
558 return booleanValueEClass;
559 }
560
561 /**
562 * <!-- begin-user-doc -->
563 * <!-- end-user-doc -->
564 * @generated
565 */
566 @Override
567 public EClass getTruthValue()
568 {
569 return truthValueEClass;
570 }
571
572 /**
573 * <!-- begin-user-doc -->
574 * <!-- end-user-doc -->
575 * @generated
576 */
577 @Override
578 public EClass getInterpretation()
579 {
580 return interpretationEClass;
581 }
582
583 /**
584 * <!-- begin-user-doc -->
585 * <!-- end-user-doc -->
586 * @generated
587 */
588 @Override
589 public EClass getBasicInterpretation()
590 {
591 return basicInterpretationEClass;
592 }
593
594 /**
595 * <!-- begin-user-doc -->
596 * <!-- end-user-doc -->
597 * @generated
598 */
599 @Override
600 public EReference getBasicInterpretation_Symbol()
601 {
602 return (EReference)basicInterpretationEClass.getEStructuralFeatures().get(0);
603 }
604
605 /**
606 * <!-- begin-user-doc -->
607 * <!-- end-user-doc -->
608 * @generated
609 */
610 @Override
611 public EReference getBasicInterpretation_Objects()
612 {
613 return (EReference)basicInterpretationEClass.getEStructuralFeatures().get(1);
614 }
615
616 /**
617 * <!-- begin-user-doc -->
618 * <!-- end-user-doc -->
619 * @generated
620 */
621 @Override
622 public EReference getBasicInterpretation_Value()
623 {
624 return (EReference)basicInterpretationEClass.getEStructuralFeatures().get(2);
625 }
626
627 /**
628 * <!-- begin-user-doc -->
629 * <!-- end-user-doc -->
630 * @generated
631 */
632 @Override
633 public EClass getSymbol()
634 {
635 return symbolEClass;
636 }
637
638 /**
639 * <!-- begin-user-doc -->
640 * <!-- end-user-doc -->
641 * @generated
642 */
643 @Override
644 public EClass getModelSymbol()
645 {
646 return modelSymbolEClass;
647 }
648
649 /**
650 * <!-- begin-user-doc -->
651 * <!-- end-user-doc -->
652 * @generated
653 */
654 @Override
655 public EAttribute getModelSymbol_Name()
656 {
657 return (EAttribute)modelSymbolEClass.getEStructuralFeatures().get(0);
658 }
659
660 /**
661 * <!-- begin-user-doc -->
662 * <!-- end-user-doc -->
663 * @generated
664 */
665 @Override
666 public EClass getPartialitySymbol()
667 {
668 return partialitySymbolEClass;
669 }
670
671 /**
672 * <!-- begin-user-doc -->
673 * <!-- end-user-doc -->
674 * @generated
675 */
676 @Override
677 public EClass getExistSymbol()
678 {
679 return existSymbolEClass;
680 }
681
682 /**
683 * <!-- begin-user-doc -->
684 * <!-- end-user-doc -->
685 * @generated
686 */
687 @Override
688 public EClass getEqualsSymbol()
689 {
690 return equalsSymbolEClass;
691 }
692
693 /**
694 * <!-- begin-user-doc -->
695 * <!-- end-user-doc -->
696 * @generated
697 */
698 @Override
699 public EClass getDataSymbol()
700 {
701 return dataSymbolEClass;
702 }
703
704 /**
705 * <!-- begin-user-doc -->
706 * <!-- end-user-doc -->
707 * @generated
708 */
709 @Override
710 public EClass getBooleanSymbol()
711 {
712 return booleanSymbolEClass;
713 }
714
715 /**
716 * <!-- begin-user-doc -->
717 * <!-- end-user-doc -->
718 * @generated
719 */
720 @Override
721 public EClass getIntegerSymbol()
722 {
723 return integerSymbolEClass;
724 }
725
726 /**
727 * <!-- begin-user-doc -->
728 * <!-- end-user-doc -->
729 * @generated
730 */
731 @Override
732 public EClass getRealSymbol()
733 {
734 return realSymbolEClass;
735 }
736
737 /**
738 * <!-- begin-user-doc -->
739 * <!-- end-user-doc -->
740 * @generated
741 */
742 @Override
743 public EClass getStringSymbol()
744 {
745 return stringSymbolEClass;
746 }
747
748 /**
749 * <!-- begin-user-doc -->
750 * <!-- end-user-doc -->
751 * @generated
752 */
753 @Override
754 public EClass getComplexObject()
755 {
756 return complexObjectEClass;
757 }
758
759 /**
760 * <!-- begin-user-doc -->
761 * <!-- end-user-doc -->
762 * @generated
763 */
764 @Override
765 public EClass getObject()
766 {
767 return objectEClass;
768 }
769
770 /**
771 * <!-- begin-user-doc -->
772 * <!-- end-user-doc -->
773 * @generated
774 */
775 @Override
776 public EClass getNamedObject()
777 {
778 return namedObjectEClass;
779 }
780
781 /**
782 * <!-- begin-user-doc -->
783 * <!-- end-user-doc -->
784 * @generated
785 */
786 @Override
787 public EAttribute getNamedObject_Name()
788 {
789 return (EAttribute)namedObjectEClass.getEStructuralFeatures().get(0);
790 }
791
792 /**
793 * <!-- begin-user-doc -->
794 * <!-- end-user-doc -->
795 * @generated
796 */
797 @Override
798 public EClass getUnnamedObject()
799 {
800 return unnamedObjectEClass;
801 }
802
803 /**
804 * <!-- begin-user-doc -->
805 * <!-- end-user-doc -->
806 * @generated
807 */
808 @Override
809 public EAttribute getUnnamedObject_Name()
810 {
811 return (EAttribute)unnamedObjectEClass.getEStructuralFeatures().get(0);
812 }
813
814 /**
815 * <!-- begin-user-doc -->
816 * <!-- end-user-doc -->
817 * @generated
818 */
819 @Override
820 public EClass getDataObject()
821 {
822 return dataObjectEClass;
823 }
824
825 /**
826 * <!-- begin-user-doc -->
827 * <!-- end-user-doc -->
828 * @generated
829 */
830 @Override
831 public EClass getBooleanObject()
832 {
833 return booleanObjectEClass;
834 }
835
836 /**
837 * <!-- begin-user-doc -->
838 * <!-- end-user-doc -->
839 * @generated
840 */
841 @Override
842 public EReference getBooleanObject_Value()
843 {
844 return (EReference)booleanObjectEClass.getEStructuralFeatures().get(0);
845 }
846
847 /**
848 * <!-- begin-user-doc -->
849 * <!-- end-user-doc -->
850 * @generated
851 */
852 @Override
853 public EClass getIntObject()
854 {
855 return intObjectEClass;
856 }
857
858 /**
859 * <!-- begin-user-doc -->
860 * <!-- end-user-doc -->
861 * @generated
862 */
863 @Override
864 public EAttribute getIntObject_Value()
865 {
866 return (EAttribute)intObjectEClass.getEStructuralFeatures().get(0);
867 }
868
869 /**
870 * <!-- begin-user-doc -->
871 * <!-- end-user-doc -->
872 * @generated
873 */
874 @Override
875 public EClass getRealObject()
876 {
877 return realObjectEClass;
878 }
879
880 /**
881 * <!-- begin-user-doc -->
882 * <!-- end-user-doc -->
883 * @generated
884 */
885 @Override
886 public EAttribute getRealObject_Value()
887 {
888 return (EAttribute)realObjectEClass.getEStructuralFeatures().get(0);
889 }
890
891 /**
892 * <!-- begin-user-doc -->
893 * <!-- end-user-doc -->
894 * @generated
895 */
896 @Override
897 public EClass getStringObject()
898 {
899 return stringObjectEClass;
900 }
901
902 /**
903 * <!-- begin-user-doc -->
904 * <!-- end-user-doc -->
905 * @generated
906 */
907 @Override
908 public EAttribute getStringObject_Value()
909 {
910 return (EAttribute)stringObjectEClass.getEStructuralFeatures().get(0);
911 }
912
913 /**
914 * <!-- begin-user-doc -->
915 * <!-- end-user-doc -->
916 * @generated
917 */
918 @Override
919 public EClass getPredicate()
920 {
921 return predicateEClass;
922 }
923
924 /**
925 * <!-- begin-user-doc -->
926 * <!-- end-user-doc -->
927 * @generated
928 */
929 @Override
930 public EReference getPredicate_Parameters()
931 {
932 return (EReference)predicateEClass.getEStructuralFeatures().get(0);
933 }
934
935 /**
936 * <!-- begin-user-doc -->
937 * <!-- end-user-doc -->
938 * @generated
939 */
940 @Override
941 public EReference getPredicate_Bodies()
942 {
943 return (EReference)predicateEClass.getEStructuralFeatures().get(1);
944 }
945
946 /**
947 * <!-- begin-user-doc -->
948 * <!-- end-user-doc -->
949 * @generated
950 */
951 @Override
952 public EClass getPredicateSymbol()
953 {
954 return predicateSymbolEClass;
955 }
956
957 /**
958 * <!-- begin-user-doc -->
959 * <!-- end-user-doc -->
960 * @generated
961 */
962 @Override
963 public EReference getPredicateSymbol_Symbol()
964 {
965 return (EReference)predicateSymbolEClass.getEStructuralFeatures().get(0);
966 }
967
968 /**
969 * <!-- begin-user-doc -->
970 * <!-- end-user-doc -->
971 * @generated
972 */
973 @Override
974 public EClass getErrorPredicate()
975 {
976 return errorPredicateEClass;
977 }
978
979 /**
980 * <!-- begin-user-doc -->
981 * <!-- end-user-doc -->
982 * @generated
983 */
984 @Override
985 public EAttribute getErrorPredicate_Name()
986 {
987 return (EAttribute)errorPredicateEClass.getEStructuralFeatures().get(0);
988 }
989
990 /**
991 * <!-- begin-user-doc -->
992 * <!-- end-user-doc -->
993 * @generated
994 */
995 @Override
996 public EClass getParameter()
997 {
998 return parameterEClass;
999 }
1000
1001 /**
1002 * <!-- begin-user-doc -->
1003 * <!-- end-user-doc -->
1004 * @generated
1005 */
1006 @Override
1007 public EReference getParameter_Variable()
1008 {
1009 return (EReference)parameterEClass.getEStructuralFeatures().get(0);
1010 }
1011
1012 /**
1013 * <!-- begin-user-doc -->
1014 * <!-- end-user-doc -->
1015 * @generated
1016 */
1017 @Override
1018 public EReference getParameter_Type()
1019 {
1020 return (EReference)parameterEClass.getEStructuralFeatures().get(1);
1021 }
1022
1023 /**
1024 * <!-- begin-user-doc -->
1025 * <!-- end-user-doc -->
1026 * @generated
1027 */
1028 @Override
1029 public EClass getPatternBody()
1030 {
1031 return patternBodyEClass;
1032 }
1033
1034 /**
1035 * <!-- begin-user-doc -->
1036 * <!-- end-user-doc -->
1037 * @generated
1038 */
1039 @Override
1040 public EReference getPatternBody_Constraints()
1041 {
1042 return (EReference)patternBodyEClass.getEStructuralFeatures().get(0);
1043 }
1044
1045 /**
1046 * <!-- begin-user-doc -->
1047 * <!-- end-user-doc -->
1048 * @generated
1049 */
1050 @Override
1051 public EClass getPolarity()
1052 {
1053 return polarityEClass;
1054 }
1055
1056 /**
1057 * <!-- begin-user-doc -->
1058 * <!-- end-user-doc -->
1059 * @generated
1060 */
1061 @Override
1062 public EClass getConstraint()
1063 {
1064 return constraintEClass;
1065 }
1066
1067 /**
1068 * <!-- begin-user-doc -->
1069 * <!-- end-user-doc -->
1070 * @generated
1071 */
1072 @Override
1073 public EReference getConstraint_Polarity()
1074 {
1075 return (EReference)constraintEClass.getEStructuralFeatures().get(0);
1076 }
1077
1078 /**
1079 * <!-- begin-user-doc -->
1080 * <!-- end-user-doc -->
1081 * @generated
1082 */
1083 @Override
1084 public EReference getConstraint_Symbol()
1085 {
1086 return (EReference)constraintEClass.getEStructuralFeatures().get(1);
1087 }
1088
1089 /**
1090 * <!-- begin-user-doc -->
1091 * <!-- end-user-doc -->
1092 * @generated
1093 */
1094 @Override
1095 public EReference getConstraint_Params()
1096 {
1097 return (EReference)constraintEClass.getEStructuralFeatures().get(2);
1098 }
1099
1100 /**
1101 * <!-- begin-user-doc -->
1102 * <!-- end-user-doc -->
1103 * @generated
1104 */
1105 @Override
1106 public EReference getConstraint_ClosureType()
1107 {
1108 return (EReference)constraintEClass.getEStructuralFeatures().get(3);
1109 }
1110
1111 /**
1112 * <!-- begin-user-doc -->
1113 * <!-- end-user-doc -->
1114 * @generated
1115 */
1116 @Override
1117 public EClass getClosureType()
1118 {
1119 return closureTypeEClass;
1120 }
1121
1122 /**
1123 * <!-- begin-user-doc -->
1124 * <!-- end-user-doc -->
1125 * @generated
1126 */
1127 @Override
1128 public EClass getLiteral()
1129 {
1130 return literalEClass;
1131 }
1132
1133 /**
1134 * <!-- begin-user-doc -->
1135 * <!-- end-user-doc -->
1136 * @generated
1137 */
1138 @Override
1139 public EClass getVariable()
1140 {
1141 return variableEClass;
1142 }
1143
1144 /**
1145 * <!-- begin-user-doc -->
1146 * <!-- end-user-doc -->
1147 * @generated
1148 */
1149 @Override
1150 public EAttribute getVariable_Name()
1151 {
1152 return (EAttribute)variableEClass.getEStructuralFeatures().get(0);
1153 }
1154
1155 /**
1156 * <!-- begin-user-doc -->
1157 * <!-- end-user-doc -->
1158 * @generated
1159 */
1160 @Override
1161 public EClass getAllInstances()
1162 {
1163 return allInstancesEClass;
1164 }
1165
1166 /**
1167 * <!-- begin-user-doc -->
1168 * <!-- end-user-doc -->
1169 * @generated
1170 */
1171 @Override
1172 public EReference getAllInstances_Symbol()
1173 {
1174 return (EReference)allInstancesEClass.getEStructuralFeatures().get(0);
1175 }
1176
1177 /**
1178 * <!-- begin-user-doc -->
1179 * <!-- end-user-doc -->
1180 * @generated
1181 */
1182 @Override
1183 public EClass getAllObjects()
1184 {
1185 return allObjectsEClass;
1186 }
1187
1188 /**
1189 * <!-- begin-user-doc -->
1190 * <!-- end-user-doc -->
1191 * @generated
1192 */
1193 @Override
1194 public EClass getDefaultInterpretation()
1195 {
1196 return defaultInterpretationEClass;
1197 }
1198
1199 /**
1200 * <!-- begin-user-doc -->
1201 * <!-- end-user-doc -->
1202 * @generated
1203 */
1204 @Override
1205 public EReference getDefaultInterpretation_Interpretation()
1206 {
1207 return (EReference)defaultInterpretationEClass.getEStructuralFeatures().get(0);
1208 }
1209
1210 /**
1211 * <!-- begin-user-doc -->
1212 * <!-- end-user-doc -->
1213 * @generated
1214 */
1215 @Override
1216 public EClass getCDInterpretation()
1217 {
1218 return cdInterpretationEClass;
1219 }
1220
1221 /**
1222 * <!-- begin-user-doc -->
1223 * <!-- end-user-doc -->
1224 * @generated
1225 */
1226 @Override
1227 public EClass getClassInterpretation()
1228 {
1229 return classInterpretationEClass;
1230 }
1231
1232 /**
1233 * <!-- begin-user-doc -->
1234 * <!-- end-user-doc -->
1235 * @generated
1236 */
1237 @Override
1238 public EAttribute getClassInterpretation_Abstract()
1239 {
1240 return (EAttribute)classInterpretationEClass.getEStructuralFeatures().get(0);
1241 }
1242
1243 /**
1244 * <!-- begin-user-doc -->
1245 * <!-- end-user-doc -->
1246 * @generated
1247 */
1248 @Override
1249 public EReference getClassInterpretation_Symbol()
1250 {
1251 return (EReference)classInterpretationEClass.getEStructuralFeatures().get(1);
1252 }
1253
1254 /**
1255 * <!-- begin-user-doc -->
1256 * <!-- end-user-doc -->
1257 * @generated
1258 */
1259 @Override
1260 public EReference getClassInterpretation_Supertypes()
1261 {
1262 return (EReference)classInterpretationEClass.getEStructuralFeatures().get(2);
1263 }
1264
1265 /**
1266 * <!-- begin-user-doc -->
1267 * <!-- end-user-doc -->
1268 * @generated
1269 */
1270 @Override
1271 public EReference getClassInterpretation_Fielt()
1272 {
1273 return (EReference)classInterpretationEClass.getEStructuralFeatures().get(3);
1274 }
1275
1276 /**
1277 * <!-- begin-user-doc -->
1278 * <!-- end-user-doc -->
1279 * @generated
1280 */
1281 @Override
1282 public EClass getEnumInterpretation()
1283 {
1284 return enumInterpretationEClass;
1285 }
1286
1287 /**
1288 * <!-- begin-user-doc -->
1289 * <!-- end-user-doc -->
1290 * @generated
1291 */
1292 @Override
1293 public EReference getEnumInterpretation_Symbol()
1294 {
1295 return (EReference)enumInterpretationEClass.getEStructuralFeatures().get(0);
1296 }
1297
1298 /**
1299 * <!-- begin-user-doc -->
1300 * <!-- end-user-doc -->
1301 * @generated
1302 */
1303 @Override
1304 public EReference getEnumInterpretation_Objects()
1305 {
1306 return (EReference)enumInterpretationEClass.getEStructuralFeatures().get(1);
1307 }
1308
1309 /**
1310 * <!-- begin-user-doc -->
1311 * <!-- end-user-doc -->
1312 * @generated
1313 */
1314 @Override
1315 public EClass getFieldRelationInterpretation()
1316 {
1317 return fieldRelationInterpretationEClass;
1318 }
1319
1320 /**
1321 * <!-- begin-user-doc -->
1322 * <!-- end-user-doc -->
1323 * @generated
1324 */
1325 @Override
1326 public EAttribute getFieldRelationInterpretation_Containment()
1327 {
1328 return (EAttribute)fieldRelationInterpretationEClass.getEStructuralFeatures().get(0);
1329 }
1330
1331 /**
1332 * <!-- begin-user-doc -->
1333 * <!-- end-user-doc -->
1334 * @generated
1335 */
1336 @Override
1337 public EReference getFieldRelationInterpretation_Symbol()
1338 {
1339 return (EReference)fieldRelationInterpretationEClass.getEStructuralFeatures().get(1);
1340 }
1341
1342 /**
1343 * <!-- begin-user-doc -->
1344 * <!-- end-user-doc -->
1345 * @generated
1346 */
1347 @Override
1348 public EReference getFieldRelationInterpretation_Multiplicity()
1349 {
1350 return (EReference)fieldRelationInterpretationEClass.getEStructuralFeatures().get(2);
1351 }
1352
1353 /**
1354 * <!-- begin-user-doc -->
1355 * <!-- end-user-doc -->
1356 * @generated
1357 */
1358 @Override
1359 public EReference getFieldRelationInterpretation_Target()
1360 {
1361 return (EReference)fieldRelationInterpretationEClass.getEStructuralFeatures().get(3);
1362 }
1363
1364 /**
1365 * <!-- begin-user-doc -->
1366 * <!-- end-user-doc -->
1367 * @generated
1368 */
1369 @Override
1370 public EClass getGlobalRelationInterpretation()
1371 {
1372 return globalRelationInterpretationEClass;
1373 }
1374
1375 /**
1376 * <!-- begin-user-doc -->
1377 * <!-- end-user-doc -->
1378 * @generated
1379 */
1380 @Override
1381 public EAttribute getGlobalRelationInterpretation_Containment()
1382 {
1383 return (EAttribute)globalRelationInterpretationEClass.getEStructuralFeatures().get(0);
1384 }
1385
1386 /**
1387 * <!-- begin-user-doc -->
1388 * <!-- end-user-doc -->
1389 * @generated
1390 */
1391 @Override
1392 public EReference getGlobalRelationInterpretation_Symbol()
1393 {
1394 return (EReference)globalRelationInterpretationEClass.getEStructuralFeatures().get(1);
1395 }
1396
1397 /**
1398 * <!-- begin-user-doc -->
1399 * <!-- end-user-doc -->
1400 * @generated
1401 */
1402 @Override
1403 public EReference getGlobalRelationInterpretation_SourceMultiplicity()
1404 {
1405 return (EReference)globalRelationInterpretationEClass.getEStructuralFeatures().get(2);
1406 }
1407
1408 /**
1409 * <!-- begin-user-doc -->
1410 * <!-- end-user-doc -->
1411 * @generated
1412 */
1413 @Override
1414 public EReference getGlobalRelationInterpretation_Source()
1415 {
1416 return (EReference)globalRelationInterpretationEClass.getEStructuralFeatures().get(3);
1417 }
1418
1419 /**
1420 * <!-- begin-user-doc -->
1421 * <!-- end-user-doc -->
1422 * @generated
1423 */
1424 @Override
1425 public EReference getGlobalRelationInterpretation_TargetMultiplicity()
1426 {
1427 return (EReference)globalRelationInterpretationEClass.getEStructuralFeatures().get(4);
1428 }
1429
1430 /**
1431 * <!-- begin-user-doc -->
1432 * <!-- end-user-doc -->
1433 * @generated
1434 */
1435 @Override
1436 public EReference getGlobalRelationInterpretation_Target()
1437 {
1438 return (EReference)globalRelationInterpretationEClass.getEStructuralFeatures().get(5);
1439 }
1440
1441 /**
1442 * <!-- begin-user-doc -->
1443 * <!-- end-user-doc -->
1444 * @generated
1445 */
1446 @Override
1447 public EClass getMultiplicityDefinition()
1448 {
1449 return multiplicityDefinitionEClass;
1450 }
1451
1452 /**
1453 * <!-- begin-user-doc -->
1454 * <!-- end-user-doc -->
1455 * @generated
1456 */
1457 @Override
1458 public EAttribute getMultiplicityDefinition_Lower()
1459 {
1460 return (EAttribute)multiplicityDefinitionEClass.getEStructuralFeatures().get(0);
1461 }
1462
1463 /**
1464 * <!-- begin-user-doc -->
1465 * <!-- end-user-doc -->
1466 * @generated
1467 */
1468 @Override
1469 public EAttribute getMultiplicityDefinition_Upper()
1470 {
1471 return (EAttribute)multiplicityDefinitionEClass.getEStructuralFeatures().get(1);
1472 }
1473
1474 /**
1475 * <!-- begin-user-doc -->
1476 * <!-- end-user-doc -->
1477 * @generated
1478 */
1479 @Override
1480 public EAttribute getMultiplicityDefinition_UnlimitedUpper()
1481 {
1482 return (EAttribute)multiplicityDefinitionEClass.getEStructuralFeatures().get(2);
1483 }
1484
1485 /**
1486 * <!-- begin-user-doc -->
1487 * <!-- end-user-doc -->
1488 * @generated
1489 */
1490 @Override
1491 public EClass getBooleanTrue()
1492 {
1493 return booleanTrueEClass;
1494 }
1495
1496 /**
1497 * <!-- begin-user-doc -->
1498 * <!-- end-user-doc -->
1499 * @generated
1500 */
1501 @Override
1502 public EClass getBooleanFalse()
1503 {
1504 return booleanFalseEClass;
1505 }
1506
1507 /**
1508 * <!-- begin-user-doc -->
1509 * <!-- end-user-doc -->
1510 * @generated
1511 */
1512 @Override
1513 public EClass getTrue()
1514 {
1515 return trueEClass;
1516 }
1517
1518 /**
1519 * <!-- begin-user-doc -->
1520 * <!-- end-user-doc -->
1521 * @generated
1522 */
1523 @Override
1524 public EClass getFalse()
1525 {
1526 return falseEClass;
1527 }
1528
1529 /**
1530 * <!-- begin-user-doc -->
1531 * <!-- end-user-doc -->
1532 * @generated
1533 */
1534 @Override
1535 public EClass getUnknown()
1536 {
1537 return unknownEClass;
1538 }
1539
1540 /**
1541 * <!-- begin-user-doc -->
1542 * <!-- end-user-doc -->
1543 * @generated
1544 */
1545 @Override
1546 public EClass getError()
1547 {
1548 return errorEClass;
1549 }
1550
1551 /**
1552 * <!-- begin-user-doc -->
1553 * <!-- end-user-doc -->
1554 * @generated
1555 */
1556 @Override
1557 public EClass getPositive()
1558 {
1559 return positiveEClass;
1560 }
1561
1562 /**
1563 * <!-- begin-user-doc -->
1564 * <!-- end-user-doc -->
1565 * @generated
1566 */
1567 @Override
1568 public EClass getNegative()
1569 {
1570 return negativeEClass;
1571 }
1572
1573 /**
1574 * <!-- begin-user-doc -->
1575 * <!-- end-user-doc -->
1576 * @generated
1577 */
1578 @Override
1579 public EClass getReflexiveClosure()
1580 {
1581 return reflexiveClosureEClass;
1582 }
1583
1584 /**
1585 * <!-- begin-user-doc -->
1586 * <!-- end-user-doc -->
1587 * @generated
1588 */
1589 @Override
1590 public EClass getIrreflexiveClosure()
1591 {
1592 return irreflexiveClosureEClass;
1593 }
1594
1595 /**
1596 * <!-- begin-user-doc -->
1597 * <!-- end-user-doc -->
1598 * @generated
1599 */
1600 @Override
1601 public SolverLanguageFactory getSolverLanguageFactory()
1602 {
1603 return (SolverLanguageFactory)getEFactoryInstance();
1604 }
1605
1606 /**
1607 * <!-- begin-user-doc -->
1608 * <!-- end-user-doc -->
1609 * @generated
1610 */
1611 private boolean isCreated = false;
1612
1613 /**
1614 * Creates the meta-model objects for the package. This method is
1615 * guarded to have no affect on any invocation but its first.
1616 * <!-- begin-user-doc -->
1617 * <!-- end-user-doc -->
1618 * @generated
1619 */
1620 public void createPackageContents()
1621 {
1622 if (isCreated) return;
1623 isCreated = true;
1624
1625 // Create classes and their features
1626 problemEClass = createEClass(PROBLEM);
1627 createEReference(problemEClass, PROBLEM__STATEMENTS);
1628
1629 statementEClass = createEClass(STATEMENT);
1630
1631 booleanValueEClass = createEClass(BOOLEAN_VALUE);
1632
1633 truthValueEClass = createEClass(TRUTH_VALUE);
1634
1635 interpretationEClass = createEClass(INTERPRETATION);
1636
1637 basicInterpretationEClass = createEClass(BASIC_INTERPRETATION);
1638 createEReference(basicInterpretationEClass, BASIC_INTERPRETATION__SYMBOL);
1639 createEReference(basicInterpretationEClass, BASIC_INTERPRETATION__OBJECTS);
1640 createEReference(basicInterpretationEClass, BASIC_INTERPRETATION__VALUE);
1641
1642 symbolEClass = createEClass(SYMBOL);
1643
1644 modelSymbolEClass = createEClass(MODEL_SYMBOL);
1645 createEAttribute(modelSymbolEClass, MODEL_SYMBOL__NAME);
1646
1647 partialitySymbolEClass = createEClass(PARTIALITY_SYMBOL);
1648
1649 existSymbolEClass = createEClass(EXIST_SYMBOL);
1650
1651 equalsSymbolEClass = createEClass(EQUALS_SYMBOL);
1652
1653 dataSymbolEClass = createEClass(DATA_SYMBOL);
1654
1655 booleanSymbolEClass = createEClass(BOOLEAN_SYMBOL);
1656
1657 integerSymbolEClass = createEClass(INTEGER_SYMBOL);
1658
1659 realSymbolEClass = createEClass(REAL_SYMBOL);
1660
1661 stringSymbolEClass = createEClass(STRING_SYMBOL);
1662
1663 complexObjectEClass = createEClass(COMPLEX_OBJECT);
1664
1665 objectEClass = createEClass(OBJECT);
1666
1667 namedObjectEClass = createEClass(NAMED_OBJECT);
1668 createEAttribute(namedObjectEClass, NAMED_OBJECT__NAME);
1669
1670 unnamedObjectEClass = createEClass(UNNAMED_OBJECT);
1671 createEAttribute(unnamedObjectEClass, UNNAMED_OBJECT__NAME);
1672
1673 dataObjectEClass = createEClass(DATA_OBJECT);
1674
1675 booleanObjectEClass = createEClass(BOOLEAN_OBJECT);
1676 createEReference(booleanObjectEClass, BOOLEAN_OBJECT__VALUE);
1677
1678 intObjectEClass = createEClass(INT_OBJECT);
1679 createEAttribute(intObjectEClass, INT_OBJECT__VALUE);
1680
1681 realObjectEClass = createEClass(REAL_OBJECT);
1682 createEAttribute(realObjectEClass, REAL_OBJECT__VALUE);
1683
1684 stringObjectEClass = createEClass(STRING_OBJECT);
1685 createEAttribute(stringObjectEClass, STRING_OBJECT__VALUE);
1686
1687 predicateEClass = createEClass(PREDICATE);
1688 createEReference(predicateEClass, PREDICATE__PARAMETERS);
1689 createEReference(predicateEClass, PREDICATE__BODIES);
1690
1691 predicateSymbolEClass = createEClass(PREDICATE_SYMBOL);
1692 createEReference(predicateSymbolEClass, PREDICATE_SYMBOL__SYMBOL);
1693
1694 errorPredicateEClass = createEClass(ERROR_PREDICATE);
1695 createEAttribute(errorPredicateEClass, ERROR_PREDICATE__NAME);
1696
1697 parameterEClass = createEClass(PARAMETER);
1698 createEReference(parameterEClass, PARAMETER__VARIABLE);
1699 createEReference(parameterEClass, PARAMETER__TYPE);
1700
1701 patternBodyEClass = createEClass(PATTERN_BODY);
1702 createEReference(patternBodyEClass, PATTERN_BODY__CONSTRAINTS);
1703
1704 polarityEClass = createEClass(POLARITY);
1705
1706 constraintEClass = createEClass(CONSTRAINT);
1707 createEReference(constraintEClass, CONSTRAINT__POLARITY);
1708 createEReference(constraintEClass, CONSTRAINT__SYMBOL);
1709 createEReference(constraintEClass, CONSTRAINT__PARAMS);
1710 createEReference(constraintEClass, CONSTRAINT__CLOSURE_TYPE);
1711
1712 closureTypeEClass = createEClass(CLOSURE_TYPE);
1713
1714 literalEClass = createEClass(LITERAL);
1715
1716 variableEClass = createEClass(VARIABLE);
1717 createEAttribute(variableEClass, VARIABLE__NAME);
1718
1719 allInstancesEClass = createEClass(ALL_INSTANCES);
1720 createEReference(allInstancesEClass, ALL_INSTANCES__SYMBOL);
1721
1722 allObjectsEClass = createEClass(ALL_OBJECTS);
1723
1724 defaultInterpretationEClass = createEClass(DEFAULT_INTERPRETATION);
1725 createEReference(defaultInterpretationEClass, DEFAULT_INTERPRETATION__INTERPRETATION);
1726
1727 cdInterpretationEClass = createEClass(CD_INTERPRETATION);
1728
1729 classInterpretationEClass = createEClass(CLASS_INTERPRETATION);
1730 createEAttribute(classInterpretationEClass, CLASS_INTERPRETATION__ABSTRACT);
1731 createEReference(classInterpretationEClass, CLASS_INTERPRETATION__SYMBOL);
1732 createEReference(classInterpretationEClass, CLASS_INTERPRETATION__SUPERTYPES);
1733 createEReference(classInterpretationEClass, CLASS_INTERPRETATION__FIELT);
1734
1735 enumInterpretationEClass = createEClass(ENUM_INTERPRETATION);
1736 createEReference(enumInterpretationEClass, ENUM_INTERPRETATION__SYMBOL);
1737 createEReference(enumInterpretationEClass, ENUM_INTERPRETATION__OBJECTS);
1738
1739 fieldRelationInterpretationEClass = createEClass(FIELD_RELATION_INTERPRETATION);
1740 createEAttribute(fieldRelationInterpretationEClass, FIELD_RELATION_INTERPRETATION__CONTAINMENT);
1741 createEReference(fieldRelationInterpretationEClass, FIELD_RELATION_INTERPRETATION__SYMBOL);
1742 createEReference(fieldRelationInterpretationEClass, FIELD_RELATION_INTERPRETATION__MULTIPLICITY);
1743 createEReference(fieldRelationInterpretationEClass, FIELD_RELATION_INTERPRETATION__TARGET);
1744
1745 globalRelationInterpretationEClass = createEClass(GLOBAL_RELATION_INTERPRETATION);
1746 createEAttribute(globalRelationInterpretationEClass, GLOBAL_RELATION_INTERPRETATION__CONTAINMENT);
1747 createEReference(globalRelationInterpretationEClass, GLOBAL_RELATION_INTERPRETATION__SYMBOL);
1748 createEReference(globalRelationInterpretationEClass, GLOBAL_RELATION_INTERPRETATION__SOURCE_MULTIPLICITY);
1749 createEReference(globalRelationInterpretationEClass, GLOBAL_RELATION_INTERPRETATION__SOURCE);
1750 createEReference(globalRelationInterpretationEClass, GLOBAL_RELATION_INTERPRETATION__TARGET_MULTIPLICITY);
1751 createEReference(globalRelationInterpretationEClass, GLOBAL_RELATION_INTERPRETATION__TARGET);
1752
1753 multiplicityDefinitionEClass = createEClass(MULTIPLICITY_DEFINITION);
1754 createEAttribute(multiplicityDefinitionEClass, MULTIPLICITY_DEFINITION__LOWER);
1755 createEAttribute(multiplicityDefinitionEClass, MULTIPLICITY_DEFINITION__UPPER);
1756 createEAttribute(multiplicityDefinitionEClass, MULTIPLICITY_DEFINITION__UNLIMITED_UPPER);
1757
1758 booleanTrueEClass = createEClass(BOOLEAN_TRUE);
1759
1760 booleanFalseEClass = createEClass(BOOLEAN_FALSE);
1761
1762 trueEClass = createEClass(TRUE);
1763
1764 falseEClass = createEClass(FALSE);
1765
1766 unknownEClass = createEClass(UNKNOWN);
1767
1768 errorEClass = createEClass(ERROR);
1769
1770 positiveEClass = createEClass(POSITIVE);
1771
1772 negativeEClass = createEClass(NEGATIVE);
1773
1774 reflexiveClosureEClass = createEClass(REFLEXIVE_CLOSURE);
1775
1776 irreflexiveClosureEClass = createEClass(IRREFLEXIVE_CLOSURE);
1777 }
1778
1779 /**
1780 * <!-- begin-user-doc -->
1781 * <!-- end-user-doc -->
1782 * @generated
1783 */
1784 private boolean isInitialized = false;
1785
1786 /**
1787 * Complete the initialization of the package and its meta-model. This
1788 * method is guarded to have no affect on any invocation but its first.
1789 * <!-- begin-user-doc -->
1790 * <!-- end-user-doc -->
1791 * @generated
1792 */
1793 public void initializePackageContents()
1794 {
1795 if (isInitialized) return;
1796 isInitialized = true;
1797
1798 // Initialize package
1799 setName(eNAME);
1800 setNsPrefix(eNS_PREFIX);
1801 setNsURI(eNS_URI);
1802
1803 // Create type parameters
1804
1805 // Set bounds for type parameters
1806
1807 // Add supertypes to classes
1808 interpretationEClass.getESuperTypes().add(this.getStatement());
1809 basicInterpretationEClass.getESuperTypes().add(this.getInterpretation());
1810 modelSymbolEClass.getESuperTypes().add(this.getSymbol());
1811 partialitySymbolEClass.getESuperTypes().add(this.getSymbol());
1812 existSymbolEClass.getESuperTypes().add(this.getPartialitySymbol());
1813 equalsSymbolEClass.getESuperTypes().add(this.getPartialitySymbol());
1814 dataSymbolEClass.getESuperTypes().add(this.getSymbol());
1815 booleanSymbolEClass.getESuperTypes().add(this.getDataSymbol());
1816 integerSymbolEClass.getESuperTypes().add(this.getDataSymbol());
1817 realSymbolEClass.getESuperTypes().add(this.getDataSymbol());
1818 stringSymbolEClass.getESuperTypes().add(this.getDataSymbol());
1819 objectEClass.getESuperTypes().add(this.getComplexObject());
1820 namedObjectEClass.getESuperTypes().add(this.getObject());
1821 unnamedObjectEClass.getESuperTypes().add(this.getObject());
1822 dataObjectEClass.getESuperTypes().add(this.getObject());
1823 dataObjectEClass.getESuperTypes().add(this.getLiteral());
1824 booleanObjectEClass.getESuperTypes().add(this.getDataObject());
1825 intObjectEClass.getESuperTypes().add(this.getDataObject());
1826 realObjectEClass.getESuperTypes().add(this.getDataObject());
1827 stringObjectEClass.getESuperTypes().add(this.getDataObject());
1828 predicateEClass.getESuperTypes().add(this.getStatement());
1829 predicateSymbolEClass.getESuperTypes().add(this.getPredicate());
1830 errorPredicateEClass.getESuperTypes().add(this.getPredicate());
1831 variableEClass.getESuperTypes().add(this.getLiteral());
1832 allInstancesEClass.getESuperTypes().add(this.getComplexObject());
1833 allObjectsEClass.getESuperTypes().add(this.getComplexObject());
1834 defaultInterpretationEClass.getESuperTypes().add(this.getInterpretation());
1835 cdInterpretationEClass.getESuperTypes().add(this.getInterpretation());
1836 classInterpretationEClass.getESuperTypes().add(this.getCDInterpretation());
1837 enumInterpretationEClass.getESuperTypes().add(this.getCDInterpretation());
1838 globalRelationInterpretationEClass.getESuperTypes().add(this.getCDInterpretation());
1839 booleanTrueEClass.getESuperTypes().add(this.getBooleanValue());
1840 booleanFalseEClass.getESuperTypes().add(this.getBooleanValue());
1841 trueEClass.getESuperTypes().add(this.getTruthValue());
1842 falseEClass.getESuperTypes().add(this.getTruthValue());
1843 unknownEClass.getESuperTypes().add(this.getTruthValue());
1844 errorEClass.getESuperTypes().add(this.getTruthValue());
1845 positiveEClass.getESuperTypes().add(this.getPolarity());
1846 negativeEClass.getESuperTypes().add(this.getPolarity());
1847 reflexiveClosureEClass.getESuperTypes().add(this.getClosureType());
1848 irreflexiveClosureEClass.getESuperTypes().add(this.getClosureType());
1849
1850 // Initialize classes and features; add operations and parameters
1851 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1852 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);
1853
1854 initEClass(statementEClass, Statement.class, "Statement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1855
1856 initEClass(booleanValueEClass, BooleanValue.class, "BooleanValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1857
1858 initEClass(truthValueEClass, TruthValue.class, "TruthValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1859
1860 initEClass(interpretationEClass, Interpretation.class, "Interpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1861
1862 initEClass(basicInterpretationEClass, BasicInterpretation.class, "BasicInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1863 initEReference(getBasicInterpretation_Symbol(), this.getSymbol(), null, "symbol", null, 0, 1, BasicInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1864 initEReference(getBasicInterpretation_Objects(), this.getComplexObject(), null, "objects", null, 0, -1, BasicInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1865 initEReference(getBasicInterpretation_Value(), this.getTruthValue(), null, "value", null, 0, 1, BasicInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1866
1867 initEClass(symbolEClass, Symbol.class, "Symbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1868
1869 initEClass(modelSymbolEClass, ModelSymbol.class, "ModelSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1870 initEAttribute(getModelSymbol_Name(), ecorePackage.getEString(), "name", null, 0, 1, ModelSymbol.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1871
1872 initEClass(partialitySymbolEClass, PartialitySymbol.class, "PartialitySymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1873
1874 initEClass(existSymbolEClass, ExistSymbol.class, "ExistSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1875
1876 initEClass(equalsSymbolEClass, EqualsSymbol.class, "EqualsSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1877
1878 initEClass(dataSymbolEClass, DataSymbol.class, "DataSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1879
1880 initEClass(booleanSymbolEClass, BooleanSymbol.class, "BooleanSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1881
1882 initEClass(integerSymbolEClass, IntegerSymbol.class, "IntegerSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1883
1884 initEClass(realSymbolEClass, RealSymbol.class, "RealSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1885
1886 initEClass(stringSymbolEClass, StringSymbol.class, "StringSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1887
1888 initEClass(complexObjectEClass, ComplexObject.class, "ComplexObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1889
1890 initEClass(objectEClass, org.eclipse.viatra.solver.language.solverLanguage.Object.class, "Object", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1891
1892 initEClass(namedObjectEClass, NamedObject.class, "NamedObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1893 initEAttribute(getNamedObject_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1894
1895 initEClass(unnamedObjectEClass, UnnamedObject.class, "UnnamedObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1896 initEAttribute(getUnnamedObject_Name(), ecorePackage.getEString(), "name", null, 0, 1, UnnamedObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1897
1898 initEClass(dataObjectEClass, DataObject.class, "DataObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1899
1900 initEClass(booleanObjectEClass, BooleanObject.class, "BooleanObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1901 initEReference(getBooleanObject_Value(), this.getBooleanValue(), null, "value", null, 0, 1, BooleanObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1902
1903 initEClass(intObjectEClass, IntObject.class, "IntObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1904 initEAttribute(getIntObject_Value(), ecorePackage.getEInt(), "value", null, 0, 1, IntObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1905
1906 initEClass(realObjectEClass, RealObject.class, "RealObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1907 initEAttribute(getRealObject_Value(), ecorePackage.getEBigDecimal(), "value", null, 0, 1, RealObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1908
1909 initEClass(stringObjectEClass, StringObject.class, "StringObject", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1910 initEAttribute(getStringObject_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringObject.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1911
1912 initEClass(predicateEClass, Predicate.class, "Predicate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1913 initEReference(getPredicate_Parameters(), this.getParameter(), null, "parameters", null, 0, -1, Predicate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1914 initEReference(getPredicate_Bodies(), this.getPatternBody(), null, "bodies", null, 0, -1, Predicate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1915
1916 initEClass(predicateSymbolEClass, PredicateSymbol.class, "PredicateSymbol", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1917 initEReference(getPredicateSymbol_Symbol(), this.getModelSymbol(), null, "symbol", null, 0, 1, PredicateSymbol.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1918
1919 initEClass(errorPredicateEClass, ErrorPredicate.class, "ErrorPredicate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1920 initEAttribute(getErrorPredicate_Name(), ecorePackage.getEString(), "name", null, 0, 1, ErrorPredicate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1921
1922 initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1923 initEReference(getParameter_Variable(), this.getVariable(), null, "variable", null, 0, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1924 initEReference(getParameter_Type(), this.getSymbol(), null, "type", null, 0, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1925
1926 initEClass(patternBodyEClass, PatternBody.class, "PatternBody", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1927 initEReference(getPatternBody_Constraints(), this.getConstraint(), null, "constraints", null, 0, -1, PatternBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1928
1929 initEClass(polarityEClass, Polarity.class, "Polarity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1930
1931 initEClass(constraintEClass, Constraint.class, "Constraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1932 initEReference(getConstraint_Polarity(), this.getPolarity(), null, "polarity", null, 0, 1, Constraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1933 initEReference(getConstraint_Symbol(), this.getModelSymbol(), null, "symbol", null, 0, 1, Constraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1934 initEReference(getConstraint_Params(), this.getLiteral(), null, "params", null, 0, -1, Constraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1935 initEReference(getConstraint_ClosureType(), this.getClosureType(), null, "closureType", null, 0, 1, Constraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1936
1937 initEClass(closureTypeEClass, ClosureType.class, "ClosureType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1938
1939 initEClass(literalEClass, Literal.class, "Literal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1940
1941 initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1942 initEAttribute(getVariable_Name(), ecorePackage.getEString(), "name", null, 0, 1, Variable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1943
1944 initEClass(allInstancesEClass, AllInstances.class, "AllInstances", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1945 initEReference(getAllInstances_Symbol(), this.getSymbol(), null, "symbol", null, 0, 1, AllInstances.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1946
1947 initEClass(allObjectsEClass, AllObjects.class, "AllObjects", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1948
1949 initEClass(defaultInterpretationEClass, DefaultInterpretation.class, "DefaultInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1950 initEReference(getDefaultInterpretation_Interpretation(), this.getBasicInterpretation(), null, "interpretation", null, 0, 1, DefaultInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1951
1952 initEClass(cdInterpretationEClass, CDInterpretation.class, "CDInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1953
1954 initEClass(classInterpretationEClass, ClassInterpretation.class, "ClassInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1955 initEAttribute(getClassInterpretation_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1, ClassInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1956 initEReference(getClassInterpretation_Symbol(), this.getModelSymbol(), null, "symbol", null, 0, 1, ClassInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1957 initEReference(getClassInterpretation_Supertypes(), this.getModelSymbol(), null, "supertypes", null, 0, -1, ClassInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1958 initEReference(getClassInterpretation_Fielt(), this.getFieldRelationInterpretation(), null, "fielt", null, 0, -1, ClassInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1959
1960 initEClass(enumInterpretationEClass, EnumInterpretation.class, "EnumInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1961 initEReference(getEnumInterpretation_Symbol(), this.getModelSymbol(), null, "Symbol", null, 0, 1, EnumInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1962 initEReference(getEnumInterpretation_Objects(), this.getNamedObject(), null, "objects", null, 0, -1, EnumInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1963
1964 initEClass(fieldRelationInterpretationEClass, FieldRelationInterpretation.class, "FieldRelationInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1965 initEAttribute(getFieldRelationInterpretation_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1, FieldRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1966 initEReference(getFieldRelationInterpretation_Symbol(), this.getModelSymbol(), null, "symbol", null, 0, 1, FieldRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1967 initEReference(getFieldRelationInterpretation_Multiplicity(), this.getMultiplicityDefinition(), null, "multiplicity", null, 0, 1, FieldRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1968 initEReference(getFieldRelationInterpretation_Target(), this.getSymbol(), null, "target", null, 0, 1, FieldRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1969
1970 initEClass(globalRelationInterpretationEClass, GlobalRelationInterpretation.class, "GlobalRelationInterpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1971 initEAttribute(getGlobalRelationInterpretation_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1, GlobalRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1972 initEReference(getGlobalRelationInterpretation_Symbol(), this.getModelSymbol(), null, "symbol", null, 0, 1, GlobalRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1973 initEReference(getGlobalRelationInterpretation_SourceMultiplicity(), this.getMultiplicityDefinition(), null, "sourceMultiplicity", null, 0, 1, GlobalRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1974 initEReference(getGlobalRelationInterpretation_Source(), this.getSymbol(), null, "source", null, 0, 1, GlobalRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1975 initEReference(getGlobalRelationInterpretation_TargetMultiplicity(), this.getMultiplicityDefinition(), null, "targetMultiplicity", null, 0, 1, GlobalRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1976 initEReference(getGlobalRelationInterpretation_Target(), this.getSymbol(), null, "target", null, 0, 1, GlobalRelationInterpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1977
1978 initEClass(multiplicityDefinitionEClass, MultiplicityDefinition.class, "MultiplicityDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1979 initEAttribute(getMultiplicityDefinition_Lower(), ecorePackage.getEInt(), "lower", null, 0, 1, MultiplicityDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1980 initEAttribute(getMultiplicityDefinition_Upper(), ecorePackage.getEInt(), "upper", null, 0, 1, MultiplicityDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1981 initEAttribute(getMultiplicityDefinition_UnlimitedUpper(), ecorePackage.getEBoolean(), "unlimitedUpper", null, 0, 1, MultiplicityDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1982
1983 initEClass(booleanTrueEClass, BooleanTrue.class, "BooleanTrue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1984
1985 initEClass(booleanFalseEClass, BooleanFalse.class, "BooleanFalse", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1986
1987 initEClass(trueEClass, True.class, "True", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1988
1989 initEClass(falseEClass, False.class, "False", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1990
1991 initEClass(unknownEClass, Unknown.class, "Unknown", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1992
1993 initEClass(errorEClass, org.eclipse.viatra.solver.language.solverLanguage.Error.class, "Error", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1994
1995 initEClass(positiveEClass, Positive.class, "Positive", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1996
1997 initEClass(negativeEClass, Negative.class, "Negative", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1998
1999 initEClass(reflexiveClosureEClass, ReflexiveClosure.class, "ReflexiveClosure", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2000
2001 initEClass(irreflexiveClosureEClass, IrreflexiveClosure.class, "IrreflexiveClosure", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2002
2003 // Create resource
2004 createResource(eNS_URI);
2005 }
2006
2007} //SolverLanguagePackageImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java
new file mode 100644
index 00000000..6e660396
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
11import org.eclipse.viatra.solver.language.solverLanguage.Statement;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Statement</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class StatementImpl extends MinimalEObjectImpl.Container implements Statement
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected StatementImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.STATEMENT;
41 }
42
43} //StatementImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringObjectImpl.java
new file mode 100644
index 00000000..7a7866a7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringObjectImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13import org.eclipse.viatra.solver.language.solverLanguage.StringObject;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>String Object</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringObjectImpl#getValue <em>Value</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class StringObjectImpl extends DataObjectImpl implements StringObject
29{
30 /**
31 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getValue()
35 * @generated
36 * @ordered
37 */
38 protected static final String VALUE_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getValue()
45 * @generated
46 * @ordered
47 */
48 protected String value = VALUE_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected StringObjectImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.STRING_OBJECT;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public String getValue()
78 {
79 return value;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setValue(String newValue)
89 {
90 String oldValue = value;
91 value = newValue;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.STRING_OBJECT__VALUE, oldValue, value));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.STRING_OBJECT__VALUE:
107 return getValue();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.STRING_OBJECT__VALUE:
123 setValue((String)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.STRING_OBJECT__VALUE:
140 setValue(VALUE_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.STRING_OBJECT__VALUE:
157 return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (value: ");
174 result.append(value);
175 result.append(')');
176 return result.toString();
177 }
178
179} //StringObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringSymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringSymbolImpl.java
new file mode 100644
index 00000000..faf3f06a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringSymbolImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9import org.eclipse.viatra.solver.language.solverLanguage.StringSymbol;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>String Symbol</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class StringSymbolImpl extends DataSymbolImpl implements StringSymbol
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected StringSymbolImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.STRING_SYMBOL;
39 }
40
41} //StringSymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java
new file mode 100644
index 00000000..15d1294e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
11import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Symbol</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class SymbolImpl extends MinimalEObjectImpl.Container implements Symbol
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected SymbolImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.SYMBOL;
41 }
42
43} //SymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TrueImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TrueImpl.java
new file mode 100644
index 00000000..c0e04a9a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TrueImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9import org.eclipse.viatra.solver.language.solverLanguage.True;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>True</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class TrueImpl extends TruthValueImpl implements True
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected TrueImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.TRUE;
39 }
40
41} //TrueImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TruthValueImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TruthValueImpl.java
new file mode 100644
index 00000000..f5b0fba6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TruthValueImpl.java
@@ -0,0 +1,43 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
9
10import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
11import org.eclipse.viatra.solver.language.solverLanguage.TruthValue;
12
13/**
14 * <!-- begin-user-doc -->
15 * An implementation of the model object '<em><b>Truth Value</b></em>'.
16 * <!-- end-user-doc -->
17 *
18 * @generated
19 */
20public class TruthValueImpl extends MinimalEObjectImpl.Container implements TruthValue
21{
22 /**
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @generated
26 */
27 protected TruthValueImpl()
28 {
29 super();
30 }
31
32 /**
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 @Override
38 protected EClass eStaticClass()
39 {
40 return SolverLanguagePackage.Literals.TRUTH_VALUE;
41 }
42
43} //TruthValueImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnknownImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnknownImpl.java
new file mode 100644
index 00000000..44195feb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnknownImpl.java
@@ -0,0 +1,41 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.ecore.EClass;
7
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9import org.eclipse.viatra.solver.language.solverLanguage.Unknown;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Unknown</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public class UnknownImpl extends TruthValueImpl implements Unknown
19{
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected UnknownImpl()
26 {
27 super();
28 }
29
30 /**
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @generated
34 */
35 @Override
36 protected EClass eStaticClass()
37 {
38 return SolverLanguagePackage.Literals.UNKNOWN;
39 }
40
41} //UnknownImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedObjectImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedObjectImpl.java
new file mode 100644
index 00000000..39bec164
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedObjectImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13import org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Unnamed Object</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedObjectImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class UnnamedObjectImpl extends ObjectImpl implements UnnamedObject
29{
30 /**
31 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getName()
35 * @generated
36 * @ordered
37 */
38 protected static final String NAME_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getName()
45 * @generated
46 * @ordered
47 */
48 protected String name = NAME_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected UnnamedObjectImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.UNNAMED_OBJECT;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public String getName()
78 {
79 return name;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setName(String newName)
89 {
90 String oldName = name;
91 name = newName;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNNAMED_OBJECT__NAME, oldName, name));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.UNNAMED_OBJECT__NAME:
107 return getName();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.UNNAMED_OBJECT__NAME:
123 setName((String)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.UNNAMED_OBJECT__NAME:
140 setName(NAME_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.UNNAMED_OBJECT__NAME:
157 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (name: ");
174 result.append(name);
175 result.append(')');
176 return result.toString();
177 }
178
179} //UnnamedObjectImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java
new file mode 100644
index 00000000..9a254023
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java
@@ -0,0 +1,179 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.impl;
5
6import org.eclipse.emf.common.notify.Notification;
7
8import org.eclipse.emf.ecore.EClass;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13import org.eclipse.viatra.solver.language.solverLanguage.Variable;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Variable</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class VariableImpl extends LiteralImpl implements Variable
29{
30 /**
31 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getName()
35 * @generated
36 * @ordered
37 */
38 protected static final String NAME_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getName()
45 * @generated
46 * @ordered
47 */
48 protected String name = NAME_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected VariableImpl()
56 {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass()
67 {
68 return SolverLanguagePackage.Literals.VARIABLE;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 public String getName()
78 {
79 return name;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 @Override
88 public void setName(String newName)
89 {
90 String oldName = name;
91 name = newName;
92 if (eNotificationRequired())
93 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.VARIABLE__NAME, oldName, name));
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 public Object eGet(int featureID, boolean resolve, boolean coreType)
103 {
104 switch (featureID)
105 {
106 case SolverLanguagePackage.VARIABLE__NAME:
107 return getName();
108 }
109 return super.eGet(featureID, resolve, coreType);
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public void eSet(int featureID, Object newValue)
119 {
120 switch (featureID)
121 {
122 case SolverLanguagePackage.VARIABLE__NAME:
123 setName((String)newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID)
136 {
137 switch (featureID)
138 {
139 case SolverLanguagePackage.VARIABLE__NAME:
140 setName(NAME_EDEFAULT);
141 return;
142 }
143 super.eUnset(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public boolean eIsSet(int featureID)
153 {
154 switch (featureID)
155 {
156 case SolverLanguagePackage.VARIABLE__NAME:
157 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
158 }
159 return super.eIsSet(featureID);
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public String toString()
169 {
170 if (eIsProxy()) return super.toString();
171
172 StringBuilder result = new StringBuilder(super.toString());
173 result.append(" (name: ");
174 result.append(name);
175 result.append(')');
176 return result.toString();
177 }
178
179} //VariableImpl
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java
new file mode 100644
index 00000000..e76e359a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java
@@ -0,0 +1,1245 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.util;
5
6import org.eclipse.emf.common.notify.Adapter;
7import org.eclipse.emf.common.notify.Notifier;
8
9import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
10
11import org.eclipse.emf.ecore.EObject;
12
13import org.eclipse.viatra.solver.language.solverLanguage.AllInstances;
14import org.eclipse.viatra.solver.language.solverLanguage.AllObjects;
15import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
16import org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse;
17import org.eclipse.viatra.solver.language.solverLanguage.BooleanObject;
18import org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol;
19import org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue;
20import org.eclipse.viatra.solver.language.solverLanguage.BooleanValue;
21import org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation;
22import org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation;
23import org.eclipse.viatra.solver.language.solverLanguage.ClosureType;
24import org.eclipse.viatra.solver.language.solverLanguage.ComplexObject;
25import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
26import org.eclipse.viatra.solver.language.solverLanguage.DataObject;
27import org.eclipse.viatra.solver.language.solverLanguage.DataSymbol;
28import org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation;
29import org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation;
30import org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol;
31import org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate;
32import org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol;
33import org.eclipse.viatra.solver.language.solverLanguage.False;
34import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
35import org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation;
36import org.eclipse.viatra.solver.language.solverLanguage.IntObject;
37import org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol;
38import org.eclipse.viatra.solver.language.solverLanguage.Interpretation;
39import org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure;
40import org.eclipse.viatra.solver.language.solverLanguage.Literal;
41import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
42import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
43import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
44import org.eclipse.viatra.solver.language.solverLanguage.Negative;
45import org.eclipse.viatra.solver.language.solverLanguage.Parameter;
46import org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol;
47import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
48import org.eclipse.viatra.solver.language.solverLanguage.Polarity;
49import org.eclipse.viatra.solver.language.solverLanguage.Positive;
50import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
51import org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol;
52import org.eclipse.viatra.solver.language.solverLanguage.Problem;
53import org.eclipse.viatra.solver.language.solverLanguage.RealObject;
54import org.eclipse.viatra.solver.language.solverLanguage.RealSymbol;
55import org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure;
56import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
57import org.eclipse.viatra.solver.language.solverLanguage.Statement;
58import org.eclipse.viatra.solver.language.solverLanguage.StringObject;
59import org.eclipse.viatra.solver.language.solverLanguage.StringSymbol;
60import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
61import org.eclipse.viatra.solver.language.solverLanguage.True;
62import org.eclipse.viatra.solver.language.solverLanguage.TruthValue;
63import org.eclipse.viatra.solver.language.solverLanguage.Unknown;
64import org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject;
65import org.eclipse.viatra.solver.language.solverLanguage.Variable;
66
67/**
68 * <!-- begin-user-doc -->
69 * The <b>Adapter Factory</b> for the model.
70 * It provides an adapter <code>createXXX</code> method for each class of the model.
71 * <!-- end-user-doc -->
72 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage
73 * @generated
74 */
75public class SolverLanguageAdapterFactory extends AdapterFactoryImpl
76{
77 /**
78 * The cached model package.
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 protected static SolverLanguagePackage modelPackage;
84
85 /**
86 * Creates an instance of the adapter factory.
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @generated
90 */
91 public SolverLanguageAdapterFactory()
92 {
93 if (modelPackage == null)
94 {
95 modelPackage = SolverLanguagePackage.eINSTANCE;
96 }
97 }
98
99 /**
100 * Returns whether this factory is applicable for the type of the object.
101 * <!-- begin-user-doc -->
102 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
103 * <!-- end-user-doc -->
104 * @return whether this factory is applicable for the type of the object.
105 * @generated
106 */
107 @Override
108 public boolean isFactoryForType(Object object)
109 {
110 if (object == modelPackage)
111 {
112 return true;
113 }
114 if (object instanceof EObject)
115 {
116 return ((EObject)object).eClass().getEPackage() == modelPackage;
117 }
118 return false;
119 }
120
121 /**
122 * The switch that delegates to the <code>createXXX</code> methods.
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 protected SolverLanguageSwitch<Adapter> modelSwitch =
128 new SolverLanguageSwitch<Adapter>()
129 {
130 @Override
131 public Adapter caseProblem(Problem object)
132 {
133 return createProblemAdapter();
134 }
135 @Override
136 public Adapter caseStatement(Statement object)
137 {
138 return createStatementAdapter();
139 }
140 @Override
141 public Adapter caseBooleanValue(BooleanValue object)
142 {
143 return createBooleanValueAdapter();
144 }
145 @Override
146 public Adapter caseTruthValue(TruthValue object)
147 {
148 return createTruthValueAdapter();
149 }
150 @Override
151 public Adapter caseInterpretation(Interpretation object)
152 {
153 return createInterpretationAdapter();
154 }
155 @Override
156 public Adapter caseBasicInterpretation(BasicInterpretation object)
157 {
158 return createBasicInterpretationAdapter();
159 }
160 @Override
161 public Adapter caseSymbol(Symbol object)
162 {
163 return createSymbolAdapter();
164 }
165 @Override
166 public Adapter caseModelSymbol(ModelSymbol object)
167 {
168 return createModelSymbolAdapter();
169 }
170 @Override
171 public Adapter casePartialitySymbol(PartialitySymbol object)
172 {
173 return createPartialitySymbolAdapter();
174 }
175 @Override
176 public Adapter caseExistSymbol(ExistSymbol object)
177 {
178 return createExistSymbolAdapter();
179 }
180 @Override
181 public Adapter caseEqualsSymbol(EqualsSymbol object)
182 {
183 return createEqualsSymbolAdapter();
184 }
185 @Override
186 public Adapter caseDataSymbol(DataSymbol object)
187 {
188 return createDataSymbolAdapter();
189 }
190 @Override
191 public Adapter caseBooleanSymbol(BooleanSymbol object)
192 {
193 return createBooleanSymbolAdapter();
194 }
195 @Override
196 public Adapter caseIntegerSymbol(IntegerSymbol object)
197 {
198 return createIntegerSymbolAdapter();
199 }
200 @Override
201 public Adapter caseRealSymbol(RealSymbol object)
202 {
203 return createRealSymbolAdapter();
204 }
205 @Override
206 public Adapter caseStringSymbol(StringSymbol object)
207 {
208 return createStringSymbolAdapter();
209 }
210 @Override
211 public Adapter caseComplexObject(ComplexObject object)
212 {
213 return createComplexObjectAdapter();
214 }
215 @Override
216 public Adapter caseObject(org.eclipse.viatra.solver.language.solverLanguage.Object object)
217 {
218 return createObjectAdapter();
219 }
220 @Override
221 public Adapter caseNamedObject(NamedObject object)
222 {
223 return createNamedObjectAdapter();
224 }
225 @Override
226 public Adapter caseUnnamedObject(UnnamedObject object)
227 {
228 return createUnnamedObjectAdapter();
229 }
230 @Override
231 public Adapter caseDataObject(DataObject object)
232 {
233 return createDataObjectAdapter();
234 }
235 @Override
236 public Adapter caseBooleanObject(BooleanObject object)
237 {
238 return createBooleanObjectAdapter();
239 }
240 @Override
241 public Adapter caseIntObject(IntObject object)
242 {
243 return createIntObjectAdapter();
244 }
245 @Override
246 public Adapter caseRealObject(RealObject object)
247 {
248 return createRealObjectAdapter();
249 }
250 @Override
251 public Adapter caseStringObject(StringObject object)
252 {
253 return createStringObjectAdapter();
254 }
255 @Override
256 public Adapter casePredicate(Predicate object)
257 {
258 return createPredicateAdapter();
259 }
260 @Override
261 public Adapter casePredicateSymbol(PredicateSymbol object)
262 {
263 return createPredicateSymbolAdapter();
264 }
265 @Override
266 public Adapter caseErrorPredicate(ErrorPredicate object)
267 {
268 return createErrorPredicateAdapter();
269 }
270 @Override
271 public Adapter caseParameter(Parameter object)
272 {
273 return createParameterAdapter();
274 }
275 @Override
276 public Adapter casePatternBody(PatternBody object)
277 {
278 return createPatternBodyAdapter();
279 }
280 @Override
281 public Adapter casePolarity(Polarity object)
282 {
283 return createPolarityAdapter();
284 }
285 @Override
286 public Adapter caseConstraint(Constraint object)
287 {
288 return createConstraintAdapter();
289 }
290 @Override
291 public Adapter caseClosureType(ClosureType object)
292 {
293 return createClosureTypeAdapter();
294 }
295 @Override
296 public Adapter caseLiteral(Literal object)
297 {
298 return createLiteralAdapter();
299 }
300 @Override
301 public Adapter caseVariable(Variable object)
302 {
303 return createVariableAdapter();
304 }
305 @Override
306 public Adapter caseAllInstances(AllInstances object)
307 {
308 return createAllInstancesAdapter();
309 }
310 @Override
311 public Adapter caseAllObjects(AllObjects object)
312 {
313 return createAllObjectsAdapter();
314 }
315 @Override
316 public Adapter caseDefaultInterpretation(DefaultInterpretation object)
317 {
318 return createDefaultInterpretationAdapter();
319 }
320 @Override
321 public Adapter caseCDInterpretation(CDInterpretation object)
322 {
323 return createCDInterpretationAdapter();
324 }
325 @Override
326 public Adapter caseClassInterpretation(ClassInterpretation object)
327 {
328 return createClassInterpretationAdapter();
329 }
330 @Override
331 public Adapter caseEnumInterpretation(EnumInterpretation object)
332 {
333 return createEnumInterpretationAdapter();
334 }
335 @Override
336 public Adapter caseFieldRelationInterpretation(FieldRelationInterpretation object)
337 {
338 return createFieldRelationInterpretationAdapter();
339 }
340 @Override
341 public Adapter caseGlobalRelationInterpretation(GlobalRelationInterpretation object)
342 {
343 return createGlobalRelationInterpretationAdapter();
344 }
345 @Override
346 public Adapter caseMultiplicityDefinition(MultiplicityDefinition object)
347 {
348 return createMultiplicityDefinitionAdapter();
349 }
350 @Override
351 public Adapter caseBooleanTrue(BooleanTrue object)
352 {
353 return createBooleanTrueAdapter();
354 }
355 @Override
356 public Adapter caseBooleanFalse(BooleanFalse object)
357 {
358 return createBooleanFalseAdapter();
359 }
360 @Override
361 public Adapter caseTrue(True object)
362 {
363 return createTrueAdapter();
364 }
365 @Override
366 public Adapter caseFalse(False object)
367 {
368 return createFalseAdapter();
369 }
370 @Override
371 public Adapter caseUnknown(Unknown object)
372 {
373 return createUnknownAdapter();
374 }
375 @Override
376 public Adapter caseError(org.eclipse.viatra.solver.language.solverLanguage.Error object)
377 {
378 return createErrorAdapter();
379 }
380 @Override
381 public Adapter casePositive(Positive object)
382 {
383 return createPositiveAdapter();
384 }
385 @Override
386 public Adapter caseNegative(Negative object)
387 {
388 return createNegativeAdapter();
389 }
390 @Override
391 public Adapter caseReflexiveClosure(ReflexiveClosure object)
392 {
393 return createReflexiveClosureAdapter();
394 }
395 @Override
396 public Adapter caseIrreflexiveClosure(IrreflexiveClosure object)
397 {
398 return createIrreflexiveClosureAdapter();
399 }
400 @Override
401 public Adapter defaultCase(EObject object)
402 {
403 return createEObjectAdapter();
404 }
405 };
406
407 /**
408 * Creates an adapter for the <code>target</code>.
409 * <!-- begin-user-doc -->
410 * <!-- end-user-doc -->
411 * @param target the object to adapt.
412 * @return the adapter for the <code>target</code>.
413 * @generated
414 */
415 @Override
416 public Adapter createAdapter(Notifier target)
417 {
418 return modelSwitch.doSwitch((EObject)target);
419 }
420
421
422 /**
423 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem <em>Problem</em>}'.
424 * <!-- begin-user-doc -->
425 * This default implementation returns null so that we can easily ignore cases;
426 * it's useful to ignore a case when inheritance will catch all the cases anyway.
427 * <!-- end-user-doc -->
428 * @return the new adapter.
429 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem
430 * @generated
431 */
432 public Adapter createProblemAdapter()
433 {
434 return null;
435 }
436
437 /**
438 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement <em>Statement</em>}'.
439 * <!-- begin-user-doc -->
440 * This default implementation returns null so that we can easily ignore cases;
441 * it's useful to ignore a case when inheritance will catch all the cases anyway.
442 * <!-- end-user-doc -->
443 * @return the new adapter.
444 * @see org.eclipse.viatra.solver.language.solverLanguage.Statement
445 * @generated
446 */
447 public Adapter createStatementAdapter()
448 {
449 return null;
450 }
451
452 /**
453 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanValue <em>Boolean Value</em>}'.
454 * <!-- begin-user-doc -->
455 * This default implementation returns null so that we can easily ignore cases;
456 * it's useful to ignore a case when inheritance will catch all the cases anyway.
457 * <!-- end-user-doc -->
458 * @return the new adapter.
459 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanValue
460 * @generated
461 */
462 public Adapter createBooleanValueAdapter()
463 {
464 return null;
465 }
466
467 /**
468 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TruthValue <em>Truth Value</em>}'.
469 * <!-- begin-user-doc -->
470 * This default implementation returns null so that we can easily ignore cases;
471 * it's useful to ignore a case when inheritance will catch all the cases anyway.
472 * <!-- end-user-doc -->
473 * @return the new adapter.
474 * @see org.eclipse.viatra.solver.language.solverLanguage.TruthValue
475 * @generated
476 */
477 public Adapter createTruthValueAdapter()
478 {
479 return null;
480 }
481
482 /**
483 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation <em>Interpretation</em>}'.
484 * <!-- begin-user-doc -->
485 * This default implementation returns null so that we can easily ignore cases;
486 * it's useful to ignore a case when inheritance will catch all the cases anyway.
487 * <!-- end-user-doc -->
488 * @return the new adapter.
489 * @see org.eclipse.viatra.solver.language.solverLanguage.Interpretation
490 * @generated
491 */
492 public Adapter createInterpretationAdapter()
493 {
494 return null;
495 }
496
497 /**
498 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation <em>Basic Interpretation</em>}'.
499 * <!-- begin-user-doc -->
500 * This default implementation returns null so that we can easily ignore cases;
501 * it's useful to ignore a case when inheritance will catch all the cases anyway.
502 * <!-- end-user-doc -->
503 * @return the new adapter.
504 * @see org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation
505 * @generated
506 */
507 public Adapter createBasicInterpretationAdapter()
508 {
509 return null;
510 }
511
512 /**
513 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol <em>Symbol</em>}'.
514 * <!-- begin-user-doc -->
515 * This default implementation returns null so that we can easily ignore cases;
516 * it's useful to ignore a case when inheritance will catch all the cases anyway.
517 * <!-- end-user-doc -->
518 * @return the new adapter.
519 * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol
520 * @generated
521 */
522 public Adapter createSymbolAdapter()
523 {
524 return null;
525 }
526
527 /**
528 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol <em>Model Symbol</em>}'.
529 * <!-- begin-user-doc -->
530 * This default implementation returns null so that we can easily ignore cases;
531 * it's useful to ignore a case when inheritance will catch all the cases anyway.
532 * <!-- end-user-doc -->
533 * @return the new adapter.
534 * @see org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol
535 * @generated
536 */
537 public Adapter createModelSymbolAdapter()
538 {
539 return null;
540 }
541
542 /**
543 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol <em>Partiality Symbol</em>}'.
544 * <!-- begin-user-doc -->
545 * This default implementation returns null so that we can easily ignore cases;
546 * it's useful to ignore a case when inheritance will catch all the cases anyway.
547 * <!-- end-user-doc -->
548 * @return the new adapter.
549 * @see org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol
550 * @generated
551 */
552 public Adapter createPartialitySymbolAdapter()
553 {
554 return null;
555 }
556
557 /**
558 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol <em>Exist Symbol</em>}'.
559 * <!-- begin-user-doc -->
560 * This default implementation returns null so that we can easily ignore cases;
561 * it's useful to ignore a case when inheritance will catch all the cases anyway.
562 * <!-- end-user-doc -->
563 * @return the new adapter.
564 * @see org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol
565 * @generated
566 */
567 public Adapter createExistSymbolAdapter()
568 {
569 return null;
570 }
571
572 /**
573 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol <em>Equals Symbol</em>}'.
574 * <!-- begin-user-doc -->
575 * This default implementation returns null so that we can easily ignore cases;
576 * it's useful to ignore a case when inheritance will catch all the cases anyway.
577 * <!-- end-user-doc -->
578 * @return the new adapter.
579 * @see org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol
580 * @generated
581 */
582 public Adapter createEqualsSymbolAdapter()
583 {
584 return null;
585 }
586
587 /**
588 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.DataSymbol <em>Data Symbol</em>}'.
589 * <!-- begin-user-doc -->
590 * This default implementation returns null so that we can easily ignore cases;
591 * it's useful to ignore a case when inheritance will catch all the cases anyway.
592 * <!-- end-user-doc -->
593 * @return the new adapter.
594 * @see org.eclipse.viatra.solver.language.solverLanguage.DataSymbol
595 * @generated
596 */
597 public Adapter createDataSymbolAdapter()
598 {
599 return null;
600 }
601
602 /**
603 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol <em>Boolean Symbol</em>}'.
604 * <!-- begin-user-doc -->
605 * This default implementation returns null so that we can easily ignore cases;
606 * it's useful to ignore a case when inheritance will catch all the cases anyway.
607 * <!-- end-user-doc -->
608 * @return the new adapter.
609 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol
610 * @generated
611 */
612 public Adapter createBooleanSymbolAdapter()
613 {
614 return null;
615 }
616
617 /**
618 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol <em>Integer Symbol</em>}'.
619 * <!-- begin-user-doc -->
620 * This default implementation returns null so that we can easily ignore cases;
621 * it's useful to ignore a case when inheritance will catch all the cases anyway.
622 * <!-- end-user-doc -->
623 * @return the new adapter.
624 * @see org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol
625 * @generated
626 */
627 public Adapter createIntegerSymbolAdapter()
628 {
629 return null;
630 }
631
632 /**
633 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealSymbol <em>Real Symbol</em>}'.
634 * <!-- begin-user-doc -->
635 * This default implementation returns null so that we can easily ignore cases;
636 * it's useful to ignore a case when inheritance will catch all the cases anyway.
637 * <!-- end-user-doc -->
638 * @return the new adapter.
639 * @see org.eclipse.viatra.solver.language.solverLanguage.RealSymbol
640 * @generated
641 */
642 public Adapter createRealSymbolAdapter()
643 {
644 return null;
645 }
646
647 /**
648 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringSymbol <em>String Symbol</em>}'.
649 * <!-- begin-user-doc -->
650 * This default implementation returns null so that we can easily ignore cases;
651 * it's useful to ignore a case when inheritance will catch all the cases anyway.
652 * <!-- end-user-doc -->
653 * @return the new adapter.
654 * @see org.eclipse.viatra.solver.language.solverLanguage.StringSymbol
655 * @generated
656 */
657 public Adapter createStringSymbolAdapter()
658 {
659 return null;
660 }
661
662 /**
663 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ComplexObject <em>Complex Object</em>}'.
664 * <!-- begin-user-doc -->
665 * This default implementation returns null so that we can easily ignore cases;
666 * it's useful to ignore a case when inheritance will catch all the cases anyway.
667 * <!-- end-user-doc -->
668 * @return the new adapter.
669 * @see org.eclipse.viatra.solver.language.solverLanguage.ComplexObject
670 * @generated
671 */
672 public Adapter createComplexObjectAdapter()
673 {
674 return null;
675 }
676
677 /**
678 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Object <em>Object</em>}'.
679 * <!-- begin-user-doc -->
680 * This default implementation returns null so that we can easily ignore cases;
681 * it's useful to ignore a case when inheritance will catch all the cases anyway.
682 * <!-- end-user-doc -->
683 * @return the new adapter.
684 * @see org.eclipse.viatra.solver.language.solverLanguage.Object
685 * @generated
686 */
687 public Adapter createObjectAdapter()
688 {
689 return null;
690 }
691
692 /**
693 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedObject <em>Named Object</em>}'.
694 * <!-- begin-user-doc -->
695 * This default implementation returns null so that we can easily ignore cases;
696 * it's useful to ignore a case when inheritance will catch all the cases anyway.
697 * <!-- end-user-doc -->
698 * @return the new adapter.
699 * @see org.eclipse.viatra.solver.language.solverLanguage.NamedObject
700 * @generated
701 */
702 public Adapter createNamedObjectAdapter()
703 {
704 return null;
705 }
706
707 /**
708 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject <em>Unnamed Object</em>}'.
709 * <!-- begin-user-doc -->
710 * This default implementation returns null so that we can easily ignore cases;
711 * it's useful to ignore a case when inheritance will catch all the cases anyway.
712 * <!-- end-user-doc -->
713 * @return the new adapter.
714 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject
715 * @generated
716 */
717 public Adapter createUnnamedObjectAdapter()
718 {
719 return null;
720 }
721
722 /**
723 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.DataObject <em>Data Object</em>}'.
724 * <!-- begin-user-doc -->
725 * This default implementation returns null so that we can easily ignore cases;
726 * it's useful to ignore a case when inheritance will catch all the cases anyway.
727 * <!-- end-user-doc -->
728 * @return the new adapter.
729 * @see org.eclipse.viatra.solver.language.solverLanguage.DataObject
730 * @generated
731 */
732 public Adapter createDataObjectAdapter()
733 {
734 return null;
735 }
736
737 /**
738 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanObject <em>Boolean Object</em>}'.
739 * <!-- begin-user-doc -->
740 * This default implementation returns null so that we can easily ignore cases;
741 * it's useful to ignore a case when inheritance will catch all the cases anyway.
742 * <!-- end-user-doc -->
743 * @return the new adapter.
744 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanObject
745 * @generated
746 */
747 public Adapter createBooleanObjectAdapter()
748 {
749 return null;
750 }
751
752 /**
753 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntObject <em>Int Object</em>}'.
754 * <!-- begin-user-doc -->
755 * This default implementation returns null so that we can easily ignore cases;
756 * it's useful to ignore a case when inheritance will catch all the cases anyway.
757 * <!-- end-user-doc -->
758 * @return the new adapter.
759 * @see org.eclipse.viatra.solver.language.solverLanguage.IntObject
760 * @generated
761 */
762 public Adapter createIntObjectAdapter()
763 {
764 return null;
765 }
766
767 /**
768 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealObject <em>Real Object</em>}'.
769 * <!-- begin-user-doc -->
770 * This default implementation returns null so that we can easily ignore cases;
771 * it's useful to ignore a case when inheritance will catch all the cases anyway.
772 * <!-- end-user-doc -->
773 * @return the new adapter.
774 * @see org.eclipse.viatra.solver.language.solverLanguage.RealObject
775 * @generated
776 */
777 public Adapter createRealObjectAdapter()
778 {
779 return null;
780 }
781
782 /**
783 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringObject <em>String Object</em>}'.
784 * <!-- begin-user-doc -->
785 * This default implementation returns null so that we can easily ignore cases;
786 * it's useful to ignore a case when inheritance will catch all the cases anyway.
787 * <!-- end-user-doc -->
788 * @return the new adapter.
789 * @see org.eclipse.viatra.solver.language.solverLanguage.StringObject
790 * @generated
791 */
792 public Adapter createStringObjectAdapter()
793 {
794 return null;
795 }
796
797 /**
798 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate <em>Predicate</em>}'.
799 * <!-- begin-user-doc -->
800 * This default implementation returns null so that we can easily ignore cases;
801 * it's useful to ignore a case when inheritance will catch all the cases anyway.
802 * <!-- end-user-doc -->
803 * @return the new adapter.
804 * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate
805 * @generated
806 */
807 public Adapter createPredicateAdapter()
808 {
809 return null;
810 }
811
812 /**
813 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol <em>Predicate Symbol</em>}'.
814 * <!-- begin-user-doc -->
815 * This default implementation returns null so that we can easily ignore cases;
816 * it's useful to ignore a case when inheritance will catch all the cases anyway.
817 * <!-- end-user-doc -->
818 * @return the new adapter.
819 * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol
820 * @generated
821 */
822 public Adapter createPredicateSymbolAdapter()
823 {
824 return null;
825 }
826
827 /**
828 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate <em>Error Predicate</em>}'.
829 * <!-- begin-user-doc -->
830 * This default implementation returns null so that we can easily ignore cases;
831 * it's useful to ignore a case when inheritance will catch all the cases anyway.
832 * <!-- end-user-doc -->
833 * @return the new adapter.
834 * @see org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate
835 * @generated
836 */
837 public Adapter createErrorPredicateAdapter()
838 {
839 return null;
840 }
841
842 /**
843 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Parameter <em>Parameter</em>}'.
844 * <!-- begin-user-doc -->
845 * This default implementation returns null so that we can easily ignore cases;
846 * it's useful to ignore a case when inheritance will catch all the cases anyway.
847 * <!-- end-user-doc -->
848 * @return the new adapter.
849 * @see org.eclipse.viatra.solver.language.solverLanguage.Parameter
850 * @generated
851 */
852 public Adapter createParameterAdapter()
853 {
854 return null;
855 }
856
857 /**
858 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PatternBody <em>Pattern Body</em>}'.
859 * <!-- begin-user-doc -->
860 * This default implementation returns null so that we can easily ignore cases;
861 * it's useful to ignore a case when inheritance will catch all the cases anyway.
862 * <!-- end-user-doc -->
863 * @return the new adapter.
864 * @see org.eclipse.viatra.solver.language.solverLanguage.PatternBody
865 * @generated
866 */
867 public Adapter createPatternBodyAdapter()
868 {
869 return null;
870 }
871
872 /**
873 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Polarity <em>Polarity</em>}'.
874 * <!-- begin-user-doc -->
875 * This default implementation returns null so that we can easily ignore cases;
876 * it's useful to ignore a case when inheritance will catch all the cases anyway.
877 * <!-- end-user-doc -->
878 * @return the new adapter.
879 * @see org.eclipse.viatra.solver.language.solverLanguage.Polarity
880 * @generated
881 */
882 public Adapter createPolarityAdapter()
883 {
884 return null;
885 }
886
887 /**
888 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Constraint <em>Constraint</em>}'.
889 * <!-- begin-user-doc -->
890 * This default implementation returns null so that we can easily ignore cases;
891 * it's useful to ignore a case when inheritance will catch all the cases anyway.
892 * <!-- end-user-doc -->
893 * @return the new adapter.
894 * @see org.eclipse.viatra.solver.language.solverLanguage.Constraint
895 * @generated
896 */
897 public Adapter createConstraintAdapter()
898 {
899 return null;
900 }
901
902 /**
903 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClosureType <em>Closure Type</em>}'.
904 * <!-- begin-user-doc -->
905 * This default implementation returns null so that we can easily ignore cases;
906 * it's useful to ignore a case when inheritance will catch all the cases anyway.
907 * <!-- end-user-doc -->
908 * @return the new adapter.
909 * @see org.eclipse.viatra.solver.language.solverLanguage.ClosureType
910 * @generated
911 */
912 public Adapter createClosureTypeAdapter()
913 {
914 return null;
915 }
916
917 /**
918 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal <em>Literal</em>}'.
919 * <!-- begin-user-doc -->
920 * This default implementation returns null so that we can easily ignore cases;
921 * it's useful to ignore a case when inheritance will catch all the cases anyway.
922 * <!-- end-user-doc -->
923 * @return the new adapter.
924 * @see org.eclipse.viatra.solver.language.solverLanguage.Literal
925 * @generated
926 */
927 public Adapter createLiteralAdapter()
928 {
929 return null;
930 }
931
932 /**
933 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable <em>Variable</em>}'.
934 * <!-- begin-user-doc -->
935 * This default implementation returns null so that we can easily ignore cases;
936 * it's useful to ignore a case when inheritance will catch all the cases anyway.
937 * <!-- end-user-doc -->
938 * @return the new adapter.
939 * @see org.eclipse.viatra.solver.language.solverLanguage.Variable
940 * @generated
941 */
942 public Adapter createVariableAdapter()
943 {
944 return null;
945 }
946
947 /**
948 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AllInstances <em>All Instances</em>}'.
949 * <!-- begin-user-doc -->
950 * This default implementation returns null so that we can easily ignore cases;
951 * it's useful to ignore a case when inheritance will catch all the cases anyway.
952 * <!-- end-user-doc -->
953 * @return the new adapter.
954 * @see org.eclipse.viatra.solver.language.solverLanguage.AllInstances
955 * @generated
956 */
957 public Adapter createAllInstancesAdapter()
958 {
959 return null;
960 }
961
962 /**
963 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AllObjects <em>All Objects</em>}'.
964 * <!-- begin-user-doc -->
965 * This default implementation returns null so that we can easily ignore cases;
966 * it's useful to ignore a case when inheritance will catch all the cases anyway.
967 * <!-- end-user-doc -->
968 * @return the new adapter.
969 * @see org.eclipse.viatra.solver.language.solverLanguage.AllObjects
970 * @generated
971 */
972 public Adapter createAllObjectsAdapter()
973 {
974 return null;
975 }
976
977 /**
978 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation <em>Default Interpretation</em>}'.
979 * <!-- begin-user-doc -->
980 * This default implementation returns null so that we can easily ignore cases;
981 * it's useful to ignore a case when inheritance will catch all the cases anyway.
982 * <!-- end-user-doc -->
983 * @return the new adapter.
984 * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation
985 * @generated
986 */
987 public Adapter createDefaultInterpretationAdapter()
988 {
989 return null;
990 }
991
992 /**
993 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation <em>CD Interpretation</em>}'.
994 * <!-- begin-user-doc -->
995 * This default implementation returns null so that we can easily ignore cases;
996 * it's useful to ignore a case when inheritance will catch all the cases anyway.
997 * <!-- end-user-doc -->
998 * @return the new adapter.
999 * @see org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation
1000 * @generated
1001 */
1002 public Adapter createCDInterpretationAdapter()
1003 {
1004 return null;
1005 }
1006
1007 /**
1008 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation <em>Class Interpretation</em>}'.
1009 * <!-- begin-user-doc -->
1010 * This default implementation returns null so that we can easily ignore cases;
1011 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1012 * <!-- end-user-doc -->
1013 * @return the new adapter.
1014 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation
1015 * @generated
1016 */
1017 public Adapter createClassInterpretationAdapter()
1018 {
1019 return null;
1020 }
1021
1022 /**
1023 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation <em>Enum Interpretation</em>}'.
1024 * <!-- begin-user-doc -->
1025 * This default implementation returns null so that we can easily ignore cases;
1026 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1027 * <!-- end-user-doc -->
1028 * @return the new adapter.
1029 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation
1030 * @generated
1031 */
1032 public Adapter createEnumInterpretationAdapter()
1033 {
1034 return null;
1035 }
1036
1037 /**
1038 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation <em>Field Relation Interpretation</em>}'.
1039 * <!-- begin-user-doc -->
1040 * This default implementation returns null so that we can easily ignore cases;
1041 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1042 * <!-- end-user-doc -->
1043 * @return the new adapter.
1044 * @see org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation
1045 * @generated
1046 */
1047 public Adapter createFieldRelationInterpretationAdapter()
1048 {
1049 return null;
1050 }
1051
1052 /**
1053 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation <em>Global Relation Interpretation</em>}'.
1054 * <!-- begin-user-doc -->
1055 * This default implementation returns null so that we can easily ignore cases;
1056 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1057 * <!-- end-user-doc -->
1058 * @return the new adapter.
1059 * @see org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation
1060 * @generated
1061 */
1062 public Adapter createGlobalRelationInterpretationAdapter()
1063 {
1064 return null;
1065 }
1066
1067 /**
1068 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition <em>Multiplicity Definition</em>}'.
1069 * <!-- begin-user-doc -->
1070 * This default implementation returns null so that we can easily ignore cases;
1071 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1072 * <!-- end-user-doc -->
1073 * @return the new adapter.
1074 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition
1075 * @generated
1076 */
1077 public Adapter createMultiplicityDefinitionAdapter()
1078 {
1079 return null;
1080 }
1081
1082 /**
1083 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue <em>Boolean True</em>}'.
1084 * <!-- begin-user-doc -->
1085 * This default implementation returns null so that we can easily ignore cases;
1086 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1087 * <!-- end-user-doc -->
1088 * @return the new adapter.
1089 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue
1090 * @generated
1091 */
1092 public Adapter createBooleanTrueAdapter()
1093 {
1094 return null;
1095 }
1096
1097 /**
1098 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse <em>Boolean False</em>}'.
1099 * <!-- begin-user-doc -->
1100 * This default implementation returns null so that we can easily ignore cases;
1101 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1102 * <!-- end-user-doc -->
1103 * @return the new adapter.
1104 * @see org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse
1105 * @generated
1106 */
1107 public Adapter createBooleanFalseAdapter()
1108 {
1109 return null;
1110 }
1111
1112 /**
1113 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.True <em>True</em>}'.
1114 * <!-- begin-user-doc -->
1115 * This default implementation returns null so that we can easily ignore cases;
1116 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1117 * <!-- end-user-doc -->
1118 * @return the new adapter.
1119 * @see org.eclipse.viatra.solver.language.solverLanguage.True
1120 * @generated
1121 */
1122 public Adapter createTrueAdapter()
1123 {
1124 return null;
1125 }
1126
1127 /**
1128 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.False <em>False</em>}'.
1129 * <!-- begin-user-doc -->
1130 * This default implementation returns null so that we can easily ignore cases;
1131 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1132 * <!-- end-user-doc -->
1133 * @return the new adapter.
1134 * @see org.eclipse.viatra.solver.language.solverLanguage.False
1135 * @generated
1136 */
1137 public Adapter createFalseAdapter()
1138 {
1139 return null;
1140 }
1141
1142 /**
1143 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Unknown <em>Unknown</em>}'.
1144 * <!-- begin-user-doc -->
1145 * This default implementation returns null so that we can easily ignore cases;
1146 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1147 * <!-- end-user-doc -->
1148 * @return the new adapter.
1149 * @see org.eclipse.viatra.solver.language.solverLanguage.Unknown
1150 * @generated
1151 */
1152 public Adapter createUnknownAdapter()
1153 {
1154 return null;
1155 }
1156
1157 /**
1158 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Error <em>Error</em>}'.
1159 * <!-- begin-user-doc -->
1160 * This default implementation returns null so that we can easily ignore cases;
1161 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1162 * <!-- end-user-doc -->
1163 * @return the new adapter.
1164 * @see org.eclipse.viatra.solver.language.solverLanguage.Error
1165 * @generated
1166 */
1167 public Adapter createErrorAdapter()
1168 {
1169 return null;
1170 }
1171
1172 /**
1173 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Positive <em>Positive</em>}'.
1174 * <!-- begin-user-doc -->
1175 * This default implementation returns null so that we can easily ignore cases;
1176 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1177 * <!-- end-user-doc -->
1178 * @return the new adapter.
1179 * @see org.eclipse.viatra.solver.language.solverLanguage.Positive
1180 * @generated
1181 */
1182 public Adapter createPositiveAdapter()
1183 {
1184 return null;
1185 }
1186
1187 /**
1188 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Negative <em>Negative</em>}'.
1189 * <!-- begin-user-doc -->
1190 * This default implementation returns null so that we can easily ignore cases;
1191 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1192 * <!-- end-user-doc -->
1193 * @return the new adapter.
1194 * @see org.eclipse.viatra.solver.language.solverLanguage.Negative
1195 * @generated
1196 */
1197 public Adapter createNegativeAdapter()
1198 {
1199 return null;
1200 }
1201
1202 /**
1203 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure <em>Reflexive Closure</em>}'.
1204 * <!-- begin-user-doc -->
1205 * This default implementation returns null so that we can easily ignore cases;
1206 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1207 * <!-- end-user-doc -->
1208 * @return the new adapter.
1209 * @see org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure
1210 * @generated
1211 */
1212 public Adapter createReflexiveClosureAdapter()
1213 {
1214 return null;
1215 }
1216
1217 /**
1218 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure <em>Irreflexive Closure</em>}'.
1219 * <!-- begin-user-doc -->
1220 * This default implementation returns null so that we can easily ignore cases;
1221 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1222 * <!-- end-user-doc -->
1223 * @return the new adapter.
1224 * @see org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure
1225 * @generated
1226 */
1227 public Adapter createIrreflexiveClosureAdapter()
1228 {
1229 return null;
1230 }
1231
1232 /**
1233 * Creates a new adapter for the default case.
1234 * <!-- begin-user-doc -->
1235 * This default implementation returns null.
1236 * <!-- end-user-doc -->
1237 * @return the new adapter.
1238 * @generated
1239 */
1240 public Adapter createEObjectAdapter()
1241 {
1242 return null;
1243 }
1244
1245} //SolverLanguageAdapterFactory
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java
new file mode 100644
index 00000000..9bc874e3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java
@@ -0,0 +1,1464 @@
1/**
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.solverLanguage.util;
5
6import org.eclipse.emf.ecore.EObject;
7import org.eclipse.emf.ecore.EPackage;
8
9import org.eclipse.emf.ecore.util.Switch;
10
11import org.eclipse.viatra.solver.language.solverLanguage.AllInstances;
12import org.eclipse.viatra.solver.language.solverLanguage.AllObjects;
13import org.eclipse.viatra.solver.language.solverLanguage.BasicInterpretation;
14import org.eclipse.viatra.solver.language.solverLanguage.BooleanFalse;
15import org.eclipse.viatra.solver.language.solverLanguage.BooleanObject;
16import org.eclipse.viatra.solver.language.solverLanguage.BooleanSymbol;
17import org.eclipse.viatra.solver.language.solverLanguage.BooleanTrue;
18import org.eclipse.viatra.solver.language.solverLanguage.BooleanValue;
19import org.eclipse.viatra.solver.language.solverLanguage.CDInterpretation;
20import org.eclipse.viatra.solver.language.solverLanguage.ClassInterpretation;
21import org.eclipse.viatra.solver.language.solverLanguage.ClosureType;
22import org.eclipse.viatra.solver.language.solverLanguage.ComplexObject;
23import org.eclipse.viatra.solver.language.solverLanguage.Constraint;
24import org.eclipse.viatra.solver.language.solverLanguage.DataObject;
25import org.eclipse.viatra.solver.language.solverLanguage.DataSymbol;
26import org.eclipse.viatra.solver.language.solverLanguage.DefaultInterpretation;
27import org.eclipse.viatra.solver.language.solverLanguage.EnumInterpretation;
28import org.eclipse.viatra.solver.language.solverLanguage.EqualsSymbol;
29import org.eclipse.viatra.solver.language.solverLanguage.ErrorPredicate;
30import org.eclipse.viatra.solver.language.solverLanguage.ExistSymbol;
31import org.eclipse.viatra.solver.language.solverLanguage.False;
32import org.eclipse.viatra.solver.language.solverLanguage.FieldRelationInterpretation;
33import org.eclipse.viatra.solver.language.solverLanguage.GlobalRelationInterpretation;
34import org.eclipse.viatra.solver.language.solverLanguage.IntObject;
35import org.eclipse.viatra.solver.language.solverLanguage.IntegerSymbol;
36import org.eclipse.viatra.solver.language.solverLanguage.Interpretation;
37import org.eclipse.viatra.solver.language.solverLanguage.IrreflexiveClosure;
38import org.eclipse.viatra.solver.language.solverLanguage.Literal;
39import org.eclipse.viatra.solver.language.solverLanguage.ModelSymbol;
40import org.eclipse.viatra.solver.language.solverLanguage.MultiplicityDefinition;
41import org.eclipse.viatra.solver.language.solverLanguage.NamedObject;
42import org.eclipse.viatra.solver.language.solverLanguage.Negative;
43import org.eclipse.viatra.solver.language.solverLanguage.Parameter;
44import org.eclipse.viatra.solver.language.solverLanguage.PartialitySymbol;
45import org.eclipse.viatra.solver.language.solverLanguage.PatternBody;
46import org.eclipse.viatra.solver.language.solverLanguage.Polarity;
47import org.eclipse.viatra.solver.language.solverLanguage.Positive;
48import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
49import org.eclipse.viatra.solver.language.solverLanguage.PredicateSymbol;
50import org.eclipse.viatra.solver.language.solverLanguage.Problem;
51import org.eclipse.viatra.solver.language.solverLanguage.RealObject;
52import org.eclipse.viatra.solver.language.solverLanguage.RealSymbol;
53import org.eclipse.viatra.solver.language.solverLanguage.ReflexiveClosure;
54import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
55import org.eclipse.viatra.solver.language.solverLanguage.Statement;
56import org.eclipse.viatra.solver.language.solverLanguage.StringObject;
57import org.eclipse.viatra.solver.language.solverLanguage.StringSymbol;
58import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
59import org.eclipse.viatra.solver.language.solverLanguage.True;
60import org.eclipse.viatra.solver.language.solverLanguage.TruthValue;
61import org.eclipse.viatra.solver.language.solverLanguage.Unknown;
62import org.eclipse.viatra.solver.language.solverLanguage.UnnamedObject;
63import org.eclipse.viatra.solver.language.solverLanguage.Variable;
64
65/**
66 * <!-- begin-user-doc -->
67 * The <b>Switch</b> for the model's inheritance hierarchy.
68 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
69 * to invoke the <code>caseXXX</code> method for each class of the model,
70 * starting with the actual class of the object
71 * and proceeding up the inheritance hierarchy
72 * until a non-null result is returned,
73 * which is the result of the switch.
74 * <!-- end-user-doc -->
75 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage
76 * @generated
77 */
78public class SolverLanguageSwitch<T> extends Switch<T>
79{
80 /**
81 * The cached model package
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 protected static SolverLanguagePackage modelPackage;
87
88 /**
89 * Creates an instance of the switch.
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 public SolverLanguageSwitch()
95 {
96 if (modelPackage == null)
97 {
98 modelPackage = SolverLanguagePackage.eINSTANCE;
99 }
100 }
101
102 /**
103 * Checks whether this is a switch for the given package.
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @param ePackage the package in question.
107 * @return whether this is a switch for the given package.
108 * @generated
109 */
110 @Override
111 protected boolean isSwitchFor(EPackage ePackage)
112 {
113 return ePackage == modelPackage;
114 }
115
116 /**
117 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @return the first non-null result returned by a <code>caseXXX</code> call.
121 * @generated
122 */
123 @Override
124 protected T doSwitch(int classifierID, EObject theEObject)
125 {
126 switch (classifierID)
127 {
128 case SolverLanguagePackage.PROBLEM:
129 {
130 Problem problem = (Problem)theEObject;
131 T result = caseProblem(problem);
132 if (result == null) result = defaultCase(theEObject);
133 return result;
134 }
135 case SolverLanguagePackage.STATEMENT:
136 {
137 Statement statement = (Statement)theEObject;
138 T result = caseStatement(statement);
139 if (result == null) result = defaultCase(theEObject);
140 return result;
141 }
142 case SolverLanguagePackage.BOOLEAN_VALUE:
143 {
144 BooleanValue booleanValue = (BooleanValue)theEObject;
145 T result = caseBooleanValue(booleanValue);
146 if (result == null) result = defaultCase(theEObject);
147 return result;
148 }
149 case SolverLanguagePackage.TRUTH_VALUE:
150 {
151 TruthValue truthValue = (TruthValue)theEObject;
152 T result = caseTruthValue(truthValue);
153 if (result == null) result = defaultCase(theEObject);
154 return result;
155 }
156 case SolverLanguagePackage.INTERPRETATION:
157 {
158 Interpretation interpretation = (Interpretation)theEObject;
159 T result = caseInterpretation(interpretation);
160 if (result == null) result = caseStatement(interpretation);
161 if (result == null) result = defaultCase(theEObject);
162 return result;
163 }
164 case SolverLanguagePackage.BASIC_INTERPRETATION:
165 {
166 BasicInterpretation basicInterpretation = (BasicInterpretation)theEObject;
167 T result = caseBasicInterpretation(basicInterpretation);
168 if (result == null) result = caseInterpretation(basicInterpretation);
169 if (result == null) result = caseStatement(basicInterpretation);
170 if (result == null) result = defaultCase(theEObject);
171 return result;
172 }
173 case SolverLanguagePackage.SYMBOL:
174 {
175 Symbol symbol = (Symbol)theEObject;
176 T result = caseSymbol(symbol);
177 if (result == null) result = defaultCase(theEObject);
178 return result;
179 }
180 case SolverLanguagePackage.MODEL_SYMBOL:
181 {
182 ModelSymbol modelSymbol = (ModelSymbol)theEObject;
183 T result = caseModelSymbol(modelSymbol);
184 if (result == null) result = caseSymbol(modelSymbol);
185 if (result == null) result = defaultCase(theEObject);
186 return result;
187 }
188 case SolverLanguagePackage.PARTIALITY_SYMBOL:
189 {
190 PartialitySymbol partialitySymbol = (PartialitySymbol)theEObject;
191 T result = casePartialitySymbol(partialitySymbol);
192 if (result == null) result = caseSymbol(partialitySymbol);
193 if (result == null) result = defaultCase(theEObject);
194 return result;
195 }
196 case SolverLanguagePackage.EXIST_SYMBOL:
197 {
198 ExistSymbol existSymbol = (ExistSymbol)theEObject;
199 T result = caseExistSymbol(existSymbol);
200 if (result == null) result = casePartialitySymbol(existSymbol);
201 if (result == null) result = caseSymbol(existSymbol);
202 if (result == null) result = defaultCase(theEObject);
203 return result;
204 }
205 case SolverLanguagePackage.EQUALS_SYMBOL:
206 {
207 EqualsSymbol equalsSymbol = (EqualsSymbol)theEObject;
208 T result = caseEqualsSymbol(equalsSymbol);
209 if (result == null) result = casePartialitySymbol(equalsSymbol);
210 if (result == null) result = caseSymbol(equalsSymbol);
211 if (result == null) result = defaultCase(theEObject);
212 return result;
213 }
214 case SolverLanguagePackage.DATA_SYMBOL:
215 {
216 DataSymbol dataSymbol = (DataSymbol)theEObject;
217 T result = caseDataSymbol(dataSymbol);
218 if (result == null) result = caseSymbol(dataSymbol);
219 if (result == null) result = defaultCase(theEObject);
220 return result;
221 }
222 case SolverLanguagePackage.BOOLEAN_SYMBOL:
223 {
224 BooleanSymbol booleanSymbol = (BooleanSymbol)theEObject;
225 T result = caseBooleanSymbol(booleanSymbol);
226 if (result == null) result = caseDataSymbol(booleanSymbol);
227 if (result == null) result = caseSymbol(booleanSymbol);
228 if (result == null) result = defaultCase(theEObject);
229 return result;
230 }
231 case SolverLanguagePackage.INTEGER_SYMBOL:
232 {
233 IntegerSymbol integerSymbol = (IntegerSymbol)theEObject;
234 T result = caseIntegerSymbol(integerSymbol);
235 if (result == null) result = caseDataSymbol(integerSymbol);
236 if (result == null) result = caseSymbol(integerSymbol);
237 if (result == null) result = defaultCase(theEObject);
238 return result;
239 }
240 case SolverLanguagePackage.REAL_SYMBOL:
241 {
242 RealSymbol realSymbol = (RealSymbol)theEObject;
243 T result = caseRealSymbol(realSymbol);
244 if (result == null) result = caseDataSymbol(realSymbol);
245 if (result == null) result = caseSymbol(realSymbol);
246 if (result == null) result = defaultCase(theEObject);
247 return result;
248 }
249 case SolverLanguagePackage.STRING_SYMBOL:
250 {
251 StringSymbol stringSymbol = (StringSymbol)theEObject;
252 T result = caseStringSymbol(stringSymbol);
253 if (result == null) result = caseDataSymbol(stringSymbol);
254 if (result == null) result = caseSymbol(stringSymbol);
255 if (result == null) result = defaultCase(theEObject);
256 return result;
257 }
258 case SolverLanguagePackage.COMPLEX_OBJECT:
259 {
260 ComplexObject complexObject = (ComplexObject)theEObject;
261 T result = caseComplexObject(complexObject);
262 if (result == null) result = defaultCase(theEObject);
263 return result;
264 }
265 case SolverLanguagePackage.OBJECT:
266 {
267 org.eclipse.viatra.solver.language.solverLanguage.Object object = (org.eclipse.viatra.solver.language.solverLanguage.Object)theEObject;
268 T result = caseObject(object);
269 if (result == null) result = caseComplexObject(object);
270 if (result == null) result = defaultCase(theEObject);
271 return result;
272 }
273 case SolverLanguagePackage.NAMED_OBJECT:
274 {
275 NamedObject namedObject = (NamedObject)theEObject;
276 T result = caseNamedObject(namedObject);
277 if (result == null) result = caseObject(namedObject);
278 if (result == null) result = caseComplexObject(namedObject);
279 if (result == null) result = defaultCase(theEObject);
280 return result;
281 }
282 case SolverLanguagePackage.UNNAMED_OBJECT:
283 {
284 UnnamedObject unnamedObject = (UnnamedObject)theEObject;
285 T result = caseUnnamedObject(unnamedObject);
286 if (result == null) result = caseObject(unnamedObject);
287 if (result == null) result = caseComplexObject(unnamedObject);
288 if (result == null) result = defaultCase(theEObject);
289 return result;
290 }
291 case SolverLanguagePackage.DATA_OBJECT:
292 {
293 DataObject dataObject = (DataObject)theEObject;
294 T result = caseDataObject(dataObject);
295 if (result == null) result = caseObject(dataObject);
296 if (result == null) result = caseLiteral(dataObject);
297 if (result == null) result = caseComplexObject(dataObject);
298 if (result == null) result = defaultCase(theEObject);
299 return result;
300 }
301 case SolverLanguagePackage.BOOLEAN_OBJECT:
302 {
303 BooleanObject booleanObject = (BooleanObject)theEObject;
304 T result = caseBooleanObject(booleanObject);
305 if (result == null) result = caseDataObject(booleanObject);
306 if (result == null) result = caseObject(booleanObject);
307 if (result == null) result = caseLiteral(booleanObject);
308 if (result == null) result = caseComplexObject(booleanObject);
309 if (result == null) result = defaultCase(theEObject);
310 return result;
311 }
312 case SolverLanguagePackage.INT_OBJECT:
313 {
314 IntObject intObject = (IntObject)theEObject;
315 T result = caseIntObject(intObject);
316 if (result == null) result = caseDataObject(intObject);
317 if (result == null) result = caseObject(intObject);
318 if (result == null) result = caseLiteral(intObject);
319 if (result == null) result = caseComplexObject(intObject);
320 if (result == null) result = defaultCase(theEObject);
321 return result;
322 }
323 case SolverLanguagePackage.REAL_OBJECT:
324 {
325 RealObject realObject = (RealObject)theEObject;
326 T result = caseRealObject(realObject);
327 if (result == null) result = caseDataObject(realObject);
328 if (result == null) result = caseObject(realObject);
329 if (result == null) result = caseLiteral(realObject);
330 if (result == null) result = caseComplexObject(realObject);
331 if (result == null) result = defaultCase(theEObject);
332 return result;
333 }
334 case SolverLanguagePackage.STRING_OBJECT:
335 {
336 StringObject stringObject = (StringObject)theEObject;
337 T result = caseStringObject(stringObject);
338 if (result == null) result = caseDataObject(stringObject);
339 if (result == null) result = caseObject(stringObject);
340 if (result == null) result = caseLiteral(stringObject);
341 if (result == null) result = caseComplexObject(stringObject);
342 if (result == null) result = defaultCase(theEObject);
343 return result;
344 }
345 case SolverLanguagePackage.PREDICATE:
346 {
347 Predicate predicate = (Predicate)theEObject;
348 T result = casePredicate(predicate);
349 if (result == null) result = caseStatement(predicate);
350 if (result == null) result = defaultCase(theEObject);
351 return result;
352 }
353 case SolverLanguagePackage.PREDICATE_SYMBOL:
354 {
355 PredicateSymbol predicateSymbol = (PredicateSymbol)theEObject;
356 T result = casePredicateSymbol(predicateSymbol);
357 if (result == null) result = casePredicate(predicateSymbol);
358 if (result == null) result = caseStatement(predicateSymbol);
359 if (result == null) result = defaultCase(theEObject);
360 return result;
361 }
362 case SolverLanguagePackage.ERROR_PREDICATE:
363 {
364 ErrorPredicate errorPredicate = (ErrorPredicate)theEObject;
365 T result = caseErrorPredicate(errorPredicate);
366 if (result == null) result = casePredicate(errorPredicate);
367 if (result == null) result = caseStatement(errorPredicate);
368 if (result == null) result = defaultCase(theEObject);
369 return result;
370 }
371 case SolverLanguagePackage.PARAMETER:
372 {
373 Parameter parameter = (Parameter)theEObject;
374 T result = caseParameter(parameter);
375 if (result == null) result = defaultCase(theEObject);
376 return result;
377 }
378 case SolverLanguagePackage.PATTERN_BODY:
379 {
380 PatternBody patternBody = (PatternBody)theEObject;
381 T result = casePatternBody(patternBody);
382 if (result == null) result = defaultCase(theEObject);
383 return result;
384 }
385 case SolverLanguagePackage.POLARITY:
386 {
387 Polarity polarity = (Polarity)theEObject;
388 T result = casePolarity(polarity);
389 if (result == null) result = defaultCase(theEObject);
390 return result;
391 }
392 case SolverLanguagePackage.CONSTRAINT:
393 {
394 Constraint constraint = (Constraint)theEObject;
395 T result = caseConstraint(constraint);
396 if (result == null) result = defaultCase(theEObject);
397 return result;
398 }
399 case SolverLanguagePackage.CLOSURE_TYPE:
400 {
401 ClosureType closureType = (ClosureType)theEObject;
402 T result = caseClosureType(closureType);
403 if (result == null) result = defaultCase(theEObject);
404 return result;
405 }
406 case SolverLanguagePackage.LITERAL:
407 {
408 Literal literal = (Literal)theEObject;
409 T result = caseLiteral(literal);
410 if (result == null) result = defaultCase(theEObject);
411 return result;
412 }
413 case SolverLanguagePackage.VARIABLE:
414 {
415 Variable variable = (Variable)theEObject;
416 T result = caseVariable(variable);
417 if (result == null) result = caseLiteral(variable);
418 if (result == null) result = defaultCase(theEObject);
419 return result;
420 }
421 case SolverLanguagePackage.ALL_INSTANCES:
422 {
423 AllInstances allInstances = (AllInstances)theEObject;
424 T result = caseAllInstances(allInstances);
425 if (result == null) result = caseComplexObject(allInstances);
426 if (result == null) result = defaultCase(theEObject);
427 return result;
428 }
429 case SolverLanguagePackage.ALL_OBJECTS:
430 {
431 AllObjects allObjects = (AllObjects)theEObject;
432 T result = caseAllObjects(allObjects);
433 if (result == null) result = caseComplexObject(allObjects);
434 if (result == null) result = defaultCase(theEObject);
435 return result;
436 }
437 case SolverLanguagePackage.DEFAULT_INTERPRETATION:
438 {
439 DefaultInterpretation defaultInterpretation = (DefaultInterpretation)theEObject;
440 T result = caseDefaultInterpretation(defaultInterpretation);
441 if (result == null) result = caseInterpretation(defaultInterpretation);
442 if (result == null) result = caseStatement(defaultInterpretation);
443 if (result == null) result = defaultCase(theEObject);
444 return result;
445 }
446 case SolverLanguagePackage.CD_INTERPRETATION:
447 {
448 CDInterpretation cdInterpretation = (CDInterpretation)theEObject;
449 T result = caseCDInterpretation(cdInterpretation);
450 if (result == null) result = caseInterpretation(cdInterpretation);
451 if (result == null) result = caseStatement(cdInterpretation);
452 if (result == null) result = defaultCase(theEObject);
453 return result;
454 }
455 case SolverLanguagePackage.CLASS_INTERPRETATION:
456 {
457 ClassInterpretation classInterpretation = (ClassInterpretation)theEObject;
458 T result = caseClassInterpretation(classInterpretation);
459 if (result == null) result = caseCDInterpretation(classInterpretation);
460 if (result == null) result = caseInterpretation(classInterpretation);
461 if (result == null) result = caseStatement(classInterpretation);
462 if (result == null) result = defaultCase(theEObject);
463 return result;
464 }
465 case SolverLanguagePackage.ENUM_INTERPRETATION:
466 {
467 EnumInterpretation enumInterpretation = (EnumInterpretation)theEObject;
468 T result = caseEnumInterpretation(enumInterpretation);
469 if (result == null) result = caseCDInterpretation(enumInterpretation);
470 if (result == null) result = caseInterpretation(enumInterpretation);
471 if (result == null) result = caseStatement(enumInterpretation);
472 if (result == null) result = defaultCase(theEObject);
473 return result;
474 }
475 case SolverLanguagePackage.FIELD_RELATION_INTERPRETATION:
476 {
477 FieldRelationInterpretation fieldRelationInterpretation = (FieldRelationInterpretation)theEObject;
478 T result = caseFieldRelationInterpretation(fieldRelationInterpretation);
479 if (result == null) result = defaultCase(theEObject);
480 return result;
481 }
482 case SolverLanguagePackage.GLOBAL_RELATION_INTERPRETATION:
483 {
484 GlobalRelationInterpretation globalRelationInterpretation = (GlobalRelationInterpretation)theEObject;
485 T result = caseGlobalRelationInterpretation(globalRelationInterpretation);
486 if (result == null) result = caseCDInterpretation(globalRelationInterpretation);
487 if (result == null) result = caseInterpretation(globalRelationInterpretation);
488 if (result == null) result = caseStatement(globalRelationInterpretation);
489 if (result == null) result = defaultCase(theEObject);
490 return result;
491 }
492 case SolverLanguagePackage.MULTIPLICITY_DEFINITION:
493 {
494 MultiplicityDefinition multiplicityDefinition = (MultiplicityDefinition)theEObject;
495 T result = caseMultiplicityDefinition(multiplicityDefinition);
496 if (result == null) result = defaultCase(theEObject);
497 return result;
498 }
499 case SolverLanguagePackage.BOOLEAN_TRUE:
500 {
501 BooleanTrue booleanTrue = (BooleanTrue)theEObject;
502 T result = caseBooleanTrue(booleanTrue);
503 if (result == null) result = caseBooleanValue(booleanTrue);
504 if (result == null) result = defaultCase(theEObject);
505 return result;
506 }
507 case SolverLanguagePackage.BOOLEAN_FALSE:
508 {
509 BooleanFalse booleanFalse = (BooleanFalse)theEObject;
510 T result = caseBooleanFalse(booleanFalse);
511 if (result == null) result = caseBooleanValue(booleanFalse);
512 if (result == null) result = defaultCase(theEObject);
513 return result;
514 }
515 case SolverLanguagePackage.TRUE:
516 {
517 True true_ = (True)theEObject;
518 T result = caseTrue(true_);
519 if (result == null) result = caseTruthValue(true_);
520 if (result == null) result = defaultCase(theEObject);
521 return result;
522 }
523 case SolverLanguagePackage.FALSE:
524 {
525 False false_ = (False)theEObject;
526 T result = caseFalse(false_);
527 if (result == null) result = caseTruthValue(false_);
528 if (result == null) result = defaultCase(theEObject);
529 return result;
530 }
531 case SolverLanguagePackage.UNKNOWN:
532 {
533 Unknown unknown = (Unknown)theEObject;
534 T result = caseUnknown(unknown);
535 if (result == null) result = caseTruthValue(unknown);
536 if (result == null) result = defaultCase(theEObject);
537 return result;
538 }
539 case SolverLanguagePackage.ERROR:
540 {
541 org.eclipse.viatra.solver.language.solverLanguage.Error error = (org.eclipse.viatra.solver.language.solverLanguage.Error)theEObject;
542 T result = caseError(error);
543 if (result == null) result = caseTruthValue(error);
544 if (result == null) result = defaultCase(theEObject);
545 return result;
546 }
547 case SolverLanguagePackage.POSITIVE:
548 {
549 Positive positive = (Positive)theEObject;
550 T result = casePositive(positive);
551 if (result == null) result = casePolarity(positive);
552 if (result == null) result = defaultCase(theEObject);
553 return result;
554 }
555 case SolverLanguagePackage.NEGATIVE:
556 {
557 Negative negative = (Negative)theEObject;
558 T result = caseNegative(negative);
559 if (result == null) result = casePolarity(negative);
560 if (result == null) result = defaultCase(theEObject);
561 return result;
562 }
563 case SolverLanguagePackage.REFLEXIVE_CLOSURE:
564 {
565 ReflexiveClosure reflexiveClosure = (ReflexiveClosure)theEObject;
566 T result = caseReflexiveClosure(reflexiveClosure);
567 if (result == null) result = caseClosureType(reflexiveClosure);
568 if (result == null) result = defaultCase(theEObject);
569 return result;
570 }
571 case SolverLanguagePackage.IRREFLEXIVE_CLOSURE:
572 {
573 IrreflexiveClosure irreflexiveClosure = (IrreflexiveClosure)theEObject;
574 T result = caseIrreflexiveClosure(irreflexiveClosure);
575 if (result == null) result = caseClosureType(irreflexiveClosure);
576 if (result == null) result = defaultCase(theEObject);
577 return result;
578 }
579 default: return defaultCase(theEObject);
580 }
581 }
582
583 /**
584 * Returns the result of interpreting the object as an instance of '<em>Problem</em>'.
585 * <!-- begin-user-doc -->
586 * This implementation returns null;
587 * returning a non-null result will terminate the switch.
588 * <!-- end-user-doc -->
589 * @param object the target of the switch.
590 * @return the result of interpreting the object as an instance of '<em>Problem</em>'.
591 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
592 * @generated
593 */
594 public T caseProblem(Problem object)
595 {
596 return null;
597 }
598
599 /**
600 * Returns the result of interpreting the object as an instance of '<em>Statement</em>'.
601 * <!-- begin-user-doc -->
602 * This implementation returns null;
603 * returning a non-null result will terminate the switch.
604 * <!-- end-user-doc -->
605 * @param object the target of the switch.
606 * @return the result of interpreting the object as an instance of '<em>Statement</em>'.
607 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
608 * @generated
609 */
610 public T caseStatement(Statement object)
611 {
612 return null;
613 }
614
615 /**
616 * Returns the result of interpreting the object as an instance of '<em>Boolean Value</em>'.
617 * <!-- begin-user-doc -->
618 * This implementation returns null;
619 * returning a non-null result will terminate the switch.
620 * <!-- end-user-doc -->
621 * @param object the target of the switch.
622 * @return the result of interpreting the object as an instance of '<em>Boolean Value</em>'.
623 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
624 * @generated
625 */
626 public T caseBooleanValue(BooleanValue object)
627 {
628 return null;
629 }
630
631 /**
632 * Returns the result of interpreting the object as an instance of '<em>Truth Value</em>'.
633 * <!-- begin-user-doc -->
634 * This implementation returns null;
635 * returning a non-null result will terminate the switch.
636 * <!-- end-user-doc -->
637 * @param object the target of the switch.
638 * @return the result of interpreting the object as an instance of '<em>Truth Value</em>'.
639 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
640 * @generated
641 */
642 public T caseTruthValue(TruthValue object)
643 {
644 return null;
645 }
646
647 /**
648 * Returns the result of interpreting the object as an instance of '<em>Interpretation</em>'.
649 * <!-- begin-user-doc -->
650 * This implementation returns null;
651 * returning a non-null result will terminate the switch.
652 * <!-- end-user-doc -->
653 * @param object the target of the switch.
654 * @return the result of interpreting the object as an instance of '<em>Interpretation</em>'.
655 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
656 * @generated
657 */
658 public T caseInterpretation(Interpretation object)
659 {
660 return null;
661 }
662
663 /**
664 * Returns the result of interpreting the object as an instance of '<em>Basic Interpretation</em>'.
665 * <!-- begin-user-doc -->
666 * This implementation returns null;
667 * returning a non-null result will terminate the switch.
668 * <!-- end-user-doc -->
669 * @param object the target of the switch.
670 * @return the result of interpreting the object as an instance of '<em>Basic Interpretation</em>'.
671 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
672 * @generated
673 */
674 public T caseBasicInterpretation(BasicInterpretation object)
675 {
676 return null;
677 }
678
679 /**
680 * Returns the result of interpreting the object as an instance of '<em>Symbol</em>'.
681 * <!-- begin-user-doc -->
682 * This implementation returns null;
683 * returning a non-null result will terminate the switch.
684 * <!-- end-user-doc -->
685 * @param object the target of the switch.
686 * @return the result of interpreting the object as an instance of '<em>Symbol</em>'.
687 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
688 * @generated
689 */
690 public T caseSymbol(Symbol object)
691 {
692 return null;
693 }
694
695 /**
696 * Returns the result of interpreting the object as an instance of '<em>Model Symbol</em>'.
697 * <!-- begin-user-doc -->
698 * This implementation returns null;
699 * returning a non-null result will terminate the switch.
700 * <!-- end-user-doc -->
701 * @param object the target of the switch.
702 * @return the result of interpreting the object as an instance of '<em>Model Symbol</em>'.
703 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
704 * @generated
705 */
706 public T caseModelSymbol(ModelSymbol object)
707 {
708 return null;
709 }
710
711 /**
712 * Returns the result of interpreting the object as an instance of '<em>Partiality Symbol</em>'.
713 * <!-- begin-user-doc -->
714 * This implementation returns null;
715 * returning a non-null result will terminate the switch.
716 * <!-- end-user-doc -->
717 * @param object the target of the switch.
718 * @return the result of interpreting the object as an instance of '<em>Partiality Symbol</em>'.
719 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
720 * @generated
721 */
722 public T casePartialitySymbol(PartialitySymbol object)
723 {
724 return null;
725 }
726
727 /**
728 * Returns the result of interpreting the object as an instance of '<em>Exist Symbol</em>'.
729 * <!-- begin-user-doc -->
730 * This implementation returns null;
731 * returning a non-null result will terminate the switch.
732 * <!-- end-user-doc -->
733 * @param object the target of the switch.
734 * @return the result of interpreting the object as an instance of '<em>Exist Symbol</em>'.
735 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
736 * @generated
737 */
738 public T caseExistSymbol(ExistSymbol object)
739 {
740 return null;
741 }
742
743 /**
744 * Returns the result of interpreting the object as an instance of '<em>Equals Symbol</em>'.
745 * <!-- begin-user-doc -->
746 * This implementation returns null;
747 * returning a non-null result will terminate the switch.
748 * <!-- end-user-doc -->
749 * @param object the target of the switch.
750 * @return the result of interpreting the object as an instance of '<em>Equals Symbol</em>'.
751 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
752 * @generated
753 */
754 public T caseEqualsSymbol(EqualsSymbol object)
755 {
756 return null;
757 }
758
759 /**
760 * Returns the result of interpreting the object as an instance of '<em>Data Symbol</em>'.
761 * <!-- begin-user-doc -->
762 * This implementation returns null;
763 * returning a non-null result will terminate the switch.
764 * <!-- end-user-doc -->
765 * @param object the target of the switch.
766 * @return the result of interpreting the object as an instance of '<em>Data Symbol</em>'.
767 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
768 * @generated
769 */
770 public T caseDataSymbol(DataSymbol object)
771 {
772 return null;
773 }
774
775 /**
776 * Returns the result of interpreting the object as an instance of '<em>Boolean Symbol</em>'.
777 * <!-- begin-user-doc -->
778 * This implementation returns null;
779 * returning a non-null result will terminate the switch.
780 * <!-- end-user-doc -->
781 * @param object the target of the switch.
782 * @return the result of interpreting the object as an instance of '<em>Boolean Symbol</em>'.
783 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
784 * @generated
785 */
786 public T caseBooleanSymbol(BooleanSymbol object)
787 {
788 return null;
789 }
790
791 /**
792 * Returns the result of interpreting the object as an instance of '<em>Integer Symbol</em>'.
793 * <!-- begin-user-doc -->
794 * This implementation returns null;
795 * returning a non-null result will terminate the switch.
796 * <!-- end-user-doc -->
797 * @param object the target of the switch.
798 * @return the result of interpreting the object as an instance of '<em>Integer Symbol</em>'.
799 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
800 * @generated
801 */
802 public T caseIntegerSymbol(IntegerSymbol object)
803 {
804 return null;
805 }
806
807 /**
808 * Returns the result of interpreting the object as an instance of '<em>Real Symbol</em>'.
809 * <!-- begin-user-doc -->
810 * This implementation returns null;
811 * returning a non-null result will terminate the switch.
812 * <!-- end-user-doc -->
813 * @param object the target of the switch.
814 * @return the result of interpreting the object as an instance of '<em>Real Symbol</em>'.
815 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
816 * @generated
817 */
818 public T caseRealSymbol(RealSymbol object)
819 {
820 return null;
821 }
822
823 /**
824 * Returns the result of interpreting the object as an instance of '<em>String Symbol</em>'.
825 * <!-- begin-user-doc -->
826 * This implementation returns null;
827 * returning a non-null result will terminate the switch.
828 * <!-- end-user-doc -->
829 * @param object the target of the switch.
830 * @return the result of interpreting the object as an instance of '<em>String Symbol</em>'.
831 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
832 * @generated
833 */
834 public T caseStringSymbol(StringSymbol object)
835 {
836 return null;
837 }
838
839 /**
840 * Returns the result of interpreting the object as an instance of '<em>Complex Object</em>'.
841 * <!-- begin-user-doc -->
842 * This implementation returns null;
843 * returning a non-null result will terminate the switch.
844 * <!-- end-user-doc -->
845 * @param object the target of the switch.
846 * @return the result of interpreting the object as an instance of '<em>Complex Object</em>'.
847 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
848 * @generated
849 */
850 public T caseComplexObject(ComplexObject object)
851 {
852 return null;
853 }
854
855 /**
856 * Returns the result of interpreting the object as an instance of '<em>Object</em>'.
857 * <!-- begin-user-doc -->
858 * This implementation returns null;
859 * returning a non-null result will terminate the switch.
860 * <!-- end-user-doc -->
861 * @param object the target of the switch.
862 * @return the result of interpreting the object as an instance of '<em>Object</em>'.
863 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
864 * @generated
865 */
866 public T caseObject(org.eclipse.viatra.solver.language.solverLanguage.Object object)
867 {
868 return null;
869 }
870
871 /**
872 * Returns the result of interpreting the object as an instance of '<em>Named Object</em>'.
873 * <!-- begin-user-doc -->
874 * This implementation returns null;
875 * returning a non-null result will terminate the switch.
876 * <!-- end-user-doc -->
877 * @param object the target of the switch.
878 * @return the result of interpreting the object as an instance of '<em>Named Object</em>'.
879 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
880 * @generated
881 */
882 public T caseNamedObject(NamedObject object)
883 {
884 return null;
885 }
886
887 /**
888 * Returns the result of interpreting the object as an instance of '<em>Unnamed Object</em>'.
889 * <!-- begin-user-doc -->
890 * This implementation returns null;
891 * returning a non-null result will terminate the switch.
892 * <!-- end-user-doc -->
893 * @param object the target of the switch.
894 * @return the result of interpreting the object as an instance of '<em>Unnamed Object</em>'.
895 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
896 * @generated
897 */
898 public T caseUnnamedObject(UnnamedObject object)
899 {
900 return null;
901 }
902
903 /**
904 * Returns the result of interpreting the object as an instance of '<em>Data Object</em>'.
905 * <!-- begin-user-doc -->
906 * This implementation returns null;
907 * returning a non-null result will terminate the switch.
908 * <!-- end-user-doc -->
909 * @param object the target of the switch.
910 * @return the result of interpreting the object as an instance of '<em>Data Object</em>'.
911 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
912 * @generated
913 */
914 public T caseDataObject(DataObject object)
915 {
916 return null;
917 }
918
919 /**
920 * Returns the result of interpreting the object as an instance of '<em>Boolean Object</em>'.
921 * <!-- begin-user-doc -->
922 * This implementation returns null;
923 * returning a non-null result will terminate the switch.
924 * <!-- end-user-doc -->
925 * @param object the target of the switch.
926 * @return the result of interpreting the object as an instance of '<em>Boolean Object</em>'.
927 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
928 * @generated
929 */
930 public T caseBooleanObject(BooleanObject object)
931 {
932 return null;
933 }
934
935 /**
936 * Returns the result of interpreting the object as an instance of '<em>Int Object</em>'.
937 * <!-- begin-user-doc -->
938 * This implementation returns null;
939 * returning a non-null result will terminate the switch.
940 * <!-- end-user-doc -->
941 * @param object the target of the switch.
942 * @return the result of interpreting the object as an instance of '<em>Int Object</em>'.
943 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
944 * @generated
945 */
946 public T caseIntObject(IntObject object)
947 {
948 return null;
949 }
950
951 /**
952 * Returns the result of interpreting the object as an instance of '<em>Real Object</em>'.
953 * <!-- begin-user-doc -->
954 * This implementation returns null;
955 * returning a non-null result will terminate the switch.
956 * <!-- end-user-doc -->
957 * @param object the target of the switch.
958 * @return the result of interpreting the object as an instance of '<em>Real Object</em>'.
959 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
960 * @generated
961 */
962 public T caseRealObject(RealObject object)
963 {
964 return null;
965 }
966
967 /**
968 * Returns the result of interpreting the object as an instance of '<em>String Object</em>'.
969 * <!-- begin-user-doc -->
970 * This implementation returns null;
971 * returning a non-null result will terminate the switch.
972 * <!-- end-user-doc -->
973 * @param object the target of the switch.
974 * @return the result of interpreting the object as an instance of '<em>String Object</em>'.
975 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
976 * @generated
977 */
978 public T caseStringObject(StringObject object)
979 {
980 return null;
981 }
982
983 /**
984 * Returns the result of interpreting the object as an instance of '<em>Predicate</em>'.
985 * <!-- begin-user-doc -->
986 * This implementation returns null;
987 * returning a non-null result will terminate the switch.
988 * <!-- end-user-doc -->
989 * @param object the target of the switch.
990 * @return the result of interpreting the object as an instance of '<em>Predicate</em>'.
991 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
992 * @generated
993 */
994 public T casePredicate(Predicate object)
995 {
996 return null;
997 }
998
999 /**
1000 * Returns the result of interpreting the object as an instance of '<em>Predicate Symbol</em>'.
1001 * <!-- begin-user-doc -->
1002 * This implementation returns null;
1003 * returning a non-null result will terminate the switch.
1004 * <!-- end-user-doc -->
1005 * @param object the target of the switch.
1006 * @return the result of interpreting the object as an instance of '<em>Predicate Symbol</em>'.
1007 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1008 * @generated
1009 */
1010 public T casePredicateSymbol(PredicateSymbol object)
1011 {
1012 return null;
1013 }
1014
1015 /**
1016 * Returns the result of interpreting the object as an instance of '<em>Error Predicate</em>'.
1017 * <!-- begin-user-doc -->
1018 * This implementation returns null;
1019 * returning a non-null result will terminate the switch.
1020 * <!-- end-user-doc -->
1021 * @param object the target of the switch.
1022 * @return the result of interpreting the object as an instance of '<em>Error Predicate</em>'.
1023 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1024 * @generated
1025 */
1026 public T caseErrorPredicate(ErrorPredicate object)
1027 {
1028 return null;
1029 }
1030
1031 /**
1032 * Returns the result of interpreting the object as an instance of '<em>Parameter</em>'.
1033 * <!-- begin-user-doc -->
1034 * This implementation returns null;
1035 * returning a non-null result will terminate the switch.
1036 * <!-- end-user-doc -->
1037 * @param object the target of the switch.
1038 * @return the result of interpreting the object as an instance of '<em>Parameter</em>'.
1039 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1040 * @generated
1041 */
1042 public T caseParameter(Parameter object)
1043 {
1044 return null;
1045 }
1046
1047 /**
1048 * Returns the result of interpreting the object as an instance of '<em>Pattern Body</em>'.
1049 * <!-- begin-user-doc -->
1050 * This implementation returns null;
1051 * returning a non-null result will terminate the switch.
1052 * <!-- end-user-doc -->
1053 * @param object the target of the switch.
1054 * @return the result of interpreting the object as an instance of '<em>Pattern Body</em>'.
1055 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1056 * @generated
1057 */
1058 public T casePatternBody(PatternBody object)
1059 {
1060 return null;
1061 }
1062
1063 /**
1064 * Returns the result of interpreting the object as an instance of '<em>Polarity</em>'.
1065 * <!-- begin-user-doc -->
1066 * This implementation returns null;
1067 * returning a non-null result will terminate the switch.
1068 * <!-- end-user-doc -->
1069 * @param object the target of the switch.
1070 * @return the result of interpreting the object as an instance of '<em>Polarity</em>'.
1071 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1072 * @generated
1073 */
1074 public T casePolarity(Polarity object)
1075 {
1076 return null;
1077 }
1078
1079 /**
1080 * Returns the result of interpreting the object as an instance of '<em>Constraint</em>'.
1081 * <!-- begin-user-doc -->
1082 * This implementation returns null;
1083 * returning a non-null result will terminate the switch.
1084 * <!-- end-user-doc -->
1085 * @param object the target of the switch.
1086 * @return the result of interpreting the object as an instance of '<em>Constraint</em>'.
1087 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1088 * @generated
1089 */
1090 public T caseConstraint(Constraint object)
1091 {
1092 return null;
1093 }
1094
1095 /**
1096 * Returns the result of interpreting the object as an instance of '<em>Closure Type</em>'.
1097 * <!-- begin-user-doc -->
1098 * This implementation returns null;
1099 * returning a non-null result will terminate the switch.
1100 * <!-- end-user-doc -->
1101 * @param object the target of the switch.
1102 * @return the result of interpreting the object as an instance of '<em>Closure Type</em>'.
1103 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1104 * @generated
1105 */
1106 public T caseClosureType(ClosureType object)
1107 {
1108 return null;
1109 }
1110
1111 /**
1112 * Returns the result of interpreting the object as an instance of '<em>Literal</em>'.
1113 * <!-- begin-user-doc -->
1114 * This implementation returns null;
1115 * returning a non-null result will terminate the switch.
1116 * <!-- end-user-doc -->
1117 * @param object the target of the switch.
1118 * @return the result of interpreting the object as an instance of '<em>Literal</em>'.
1119 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1120 * @generated
1121 */
1122 public T caseLiteral(Literal object)
1123 {
1124 return null;
1125 }
1126
1127 /**
1128 * Returns the result of interpreting the object as an instance of '<em>Variable</em>'.
1129 * <!-- begin-user-doc -->
1130 * This implementation returns null;
1131 * returning a non-null result will terminate the switch.
1132 * <!-- end-user-doc -->
1133 * @param object the target of the switch.
1134 * @return the result of interpreting the object as an instance of '<em>Variable</em>'.
1135 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1136 * @generated
1137 */
1138 public T caseVariable(Variable object)
1139 {
1140 return null;
1141 }
1142
1143 /**
1144 * Returns the result of interpreting the object as an instance of '<em>All Instances</em>'.
1145 * <!-- begin-user-doc -->
1146 * This implementation returns null;
1147 * returning a non-null result will terminate the switch.
1148 * <!-- end-user-doc -->
1149 * @param object the target of the switch.
1150 * @return the result of interpreting the object as an instance of '<em>All Instances</em>'.
1151 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1152 * @generated
1153 */
1154 public T caseAllInstances(AllInstances object)
1155 {
1156 return null;
1157 }
1158
1159 /**
1160 * Returns the result of interpreting the object as an instance of '<em>All Objects</em>'.
1161 * <!-- begin-user-doc -->
1162 * This implementation returns null;
1163 * returning a non-null result will terminate the switch.
1164 * <!-- end-user-doc -->
1165 * @param object the target of the switch.
1166 * @return the result of interpreting the object as an instance of '<em>All Objects</em>'.
1167 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1168 * @generated
1169 */
1170 public T caseAllObjects(AllObjects object)
1171 {
1172 return null;
1173 }
1174
1175 /**
1176 * Returns the result of interpreting the object as an instance of '<em>Default Interpretation</em>'.
1177 * <!-- begin-user-doc -->
1178 * This implementation returns null;
1179 * returning a non-null result will terminate the switch.
1180 * <!-- end-user-doc -->
1181 * @param object the target of the switch.
1182 * @return the result of interpreting the object as an instance of '<em>Default Interpretation</em>'.
1183 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1184 * @generated
1185 */
1186 public T caseDefaultInterpretation(DefaultInterpretation object)
1187 {
1188 return null;
1189 }
1190
1191 /**
1192 * Returns the result of interpreting the object as an instance of '<em>CD Interpretation</em>'.
1193 * <!-- begin-user-doc -->
1194 * This implementation returns null;
1195 * returning a non-null result will terminate the switch.
1196 * <!-- end-user-doc -->
1197 * @param object the target of the switch.
1198 * @return the result of interpreting the object as an instance of '<em>CD Interpretation</em>'.
1199 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1200 * @generated
1201 */
1202 public T caseCDInterpretation(CDInterpretation object)
1203 {
1204 return null;
1205 }
1206
1207 /**
1208 * Returns the result of interpreting the object as an instance of '<em>Class Interpretation</em>'.
1209 * <!-- begin-user-doc -->
1210 * This implementation returns null;
1211 * returning a non-null result will terminate the switch.
1212 * <!-- end-user-doc -->
1213 * @param object the target of the switch.
1214 * @return the result of interpreting the object as an instance of '<em>Class Interpretation</em>'.
1215 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1216 * @generated
1217 */
1218 public T caseClassInterpretation(ClassInterpretation object)
1219 {
1220 return null;
1221 }
1222
1223 /**
1224 * Returns the result of interpreting the object as an instance of '<em>Enum Interpretation</em>'.
1225 * <!-- begin-user-doc -->
1226 * This implementation returns null;
1227 * returning a non-null result will terminate the switch.
1228 * <!-- end-user-doc -->
1229 * @param object the target of the switch.
1230 * @return the result of interpreting the object as an instance of '<em>Enum Interpretation</em>'.
1231 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1232 * @generated
1233 */
1234 public T caseEnumInterpretation(EnumInterpretation object)
1235 {
1236 return null;
1237 }
1238
1239 /**
1240 * Returns the result of interpreting the object as an instance of '<em>Field Relation Interpretation</em>'.
1241 * <!-- begin-user-doc -->
1242 * This implementation returns null;
1243 * returning a non-null result will terminate the switch.
1244 * <!-- end-user-doc -->
1245 * @param object the target of the switch.
1246 * @return the result of interpreting the object as an instance of '<em>Field Relation Interpretation</em>'.
1247 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1248 * @generated
1249 */
1250 public T caseFieldRelationInterpretation(FieldRelationInterpretation object)
1251 {
1252 return null;
1253 }
1254
1255 /**
1256 * Returns the result of interpreting the object as an instance of '<em>Global Relation Interpretation</em>'.
1257 * <!-- begin-user-doc -->
1258 * This implementation returns null;
1259 * returning a non-null result will terminate the switch.
1260 * <!-- end-user-doc -->
1261 * @param object the target of the switch.
1262 * @return the result of interpreting the object as an instance of '<em>Global Relation Interpretation</em>'.
1263 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1264 * @generated
1265 */
1266 public T caseGlobalRelationInterpretation(GlobalRelationInterpretation object)
1267 {
1268 return null;
1269 }
1270
1271 /**
1272 * Returns the result of interpreting the object as an instance of '<em>Multiplicity Definition</em>'.
1273 * <!-- begin-user-doc -->
1274 * This implementation returns null;
1275 * returning a non-null result will terminate the switch.
1276 * <!-- end-user-doc -->
1277 * @param object the target of the switch.
1278 * @return the result of interpreting the object as an instance of '<em>Multiplicity Definition</em>'.
1279 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1280 * @generated
1281 */
1282 public T caseMultiplicityDefinition(MultiplicityDefinition object)
1283 {
1284 return null;
1285 }
1286
1287 /**
1288 * Returns the result of interpreting the object as an instance of '<em>Boolean True</em>'.
1289 * <!-- begin-user-doc -->
1290 * This implementation returns null;
1291 * returning a non-null result will terminate the switch.
1292 * <!-- end-user-doc -->
1293 * @param object the target of the switch.
1294 * @return the result of interpreting the object as an instance of '<em>Boolean True</em>'.
1295 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1296 * @generated
1297 */
1298 public T caseBooleanTrue(BooleanTrue object)
1299 {
1300 return null;
1301 }
1302
1303 /**
1304 * Returns the result of interpreting the object as an instance of '<em>Boolean False</em>'.
1305 * <!-- begin-user-doc -->
1306 * This implementation returns null;
1307 * returning a non-null result will terminate the switch.
1308 * <!-- end-user-doc -->
1309 * @param object the target of the switch.
1310 * @return the result of interpreting the object as an instance of '<em>Boolean False</em>'.
1311 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1312 * @generated
1313 */
1314 public T caseBooleanFalse(BooleanFalse object)
1315 {
1316 return null;
1317 }
1318
1319 /**
1320 * Returns the result of interpreting the object as an instance of '<em>True</em>'.
1321 * <!-- begin-user-doc -->
1322 * This implementation returns null;
1323 * returning a non-null result will terminate the switch.
1324 * <!-- end-user-doc -->
1325 * @param object the target of the switch.
1326 * @return the result of interpreting the object as an instance of '<em>True</em>'.
1327 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1328 * @generated
1329 */
1330 public T caseTrue(True object)
1331 {
1332 return null;
1333 }
1334
1335 /**
1336 * Returns the result of interpreting the object as an instance of '<em>False</em>'.
1337 * <!-- begin-user-doc -->
1338 * This implementation returns null;
1339 * returning a non-null result will terminate the switch.
1340 * <!-- end-user-doc -->
1341 * @param object the target of the switch.
1342 * @return the result of interpreting the object as an instance of '<em>False</em>'.
1343 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1344 * @generated
1345 */
1346 public T caseFalse(False object)
1347 {
1348 return null;
1349 }
1350
1351 /**
1352 * Returns the result of interpreting the object as an instance of '<em>Unknown</em>'.
1353 * <!-- begin-user-doc -->
1354 * This implementation returns null;
1355 * returning a non-null result will terminate the switch.
1356 * <!-- end-user-doc -->
1357 * @param object the target of the switch.
1358 * @return the result of interpreting the object as an instance of '<em>Unknown</em>'.
1359 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1360 * @generated
1361 */
1362 public T caseUnknown(Unknown object)
1363 {
1364 return null;
1365 }
1366
1367 /**
1368 * Returns the result of interpreting the object as an instance of '<em>Error</em>'.
1369 * <!-- begin-user-doc -->
1370 * This implementation returns null;
1371 * returning a non-null result will terminate the switch.
1372 * <!-- end-user-doc -->
1373 * @param object the target of the switch.
1374 * @return the result of interpreting the object as an instance of '<em>Error</em>'.
1375 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1376 * @generated
1377 */
1378 public T caseError(org.eclipse.viatra.solver.language.solverLanguage.Error object)
1379 {
1380 return null;
1381 }
1382
1383 /**
1384 * Returns the result of interpreting the object as an instance of '<em>Positive</em>'.
1385 * <!-- begin-user-doc -->
1386 * This implementation returns null;
1387 * returning a non-null result will terminate the switch.
1388 * <!-- end-user-doc -->
1389 * @param object the target of the switch.
1390 * @return the result of interpreting the object as an instance of '<em>Positive</em>'.
1391 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1392 * @generated
1393 */
1394 public T casePositive(Positive object)
1395 {
1396 return null;
1397 }
1398
1399 /**
1400 * Returns the result of interpreting the object as an instance of '<em>Negative</em>'.
1401 * <!-- begin-user-doc -->
1402 * This implementation returns null;
1403 * returning a non-null result will terminate the switch.
1404 * <!-- end-user-doc -->
1405 * @param object the target of the switch.
1406 * @return the result of interpreting the object as an instance of '<em>Negative</em>'.
1407 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1408 * @generated
1409 */
1410 public T caseNegative(Negative object)
1411 {
1412 return null;
1413 }
1414
1415 /**
1416 * Returns the result of interpreting the object as an instance of '<em>Reflexive Closure</em>'.
1417 * <!-- begin-user-doc -->
1418 * This implementation returns null;
1419 * returning a non-null result will terminate the switch.
1420 * <!-- end-user-doc -->
1421 * @param object the target of the switch.
1422 * @return the result of interpreting the object as an instance of '<em>Reflexive Closure</em>'.
1423 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1424 * @generated
1425 */
1426 public T caseReflexiveClosure(ReflexiveClosure object)
1427 {
1428 return null;
1429 }
1430
1431 /**
1432 * Returns the result of interpreting the object as an instance of '<em>Irreflexive Closure</em>'.
1433 * <!-- begin-user-doc -->
1434 * This implementation returns null;
1435 * returning a non-null result will terminate the switch.
1436 * <!-- end-user-doc -->
1437 * @param object the target of the switch.
1438 * @return the result of interpreting the object as an instance of '<em>Irreflexive Closure</em>'.
1439 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1440 * @generated
1441 */
1442 public T caseIrreflexiveClosure(IrreflexiveClosure object)
1443 {
1444 return null;
1445 }
1446
1447 /**
1448 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
1449 * <!-- begin-user-doc -->
1450 * This implementation returns null;
1451 * returning a non-null result will terminate the switch, but this is the last case anyway.
1452 * <!-- end-user-doc -->
1453 * @param object the target of the switch.
1454 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
1455 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
1456 * @generated
1457 */
1458 @Override
1459 public T defaultCase(EObject object)
1460 {
1461 return null;
1462 }
1463
1464} //SolverLanguageSwitch
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/AbstractSolverLanguageValidator.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/AbstractSolverLanguageValidator.java
new file mode 100644
index 00000000..e4313a24
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/AbstractSolverLanguageValidator.java
@@ -0,0 +1,19 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.validation;
5
6import java.util.ArrayList;
7import java.util.List;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.xtext.validation.AbstractDeclarativeValidator;
10
11public abstract class AbstractSolverLanguageValidator extends AbstractDeclarativeValidator {
12
13 @Override
14 protected List<EPackage> getEPackages() {
15 List<EPackage> result = new ArrayList<EPackage>();
16 result.add(org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage.eINSTANCE);
17 return result;
18 }
19}
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageConfigurableIssueCodesProvider.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageConfigurableIssueCodesProvider.java
new file mode 100644
index 00000000..4247dc60
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/validation/SolverLanguageConfigurableIssueCodesProvider.java
@@ -0,0 +1,22 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.validation;
5
6import org.eclipse.xtext.preferences.PreferenceKey;
7import org.eclipse.xtext.util.IAcceptor;
8import org.eclipse.xtext.validation.ConfigurableIssueCodesProvider;
9import org.eclipse.xtext.validation.SeverityConverter;
10
11@SuppressWarnings("restriction")
12public class SolverLanguageConfigurableIssueCodesProvider extends ConfigurableIssueCodesProvider {
13 protected static final String ISSUE_CODE_PREFIX = "org.eclipse.viatra.solver.language.";
14
15 public static final String DEPRECATED_MODEL_PART = ISSUE_CODE_PREFIX + "deprecatedModelPart";
16
17 @Override
18 protected void initialize(IAcceptor<PreferenceKey> acceptor) {
19 super.initialize(acceptor);
20 acceptor.accept(create(DEPRECATED_MODEL_PART, SeverityConverter.SEVERITY_WARNING));
21 }
22}
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
new file mode 100644
index 00000000..7f95e737
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/GenerateSolverLanguage.mwe2
@@ -0,0 +1,49 @@
1module org.eclipse.viatra.solver.language.GenerateSolverLanguage
2
3import org.eclipse.xtext.xtext.generator.*
4import org.eclipse.xtext.xtext.generator.model.project.*
5
6var rootPath = ".."
7
8Workflow {
9
10 component = XtextGenerator {
11 configuration = {
12 project = StandardProjectConfig {
13 baseName = "org.eclipse.viatra.solver.language"
14 rootPath = rootPath
15 runtimeTest = {
16 enabled = true
17 }
18 eclipsePlugin = {
19 enabled = true
20 }
21 eclipsePluginTest = {
22 enabled = true
23 }
24 createEclipseMetaData = true
25 }
26 code = {
27 encoding = "UTF-8"
28 lineDelimiter = "\r\n"
29 fileHeader = "/*\n * generated by Xtext \${version}\n */"
30 }
31 }
32 language = StandardLanguage {
33 name = "org.eclipse.viatra.solver.language.SolverLanguage"
34 fileExtensions = "vsc"
35
36 serializer = {
37 generateStub = false
38 }
39 validator = {
40 // composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
41 // Generates checks for @Deprecated grammar annotations, an IssueProvider and a corresponding PropertyPage
42 generateDeprecationValidation = true
43 }
44 junitSupport = {
45 junitVersion = "5"
46 }
47 }
48 }
49}
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
new file mode 100644
index 00000000..17a329ad
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguage.xtext
@@ -0,0 +1,154 @@
1grammar org.eclipse.viatra.solver.language.SolverLanguage with org.eclipse.xtext.common.Terminals
2import "http://www.eclipse.org/emf/2002/Ecore" as ecore
3generate solverLanguage "http://www.eclipse.org/viatra/solver/language/SolverLanguage"
4
5Problem:
6 statements+=Statement*;
7Statement: Interpretation | Predicate;
8
9@Override terminal STRING returns ecore::EString: '"' ( '\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\'|'"') )* '"';
10REALLiteral returns ecore::EBigDecimal: '-'? INT '.' INT;
11INTLiteral returns ecore::EInt: '-'? INT;
12BooleanValue: {BooleanTrue} 'true' | 'false' {BooleanFalse};
13TruthValue: {True} 'true' | {False} 'false' | {Unknown} 'unknown' | {Error} 'error' ;
14
15
16///////////////////
17// Core grammar
18///////////////////
19Interpretation: BasicInterpretation | DefaultInterpretation | CDInterpretation;
20
21BasicInterpretation: symbol=Symbol '(' objects+=ComplexObject* ')' ':' value = TruthValue;
22
23Symbol: ModelSymbol | PartialitySymbol | DataSymbol;
24
25ModelSymbol: name = ID;
26
27PartialitySymbol: ExistSymbol | EqualsSymbol;
28ExistSymbol:'exists'{ExistSymbol};
29EqualsSymbol:'equals' {EqualsSymbol};
30
31DataSymbol: BooleanSymbol | IntegerSymbol | RealSymbol | StringSymbol;
32BooleanSymbol:'bool' {BooleanSymbol};
33IntegerSymbol:'int' {IntegerSymbol};
34RealSymbol: 'real' {RealSymbol};
35StringSymbol:'string' {StringSymbol};
36
37ComplexObject: Object | AllInstances | AllObjects;
38
39Object: NamedObject | UnnamedObject | DataObject;
40NamedObject: "'" name = ID "'";
41UnnamedObject: name = ID;
42DataObject: BooleanObject | IntObject | RealObject | StringObject;
43BooleanObject: value = BooleanValue;
44IntObject: value = INTLiteral;
45RealObject: value = REALLiteral;
46StringObject: value = STRING;
47
48///////////////////
49// Predicte grammar
50///////////////////
51Predicate: PredicateSymbol | ErrorPredicate;
52PredicateSymbol:
53 'predicate' symbol = ModelSymbol '(' parameters += Parameter* ')' ':' ('false' | (bodies += PatternBody ('|' bodies += PatternBody)*)) '.'
54;
55ErrorPredicate:
56 {ErrorPredicate} 'error' (name = ID)? ('(' parameters += Parameter* ')') ':' ('false' | (bodies += PatternBody ('|' bodies += PatternBody)*)) '.'
57;
58
59Parameter: variable = Variable (':' type = Symbol)?;
60PatternBody: {PatternBody} ('true' | constraints += Constraint*) ;
61Polarity: {Positive} '+' | {Negative} '-';
62Constraint: (polarity = Polarity)? symbol = ModelSymbol (
63 ( '(' params += Literal* ')') | (closureType = ClosureType '(' params += Literal params += Literal ')'));
64
65ClosureType: {ReflexiveClosure} '*' | {IrreflexiveClosure} '+';
66Literal: Variable | DataObject;
67Variable: name = ID;
68
69///////////////////
70// Complex Interpretation grammar
71///////////////////
72
73AllInstances: ':' symbol = Symbol;
74AllObjects: {AllObjects} '*';
75
76///////////////////
77// Defaul Interpretation grammar
78///////////////////
79DefaultInterpretation: 'default' interpretation = BasicInterpretation;
80
81///////////////////
82// Advanced Class-Diagram interpretations
83///////////////////
84CDInterpretation: ClassInterpretation | EnumInterpretation| GlobalRelationInterpretation;
85ClassInterpretation:
86 abstract?='abstract' 'class' symbol = ModelSymbol ('extends' supertypes += ModelSymbol+)?'{'
87 fielt += FieldRelationInterpretation*
88 '}'
89;
90EnumInterpretation: 'enum' Symbol = ModelSymbol '{' objects+=NamedObject+ '}';
91FieldRelationInterpretation: containment ?= 'containment' symbol = ModelSymbol ':' multiplicity = MultiplicityDefinition? target = Symbol;
92GlobalRelationInterpretation: containment ?= 'containment' 'relation' symbol = ModelSymbol ':' sourceMultiplicity = MultiplicityDefinition? source = Symbol targetMultiplicity = MultiplicityDefinition? target = Symbol;
93MultiplicityDefinition: lower = INT '..' (upper = INT | unlimitedUpper?='*');
94
95////SymbolIntroduction : Type | GlobalRelation | Predicate;
96////Symbol: Type | Relation | Predicate | Variable | Element;
97//
98//////////////////////
99//// Types
100//////////////////////
101//
102//Type: TypeDeclaration | /*TypeDefinition |*/ TypeEnumeration;
103//
104//TypeDeclaration:
105// abstract?= 'abstract' 'class' name = ID ('extends' supertypes += [Type] (',' supertypes += [Type])) '{'
106// fieldDeclarations += FieldRelationDeclaration*
107// '}'
108//;
109//TypeEnumeration:
110// 'enum' name = ID 'extends' supertypes += [Type] (',' supertypes += [Type]) '{'
111// (elements += Element)*
112// '}'
113//;
114//Element:
115// name = ID
116//;
117//
118//////////////////////
119//// Relations
120//////////////////////
121//
122//Relation: FieldRelationDeclaration | GlobalRelationDeclaration | RelationEnumeration;
123//GlobalRelation returns Relation: GlobalRelationDeclaration | /*RelationDefinition |*/ RelationEnumeration;
124//
125//FieldRelationDeclaration:
126// containment?='containment' target = [Type] name = ID
127//;
128//
129//GlobalRelationDeclaration:
130// containment?='containment' 'relation' name = ID '(' source = [Type] ',' target = [Type] ')'
131//;
132//
133//RelationEnumeration:
134// 'relation' name = ID '{' links += Link* '}'
135//;
136//
137//Link: '(' source = Element ',' target = Element ')';
138//
139//
140//
141//
142//
143//
144//Model:
145// 'model' '{'
146// atoms += Atom (',' atoms += Atom )
147// '}'
148//;
149//Atom: referredSymbol = [Symbol] '(' (params += Element (',' params += Element)*)? ')';
150//
151//ScopeDeclaration:
152// 'scope'
153//;
154//
diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageRuntimeModule.xtend b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageRuntimeModule.xtend
new file mode 100644
index 00000000..343bc48a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageRuntimeModule.xtend
@@ -0,0 +1,11 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language
5
6
7/**
8 * Use this class to register components to be used at runtime / without the Equinox extension registry.
9 */
10class SolverLanguageRuntimeModule extends AbstractSolverLanguageRuntimeModule {
11}
diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetup.xtend b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetup.xtend
new file mode 100644
index 00000000..1ce7b1d8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguageStandaloneSetup.xtend
@@ -0,0 +1,15 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language
5
6
7/**
8 * Initialization support for running Xtext languages without Equinox extension registry.
9 */
10class SolverLanguageStandaloneSetup extends SolverLanguageStandaloneSetupGenerated {
11
12 def static void doSetup() {
13 new SolverLanguageStandaloneSetup().createInjectorAndDoEMFRegistration()
14 }
15}
diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/generator/SolverLanguageGenerator.xtend b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/generator/SolverLanguageGenerator.xtend
new file mode 100644
index 00000000..0b8620e9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/generator/SolverLanguageGenerator.xtend
@@ -0,0 +1,25 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.generator
5
6import org.eclipse.emf.ecore.resource.Resource
7import org.eclipse.xtext.generator.AbstractGenerator
8import org.eclipse.xtext.generator.IFileSystemAccess2
9import org.eclipse.xtext.generator.IGeneratorContext
10
11/**
12 * Generates code from your model files on save.
13 *
14 * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#code-generation
15 */
16class SolverLanguageGenerator extends AbstractGenerator {
17
18 override void doGenerate(Resource resource, IFileSystemAccess2 fsa, IGeneratorContext context) {
19// fsa.generateFile('greetings.txt', 'People to greet: ' +
20// resource.allContents
21// .filter(Greeting)
22// .map[name]
23// .join(', '))
24 }
25}
diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/scoping/SolverLanguageScopeProvider.xtend b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/scoping/SolverLanguageScopeProvider.xtend
new file mode 100644
index 00000000..6b92897c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/scoping/SolverLanguageScopeProvider.xtend
@@ -0,0 +1,15 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.scoping
5
6
7/**
8 * This class contains custom scoping description.
9 *
10 * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#scoping
11 * on how and when to use it.
12 */
13class SolverLanguageScopeProvider extends AbstractSolverLanguageScopeProvider {
14
15}
diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/validation/SolverLanguageValidator.xtend b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/validation/SolverLanguageValidator.xtend
new file mode 100644
index 00000000..a7ff7252
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/validation/SolverLanguageValidator.xtend
@@ -0,0 +1,25 @@
1/*
2 * generated by Xtext 2.18.0.M3
3 */
4package org.eclipse.viatra.solver.language.validation
5
6
7/**
8 * This class contains custom validation rules.
9 *
10 * See https://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#validation
11 */
12class SolverLanguageValidator extends AbstractSolverLanguageValidator {
13
14// public static val INVALID_NAME = 'invalidName'
15//
16// @Check
17// def checkGreetingStartsWithCapital(Greeting greeting) {
18// if (!Character.isUpperCase(greeting.name.charAt(0))) {
19// warning('Name should start with a capital',
20// SolverLanguagePackage.Literals.GREETING__NAME,
21// INVALID_NAME)
22// }
23// }
24
25}
diff --git a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/.gitignore b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/.gitignore
new file mode 100644
index 00000000..82298938
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/.gitignore
@@ -0,0 +1,6 @@
1/.SolverLanguageRuntimeModule.java._trace
2/.SolverLanguageRuntimeModule.xtendbin
3/.SolverLanguageStandaloneSetup.java._trace
4/.SolverLanguageStandaloneSetup.xtendbin
5/SolverLanguageRuntimeModule.java
6/SolverLanguageStandaloneSetup.java
diff --git a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/generator/.gitignore b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/generator/.gitignore
new file mode 100644
index 00000000..a9345b80
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/generator/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageGenerator.java._trace
2/.SolverLanguageGenerator.xtendbin
3/SolverLanguageGenerator.java
diff --git a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/scoping/.gitignore b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/scoping/.gitignore
new file mode 100644
index 00000000..16497231
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/scoping/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageScopeProvider.java._trace
2/.SolverLanguageScopeProvider.xtendbin
3/SolverLanguageScopeProvider.java
diff --git a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/validation/.gitignore b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/validation/.gitignore
new file mode 100644
index 00000000..565d4b27
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/validation/.gitignore
@@ -0,0 +1,3 @@
1/.SolverLanguageValidator.java._trace
2/.SolverLanguageValidator.xtendbin
3/SolverLanguageValidator.java