From 17be8277d61825e6df21afe513dcfe53190663f0 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Sat, 10 Jun 2017 21:03:09 +0200 Subject: Added generated artefacts for the alloy parser --- .../AbstractAlloyLanguageRuntimeModule.java | 161 + .../bme/mit/inf/dslreasoner/AlloyLanguage.xtextbin | Bin 0 -> 9814 bytes .../AlloyLanguageStandaloneSetupGenerated.java | 45 + .../mit/inf/dslreasoner/alloyLanguage/ALSAnd.java | 77 + .../dslreasoner/alloyLanguage/ALSCardinality.java | 50 + .../dslreasoner/alloyLanguage/ALSDefinition.java | 97 + .../alloyLanguage/ALSDirectProduct.java | 137 + .../inf/dslreasoner/alloyLanguage/ALSDocument.java | 138 + .../alloyLanguage/ALSEnumDeclaration.java | 41 + .../dslreasoner/alloyLanguage/ALSEnumLiteral.java | 18 + .../inf/dslreasoner/alloyLanguage/ALSEquals.java | 77 + .../alloyLanguage/ALSFactDeclaration.java | 78 + .../alloyLanguage/ALSFieldDeclaration.java | 80 + .../dslreasoner/alloyLanguage/ALSFunctionCall.java | 98 + .../alloyLanguage/ALSFunctionDefinition.java | 50 + .../mit/inf/dslreasoner/alloyLanguage/ALSIden.java | 18 + .../mit/inf/dslreasoner/alloyLanguage/ALSIff.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSImpl.java | 104 + .../mit/inf/dslreasoner/alloyLanguage/ALSInt.java | 18 + .../inf/dslreasoner/alloyLanguage/ALSIntScope.java | 18 + .../dslreasoner/alloyLanguage/ALSIntersection.java | 77 + .../alloyLanguage/ALSInverseRelation.java | 50 + .../mit/inf/dslreasoner/alloyLanguage/ALSJoin.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSLeq.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSLess.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSMeq.java | 77 + .../inf/dslreasoner/alloyLanguage/ALSMinus.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSMore.java | 77 + .../dslreasoner/alloyLanguage/ALSMultiplicity.java | 337 + .../mit/inf/dslreasoner/alloyLanguage/ALSNone.java | 18 + .../mit/inf/dslreasoner/alloyLanguage/ALSNot.java | 50 + .../dslreasoner/alloyLanguage/ALSNotEquals.java | 77 + .../alloyLanguage/ALSNumberLiteral.java | 50 + .../alloyLanguage/ALSNumericOperator.java | 310 + .../mit/inf/dslreasoner/alloyLanguage/ALSOr.java | 77 + .../inf/dslreasoner/alloyLanguage/ALSOverride.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSPlus.java | 77 + .../dslreasoner/alloyLanguage/ALSQuantifiedEx.java | 125 + .../alloyLanguage/ALSRangeRestrictionLeft.java | 77 + .../alloyLanguage/ALSRangeRestrictionRight.java | 77 + .../dslreasoner/alloyLanguage/ALSReference.java | 50 + .../ALSReflectiveTransitiveClosure.java | 50 + .../alloyLanguage/ALSRelationDeclaration.java | 51 + .../alloyLanguage/ALSRelationDefinition.java | 18 + .../dslreasoner/alloyLanguage/ALSRunCommand.java | 43 + .../inf/dslreasoner/alloyLanguage/ALSSigScope.java | 77 + .../alloyLanguage/ALSSignatureBody.java | 161 + .../alloyLanguage/ALSSignatureDeclaration.java | 18 + .../inf/dslreasoner/alloyLanguage/ALSSubset.java | 77 + .../mit/inf/dslreasoner/alloyLanguage/ALSSum.java | 68 + .../mit/inf/dslreasoner/alloyLanguage/ALSTerm.java | 19 + .../alloyLanguage/ALSTypeDeclaration.java | 18 + .../dslreasoner/alloyLanguage/ALSTypeScope.java | 51 + .../dslreasoner/alloyLanguage/ALSUnaryMinus.java | 50 + .../mit/inf/dslreasoner/alloyLanguage/ALSUniv.java | 18 + .../alloyLanguage/ALSVariableDeclaration.java | 50 + .../alloyLanguage/AlSTransitiveClosure.java | 50 + .../alloyLanguage/AlloyLanguageFactory.java | 502 ++ .../alloyLanguage/AlloyLanguagePackage.java | 4680 +++++++++++ .../dslreasoner/alloyLanguage/impl/ALSAndImpl.java | 264 + .../alloyLanguage/impl/ALSCardinalityImpl.java | 193 + .../alloyLanguage/impl/ALSDefinitionImpl.java | 312 + .../alloyLanguage/impl/ALSDirectProductImpl.java | 392 + .../alloyLanguage/impl/ALSDocumentImpl.java | 397 + .../alloyLanguage/impl/ALSEnumDeclarationImpl.java | 165 + .../alloyLanguage/impl/ALSEnumLiteralImpl.java | 40 + .../alloyLanguage/impl/ALSEqualsImpl.java | 264 + .../alloyLanguage/impl/ALSFactDeclarationImpl.java | 265 + .../impl/ALSFieldDeclarationImpl.java | 265 + .../alloyLanguage/impl/ALSFunctionCallImpl.java | 306 + .../impl/ALSFunctionDefinitionImpl.java | 193 + .../alloyLanguage/impl/ALSIdenImpl.java | 40 + .../dslreasoner/alloyLanguage/impl/ALSIffImpl.java | 264 + .../alloyLanguage/impl/ALSImplImpl.java | 335 + .../dslreasoner/alloyLanguage/impl/ALSIntImpl.java | 40 + .../alloyLanguage/impl/ALSIntScopeImpl.java | 40 + .../alloyLanguage/impl/ALSIntersectionImpl.java | 264 + .../alloyLanguage/impl/ALSInverseRelationImpl.java | 193 + .../alloyLanguage/impl/ALSJoinImpl.java | 264 + .../dslreasoner/alloyLanguage/impl/ALSLeqImpl.java | 264 + .../alloyLanguage/impl/ALSLessImpl.java | 264 + .../dslreasoner/alloyLanguage/impl/ALSMeqImpl.java | 264 + .../alloyLanguage/impl/ALSMinusImpl.java | 264 + .../alloyLanguage/impl/ALSMoreImpl.java | 264 + .../alloyLanguage/impl/ALSNoneImpl.java | 40 + .../alloyLanguage/impl/ALSNotEqualsImpl.java | 264 + .../dslreasoner/alloyLanguage/impl/ALSNotImpl.java | 193 + .../alloyLanguage/impl/ALSNumberLiteralImpl.java | 176 + .../dslreasoner/alloyLanguage/impl/ALSOrImpl.java | 264 + .../alloyLanguage/impl/ALSOverrideImpl.java | 264 + .../alloyLanguage/impl/ALSPlusImpl.java | 264 + .../alloyLanguage/impl/ALSQuantifiedExImpl.java | 368 + .../impl/ALSRangeRestrictionLeftImpl.java | 264 + .../impl/ALSRangeRestrictionRightImpl.java | 264 + .../alloyLanguage/impl/ALSReferenceImpl.java | 172 + .../impl/ALSReflectiveTransitiveClosureImpl.java | 193 + .../impl/ALSRelationDeclarationImpl.java | 177 + .../impl/ALSRelationDefinitionImpl.java | 40 + .../alloyLanguage/impl/ALSRunCommandImpl.java | 167 + .../alloyLanguage/impl/ALSSigScopeImpl.java | 243 + .../alloyLanguage/impl/ALSSignatureBodyImpl.java | 438 + .../impl/ALSSignatureDeclarationImpl.java | 40 + .../alloyLanguage/impl/ALSSubsetImpl.java | 264 + .../dslreasoner/alloyLanguage/impl/ALSSumImpl.java | 240 + .../alloyLanguage/impl/ALSTermImpl.java | 42 + .../alloyLanguage/impl/ALSTypeDeclarationImpl.java | 40 + .../alloyLanguage/impl/ALSTypeScopeImpl.java | 177 + .../alloyLanguage/impl/ALSUnaryMinusImpl.java | 193 + .../alloyLanguage/impl/ALSUnivImpl.java | 40 + .../impl/ALSVariableDeclarationImpl.java | 193 + .../impl/AlSTransitiveClosureImpl.java | 193 + .../impl/AlloyLanguageFactoryImpl.java | 801 ++ .../impl/AlloyLanguagePackageImpl.java | 2417 ++++++ .../util/AlloyLanguageAdapterFactory.java | 1152 +++ .../alloyLanguage/util/AlloyLanguageSwitch.java | 1338 +++ .../antlr/AlloyLanguageAntlrTokenFileProvider.java | 16 + .../parser/antlr/AlloyLanguageParser.java | 39 + .../parser/antlr/internal/InternalAlloyLanguage.g | 3046 +++++++ .../antlr/internal/InternalAlloyLanguage.tokens | 137 + .../antlr/internal/InternalAlloyLanguageLexer.java | 2816 +++++++ .../internal/InternalAlloyLanguageParser.java | 8882 ++++++++++++++++++++ .../serializer/AlloyLanguageSemanticSequencer.java | 2235 +++++ .../AlloyLanguageSyntacticSequencer.java | 214 + .../services/AlloyLanguageGrammarAccess.java | 2649 ++++++ .../validation/AbstractAlloyLanguageValidator.java | 18 + 125 files changed, 46163 insertions(+) create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AbstractAlloyLanguageRuntimeModule.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguage.xtextbin create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguageStandaloneSetupGenerated.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSAnd.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSCardinality.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDefinition.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDirectProduct.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDocument.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumLiteral.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEquals.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFactDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFieldDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionCall.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionDefinition.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIden.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIff.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInt.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntScope.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntersection.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInverseRelation.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSJoin.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLeq.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLess.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMeq.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMinus.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMore.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMultiplicity.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNone.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNot.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNotEquals.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumberLiteral.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumericOperator.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOr.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOverride.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSPlus.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSQuantifiedEx.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionLeft.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionRight.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReference.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReflectiveTransitiveClosure.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDefinition.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRunCommand.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSigScope.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureBody.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSubset.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSum.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTerm.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeScope.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUnaryMinus.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUniv.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSVariableDeclaration.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlSTransitiveClosure.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguageFactory.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguagePackage.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSAndImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSCardinalityImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDefinitionImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDirectProductImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDocumentImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumLiteralImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEqualsImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFactDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFieldDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionCallImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionDefinitionImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIdenImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIffImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSImplImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntScopeImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntersectionImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSInverseRelationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSJoinImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLeqImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLessImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMeqImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMinusImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMoreImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNoneImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotEqualsImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNumberLiteralImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOrImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOverrideImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSPlusImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSQuantifiedExImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionLeftImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionRightImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReferenceImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReflectiveTransitiveClosureImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDefinitionImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRunCommandImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSigScopeImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureBodyImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSubsetImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSumImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTermImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeScopeImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnaryMinusImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnivImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSVariableDeclarationImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlSTransitiveClosureImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguageFactoryImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguagePackageImpl.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageAdapterFactory.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageSwitch.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageAntlrTokenFileProvider.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageParser.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.g create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.tokens create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageLexer.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSemanticSequencer.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSyntacticSequencer.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/services/AlloyLanguageGrammarAccess.java create mode 100644 Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/validation/AbstractAlloyLanguageValidator.java (limited to 'Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner') diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AbstractAlloyLanguageRuntimeModule.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AbstractAlloyLanguageRuntimeModule.java new file mode 100644 index 00000000..b473e102 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AbstractAlloyLanguageRuntimeModule.java @@ -0,0 +1,161 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner; + +import java.util.Properties; + +import org.eclipse.xtext.Constants; + +import com.google.inject.Binder; +import com.google.inject.name.Names; + +/** + * Manual modifications go to {hu.bme.mit.inf.dslreasoner.AlloyLanguageRuntimeModule} + */ +@SuppressWarnings("all") +public abstract class AbstractAlloyLanguageRuntimeModule extends org.eclipse.xtext.common.types.DefaultCommonTypesRuntimeModule { + + protected Properties properties = null; + + @Override + public void configure(Binder binder) { + properties = tryBindProperties(binder, "hu/bme/mit/inf/dslreasoner/AlloyLanguage.properties"); + super.configure(binder); + } + + public void configureLanguageName(Binder binder) { + binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("hu.bme.mit.inf.dslreasoner.AlloyLanguage"); + } + + public void configureFileExtensions(Binder binder) { + if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null) + binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("als"); + } + + // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment + public java.lang.ClassLoader bindClassLoaderToInstance() { + return getClass().getClassLoader(); + } + + // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment + public Class bindIGrammarAccess() { + return hu.bme.mit.inf.dslreasoner.services.AlloyLanguageGrammarAccess.class; + } + + // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment + public Class bindISemanticSequencer() { + return hu.bme.mit.inf.dslreasoner.serializer.AlloyLanguageSemanticSequencer.class; + } + + // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment + public Class bindISyntacticSequencer() { + return hu.bme.mit.inf.dslreasoner.serializer.AlloyLanguageSyntacticSequencer.class; + } + + // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment + public Class bindISerializer() { + return org.eclipse.xtext.serializer.impl.Serializer.class; + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public Class bindIParser() { + return hu.bme.mit.inf.dslreasoner.parser.antlr.AlloyLanguageParser.class; + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public Class bindITokenToStringConverter() { + return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class; + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public Class bindIAntlrTokenFileProvider() { + return hu.bme.mit.inf.dslreasoner.parser.antlr.AlloyLanguageAntlrTokenFileProvider.class; + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public Class bindLexer() { + return hu.bme.mit.inf.dslreasoner.parser.antlr.internal.InternalAlloyLanguageLexer.class; + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public com.google.inject.Provider provideInternalAlloyLanguageLexer() { + return org.eclipse.xtext.parser.antlr.LexerProvider.create(hu.bme.mit.inf.dslreasoner.parser.antlr.internal.InternalAlloyLanguageLexer.class); + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public void configureRuntimeLexer(com.google.inject.Binder binder) { + binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(hu.bme.mit.inf.dslreasoner.parser.antlr.internal.InternalAlloyLanguageLexer.class); + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public Class bindITokenDefProvider() { + return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class; + } + + // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment + public Class bindIUnorderedGroupHelper() { + return org.eclipse.xtext.parser.antlr.UnorderedGroupHelper.class; + } + + // contributed by org.eclipse.xtext.generator.validation.ValidatorFragment + @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class bindAlloyLanguageValidator() { + return hu.bme.mit.inf.dslreasoner.validation.AlloyLanguageValidator.class; + } + + // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment + public Class bindIScopeProvider() { + return hu.bme.mit.inf.dslreasoner.scoping.AlloyLanguageScopeProvider.class; + } + + // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment + public void configureIScopeProviderDelegate(com.google.inject.Binder binder) { + binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider.class); + } + + // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment + public void configureIgnoreCaseLinking(com.google.inject.Binder binder) { + binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false); + } + + // contributed by org.eclipse.xtext.generator.exporting.QualifiedNamesFragment + public Class bindIQualifiedNameProvider() { + return org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider.class; + } + + // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment + public Class bindIContainer$Manager() { + return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class; + } + + // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment + public Class bindIAllContainersState$Provider() { + return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class; + } + + // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment + public void configureIResourceDescriptions(com.google.inject.Binder binder) { + binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class); + } + + // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment + public void configureIResourceDescriptionsPersisted(com.google.inject.Binder binder) { + binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class); + } + + // contributed by org.eclipse.xtext.generator.generator.GeneratorFragment + public Class bindIGenerator() { + return hu.bme.mit.inf.dslreasoner.generator.AlloyLanguageGenerator.class; + } + + // contributed by org.eclipse.xtext.generator.formatting.FormatterFragment + public Class bindIFormatter() { + return hu.bme.mit.inf.dslreasoner.formatting.AlloyLanguageFormatter.class; + } + + // contributed by org.eclipse.xtext.generator.types.TypesGeneratorFragment + public Class bindIGlobalScopeProvider() { + return org.eclipse.xtext.common.types.xtext.TypesAwareDefaultGlobalScopeProvider.class; + } + +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguage.xtextbin b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguage.xtextbin new file mode 100644 index 00000000..a9ec3da4 Binary files /dev/null and b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguage.xtextbin differ diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguageStandaloneSetupGenerated.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguageStandaloneSetupGenerated.java new file mode 100644 index 00000000..d4e7bff4 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/AlloyLanguageStandaloneSetupGenerated.java @@ -0,0 +1,45 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner; + +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.resource.Resource; +import org.eclipse.xtext.ISetup; + +import com.google.inject.Guice; +import com.google.inject.Injector; + +/** + * Generated from StandaloneSetup.xpt! + */ +@SuppressWarnings("all") +public class AlloyLanguageStandaloneSetupGenerated implements ISetup { + + @Override + public Injector createInjectorAndDoEMFRegistration() { + org.eclipse.xtext.common.TerminalsStandaloneSetup.doSetup(); + + Injector injector = createInjector(); + register(injector); + return injector; + } + + public Injector createInjector() { + return Guice.createInjector(new hu.bme.mit.inf.dslreasoner.AlloyLanguageRuntimeModule()); + } + + public void register(Injector injector) { + if (!EPackage.Registry.INSTANCE.containsKey("http://www.bme.hu/mit/inf/dslreasoner/AlloyLanguage")) { + EPackage.Registry.INSTANCE.put("http://www.bme.hu/mit/inf/dslreasoner/AlloyLanguage", hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage.eINSTANCE); + } + + org.eclipse.xtext.resource.IResourceFactory resourceFactory = injector.getInstance(org.eclipse.xtext.resource.IResourceFactory.class); + org.eclipse.xtext.resource.IResourceServiceProvider serviceProvider = injector.getInstance(org.eclipse.xtext.resource.IResourceServiceProvider.class); + Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("als", resourceFactory); + org.eclipse.xtext.resource.IResourceServiceProvider.Registry.INSTANCE.getExtensionToFactoryMap().put("als", serviceProvider); + + + + } +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSAnd.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSAnd.java new file mode 100644 index 00000000..ae5be888 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSAnd.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS And'. + * + * + *

+ * The following features are supported: + *

+ * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSAnd() + * @model + * @generated + */ +public interface ALSAnd extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSAnd_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSAnd_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSAnd diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSCardinality.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSCardinality.java new file mode 100644 index 00000000..9dfede24 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSCardinality.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Cardinality'. + * + * + *

+ * The following features are supported: + *

+ * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSCardinality() + * @model + * @generated + */ +public interface ALSCardinality extends ALSTerm +{ + /** + * Returns the value of the 'Operand' containment reference. + * + *

+ * If the meaning of the 'Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Operand' containment reference. + * @see #setOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSCardinality_Operand() + * @model containment="true" + * @generated + */ + ALSTerm getOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality#getOperand Operand}' containment reference. + * + * + * @param value the new value of the 'Operand' containment reference. + * @see #getOperand() + * @generated + */ + void setOperand(ALSTerm value); + +} // ALSCardinality diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDefinition.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDefinition.java new file mode 100644 index 00000000..9ccd85d7 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDefinition.java @@ -0,0 +1,97 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Definition'. + * + * + *

+ * The following features are supported: + *

+ * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDefinition() + * @model + * @generated + */ +public interface ALSDefinition extends EObject +{ + /** + * Returns the value of the 'Name' attribute. + * + *

+ * If the meaning of the 'Name' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDefinition_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the 'Variables' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration}. + * + *

+ * If the meaning of the 'Variables' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Variables' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDefinition_Variables() + * @model containment="true" + * @generated + */ + EList getVariables(); + + /** + * Returns the value of the 'Value' containment reference. + * + *

+ * If the meaning of the 'Value' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Value' containment reference. + * @see #setValue(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDefinition_Value() + * @model containment="true" + * @generated + */ + ALSTerm getValue(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getValue Value}' containment reference. + * + * + * @param value the new value of the 'Value' containment reference. + * @see #getValue() + * @generated + */ + void setValue(ALSTerm value); + +} // ALSDefinition diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDirectProduct.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDirectProduct.java new file mode 100644 index 00000000..b133333b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDirectProduct.java @@ -0,0 +1,137 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Direct Product'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftMultiplicit Left Multiplicit}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightMultiplicit Right Multiplicit}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDirectProduct() + * @model + * @generated + */ +public interface ALSDirectProduct extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDirectProduct_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Left Multiplicit' attribute. + * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity}. + * + *

+ * If the meaning of the 'Left Multiplicit' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Multiplicit' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #setLeftMultiplicit(ALSMultiplicity) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDirectProduct_LeftMultiplicit() + * @model + * @generated + */ + ALSMultiplicity getLeftMultiplicit(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftMultiplicit Left Multiplicit}' attribute. + * + * + * @param value the new value of the 'Left Multiplicit' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #getLeftMultiplicit() + * @generated + */ + void setLeftMultiplicit(ALSMultiplicity value); + + /** + * Returns the value of the 'Right Multiplicit' attribute. + * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity}. + * + *

+ * If the meaning of the 'Right Multiplicit' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Multiplicit' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #setRightMultiplicit(ALSMultiplicity) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDirectProduct_RightMultiplicit() + * @model + * @generated + */ + ALSMultiplicity getRightMultiplicit(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightMultiplicit Right Multiplicit}' attribute. + * + * + * @param value the new value of the 'Right Multiplicit' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #getRightMultiplicit() + * @generated + */ + void setRightMultiplicit(ALSMultiplicity value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDirectProduct_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSDirectProduct diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDocument.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDocument.java new file mode 100644 index 00000000..e2198e0a --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSDocument.java @@ -0,0 +1,138 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Document'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getEnumDeclarations Enum Declarations}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getSignatureBodies Signature Bodies}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getFunctionDefinitions Function Definitions}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRelationDefinitions Relation Definitions}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getFactDeclarations Fact Declarations}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRunCommand Run Command}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument() + * @model + * @generated + */ +public interface ALSDocument extends EObject +{ + /** + * Returns the value of the 'Enum Declarations' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration}. + * + *

+ * If the meaning of the 'Enum Declarations' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Enum Declarations' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument_EnumDeclarations() + * @model containment="true" + * @generated + */ + EList getEnumDeclarations(); + + /** + * Returns the value of the 'Signature Bodies' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody}. + * + *

+ * If the meaning of the 'Signature Bodies' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Signature Bodies' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument_SignatureBodies() + * @model containment="true" + * @generated + */ + EList getSignatureBodies(); + + /** + * Returns the value of the 'Function Definitions' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition}. + * + *

+ * If the meaning of the 'Function Definitions' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Function Definitions' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument_FunctionDefinitions() + * @model containment="true" + * @generated + */ + EList getFunctionDefinitions(); + + /** + * Returns the value of the 'Relation Definitions' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition}. + * + *

+ * If the meaning of the 'Relation Definitions' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Relation Definitions' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument_RelationDefinitions() + * @model containment="true" + * @generated + */ + EList getRelationDefinitions(); + + /** + * Returns the value of the 'Fact Declarations' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration}. + * + *

+ * If the meaning of the 'Fact Declarations' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Fact Declarations' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument_FactDeclarations() + * @model containment="true" + * @generated + */ + EList getFactDeclarations(); + + /** + * Returns the value of the 'Run Command' containment reference. + * + *

+ * If the meaning of the 'Run Command' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Run Command' containment reference. + * @see #setRunCommand(ALSRunCommand) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSDocument_RunCommand() + * @model containment="true" + * @generated + */ + ALSRunCommand getRunCommand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRunCommand Run Command}' containment reference. + * + * + * @param value the new value of the 'Run Command' containment reference. + * @see #getRunCommand() + * @generated + */ + void setRunCommand(ALSRunCommand value); + +} // ALSDocument diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumDeclaration.java new file mode 100644 index 00000000..41ab277b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumDeclaration.java @@ -0,0 +1,41 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'ALS Enum Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration#getLiteral Literal}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSEnumDeclaration() + * @model + * @generated + */ +public interface ALSEnumDeclaration extends ALSTypeDeclaration +{ + /** + * Returns the value of the 'Literal' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral}. + * + *

+ * If the meaning of the 'Literal' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Literal' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSEnumDeclaration_Literal() + * @model containment="true" + * @generated + */ + EList getLiteral(); + +} // ALSEnumDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumLiteral.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumLiteral.java new file mode 100644 index 00000000..c29b02b8 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEnumLiteral.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Enum Literal'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSEnumLiteral() + * @model + * @generated + */ +public interface ALSEnumLiteral extends ALSRelationDeclaration +{ +} // ALSEnumLiteral diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEquals.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEquals.java new file mode 100644 index 00000000..4738a390 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSEquals.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Equals'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSEquals() + * @model + * @generated + */ +public interface ALSEquals extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSEquals_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSEquals_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSEquals diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFactDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFactDeclaration.java new file mode 100644 index 00000000..7f2d4233 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFactDeclaration.java @@ -0,0 +1,78 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Fact Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getName Name}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getTerm Term}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFactDeclaration() + * @model + * @generated + */ +public interface ALSFactDeclaration extends EObject +{ + /** + * Returns the value of the 'Name' attribute. + * + *

+ * If the meaning of the 'Name' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFactDeclaration_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the 'Term' containment reference. + * + *

+ * If the meaning of the 'Term' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Term' containment reference. + * @see #setTerm(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFactDeclaration_Term() + * @model containment="true" + * @generated + */ + ALSTerm getTerm(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getTerm Term}' containment reference. + * + * + * @param value the new value of the 'Term' containment reference. + * @see #getTerm() + * @generated + */ + void setTerm(ALSTerm value); + +} // ALSFactDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFieldDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFieldDeclaration.java new file mode 100644 index 00000000..cb8faabf --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFieldDeclaration.java @@ -0,0 +1,80 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Field Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getMultiplicity Multiplicity}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getType Type}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFieldDeclaration() + * @model + * @generated + */ +public interface ALSFieldDeclaration extends ALSRelationDeclaration +{ + /** + * Returns the value of the 'Multiplicity' attribute. + * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity}. + * + *

+ * If the meaning of the 'Multiplicity' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Multiplicity' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #setMultiplicity(ALSMultiplicity) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFieldDeclaration_Multiplicity() + * @model + * @generated + */ + ALSMultiplicity getMultiplicity(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getMultiplicity Multiplicity}' attribute. + * + * + * @param value the new value of the 'Multiplicity' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #getMultiplicity() + * @generated + */ + void setMultiplicity(ALSMultiplicity value); + + /** + * Returns the value of the 'Type' containment reference. + * + *

+ * If the meaning of the 'Type' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Type' containment reference. + * @see #setType(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFieldDeclaration_Type() + * @model containment="true" + * @generated + */ + ALSTerm getType(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getType Type}' containment reference. + * + * + * @param value the new value of the 'Type' containment reference. + * @see #getType() + * @generated + */ + void setType(ALSTerm value); + +} // ALSFieldDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionCall.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionCall.java new file mode 100644 index 00000000..0793d750 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionCall.java @@ -0,0 +1,98 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'ALS Function Call'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredDefinition Referred Definition}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredNumericOperator Referred Numeric Operator}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getParams Params}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFunctionCall() + * @model + * @generated + */ +public interface ALSFunctionCall extends ALSTerm +{ + /** + * Returns the value of the 'Referred Definition' reference. + * + *

+ * If the meaning of the 'Referred Definition' reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Referred Definition' reference. + * @see #setReferredDefinition(ALSDefinition) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFunctionCall_ReferredDefinition() + * @model + * @generated + */ + ALSDefinition getReferredDefinition(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredDefinition Referred Definition}' reference. + * + * + * @param value the new value of the 'Referred Definition' reference. + * @see #getReferredDefinition() + * @generated + */ + void setReferredDefinition(ALSDefinition value); + + /** + * Returns the value of the 'Referred Numeric Operator' attribute. + * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator}. + * + *

+ * If the meaning of the 'Referred Numeric Operator' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Referred Numeric Operator' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator + * @see #setReferredNumericOperator(ALSNumericOperator) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFunctionCall_ReferredNumericOperator() + * @model + * @generated + */ + ALSNumericOperator getReferredNumericOperator(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredNumericOperator Referred Numeric Operator}' attribute. + * + * + * @param value the new value of the 'Referred Numeric Operator' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator + * @see #getReferredNumericOperator() + * @generated + */ + void setReferredNumericOperator(ALSNumericOperator value); + + /** + * Returns the value of the 'Params' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm}. + * + *

+ * If the meaning of the 'Params' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Params' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFunctionCall_Params() + * @model containment="true" + * @generated + */ + EList getParams(); + +} // ALSFunctionCall diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionDefinition.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionDefinition.java new file mode 100644 index 00000000..a6c6edd4 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSFunctionDefinition.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Function Definition'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition#getType Type}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFunctionDefinition() + * @model + * @generated + */ +public interface ALSFunctionDefinition extends ALSDefinition +{ + /** + * Returns the value of the 'Type' containment reference. + * + *

+ * If the meaning of the 'Type' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Type' containment reference. + * @see #setType(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSFunctionDefinition_Type() + * @model containment="true" + * @generated + */ + ALSTerm getType(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition#getType Type}' containment reference. + * + * + * @param value the new value of the 'Type' containment reference. + * @see #getType() + * @generated + */ + void setType(ALSTerm value); + +} // ALSFunctionDefinition diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIden.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIden.java new file mode 100644 index 00000000..9fcadeb8 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIden.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Iden'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIden() + * @model + * @generated + */ +public interface ALSIden extends ALSTerm +{ +} // ALSIden diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIff.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIff.java new file mode 100644 index 00000000..61d4d4e5 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIff.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Iff'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIff() + * @model + * @generated + */ +public interface ALSIff extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIff_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIff_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSIff diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSImpl.java new file mode 100644 index 00000000..d4501cf9 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSImpl.java @@ -0,0 +1,104 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Impl'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getRightOperand Right Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getElseOperand Else Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSImpl() + * @model + * @generated + */ +public interface ALSImpl extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSImpl_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSImpl_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + + /** + * Returns the value of the 'Else Operand' containment reference. + * + *

+ * If the meaning of the 'Else Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Else Operand' containment reference. + * @see #setElseOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSImpl_ElseOperand() + * @model containment="true" + * @generated + */ + ALSTerm getElseOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getElseOperand Else Operand}' containment reference. + * + * + * @param value the new value of the 'Else Operand' containment reference. + * @see #getElseOperand() + * @generated + */ + void setElseOperand(ALSTerm value); + +} // ALSImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInt.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInt.java new file mode 100644 index 00000000..05d7339b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInt.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Int'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSInt() + * @model + * @generated + */ +public interface ALSInt extends ALSTerm +{ +} // ALSInt diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntScope.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntScope.java new file mode 100644 index 00000000..9329e0eb --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntScope.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Int Scope'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIntScope() + * @model + * @generated + */ +public interface ALSIntScope extends ALSTypeScope +{ +} // ALSIntScope diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntersection.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntersection.java new file mode 100644 index 00000000..ab5c9270 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSIntersection.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Intersection'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIntersection() + * @model + * @generated + */ +public interface ALSIntersection extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIntersection_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSIntersection_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSIntersection diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInverseRelation.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInverseRelation.java new file mode 100644 index 00000000..9dc049dc --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSInverseRelation.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Inverse Relation'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation#getOperand Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSInverseRelation() + * @model + * @generated + */ +public interface ALSInverseRelation extends ALSTerm +{ + /** + * Returns the value of the 'Operand' containment reference. + * + *

+ * If the meaning of the 'Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Operand' containment reference. + * @see #setOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSInverseRelation_Operand() + * @model containment="true" + * @generated + */ + ALSTerm getOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation#getOperand Operand}' containment reference. + * + * + * @param value the new value of the 'Operand' containment reference. + * @see #getOperand() + * @generated + */ + void setOperand(ALSTerm value); + +} // ALSInverseRelation diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSJoin.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSJoin.java new file mode 100644 index 00000000..21a987eb --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSJoin.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Join'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSJoin() + * @model + * @generated + */ +public interface ALSJoin extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSJoin_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSJoin_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSJoin diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLeq.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLeq.java new file mode 100644 index 00000000..76a39cb5 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLeq.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Leq'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSLeq() + * @model + * @generated + */ +public interface ALSLeq extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSLeq_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSLeq_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSLeq diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLess.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLess.java new file mode 100644 index 00000000..1205108d --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSLess.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Less'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSLess() + * @model + * @generated + */ +public interface ALSLess extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSLess_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSLess_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSLess diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMeq.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMeq.java new file mode 100644 index 00000000..46c3fa76 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMeq.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Meq'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMeq() + * @model + * @generated + */ +public interface ALSMeq extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMeq_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMeq_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSMeq diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMinus.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMinus.java new file mode 100644 index 00000000..ed603243 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMinus.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Minus'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMinus() + * @model + * @generated + */ +public interface ALSMinus extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMinus_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMinus_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSMinus diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMore.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMore.java new file mode 100644 index 00000000..1cc541af --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMore.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS More'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMore() + * @model + * @generated + */ +public interface ALSMore extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMore_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMore_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSMore diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMultiplicity.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMultiplicity.java new file mode 100644 index 00000000..3daae100 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSMultiplicity.java @@ -0,0 +1,337 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'ALS Multiplicity', + * and utility methods for working with them. + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSMultiplicity() + * @model + * @generated + */ +public enum ALSMultiplicity implements Enumerator +{ + /** + * The 'All' literal object. + * + * + * @see #ALL_VALUE + * @generated + * @ordered + */ + ALL(0, "all", "all"), + + /** + * The 'No' literal object. + * + * + * @see #NO_VALUE + * @generated + * @ordered + */ + NO(1, "no", "no"), + + /** + * The 'Some' literal object. + * + * + * @see #SOME_VALUE + * @generated + * @ordered + */ + SOME(2, "some", "some"), + + /** + * The 'Lone' literal object. + * + * + * @see #LONE_VALUE + * @generated + * @ordered + */ + LONE(3, "lone", "lone"), + + /** + * The 'One' literal object. + * + * + * @see #ONE_VALUE + * @generated + * @ordered + */ + ONE(4, "one", "one"), + + /** + * The 'Set' literal object. + * + * + * @see #SET_VALUE + * @generated + * @ordered + */ + SET(5, "set", "set"); + + /** + * The 'All' literal value. + * + *

+ * If the meaning of 'All' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #ALL + * @model name="all" + * @generated + * @ordered + */ + public static final int ALL_VALUE = 0; + + /** + * The 'No' literal value. + * + *

+ * If the meaning of 'No' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #NO + * @model name="no" + * @generated + * @ordered + */ + public static final int NO_VALUE = 1; + + /** + * The 'Some' literal value. + * + *

+ * If the meaning of 'Some' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #SOME + * @model name="some" + * @generated + * @ordered + */ + public static final int SOME_VALUE = 2; + + /** + * The 'Lone' literal value. + * + *

+ * If the meaning of 'Lone' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #LONE + * @model name="lone" + * @generated + * @ordered + */ + public static final int LONE_VALUE = 3; + + /** + * The 'One' literal value. + * + *

+ * If the meaning of 'One' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #ONE + * @model name="one" + * @generated + * @ordered + */ + public static final int ONE_VALUE = 4; + + /** + * The 'Set' literal value. + * + *

+ * If the meaning of 'Set' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #SET + * @model name="set" + * @generated + * @ordered + */ + public static final int SET_VALUE = 5; + + /** + * An array of all the 'ALS Multiplicity' enumerators. + * + * + * @generated + */ + private static final ALSMultiplicity[] VALUES_ARRAY = + new ALSMultiplicity[] + { + ALL, + NO, + SOME, + LONE, + ONE, + SET, + }; + + /** + * A public read-only list of all the 'ALS Multiplicity' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'ALS Multiplicity' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static ALSMultiplicity get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + ALSMultiplicity result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the 'ALS Multiplicity' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static ALSMultiplicity getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + ALSMultiplicity result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the 'ALS Multiplicity' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static ALSMultiplicity get(int value) + { + switch (value) + { + case ALL_VALUE: return ALL; + case NO_VALUE: return NO; + case SOME_VALUE: return SOME; + case LONE_VALUE: return LONE; + case ONE_VALUE: return ONE; + case SET_VALUE: return SET; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private ALSMultiplicity(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() + { + return value; + } + + /** + * + * + * @generated + */ + public String getName() + { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //ALSMultiplicity diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNone.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNone.java new file mode 100644 index 00000000..e609ba50 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNone.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS None'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNone() + * @model + * @generated + */ +public interface ALSNone extends ALSTerm +{ +} // ALSNone diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNot.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNot.java new file mode 100644 index 00000000..702e6e99 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNot.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Not'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot#getOperand Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNot() + * @model + * @generated + */ +public interface ALSNot extends ALSTerm +{ + /** + * Returns the value of the 'Operand' containment reference. + * + *

+ * If the meaning of the 'Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Operand' containment reference. + * @see #setOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNot_Operand() + * @model containment="true" + * @generated + */ + ALSTerm getOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot#getOperand Operand}' containment reference. + * + * + * @param value the new value of the 'Operand' containment reference. + * @see #getOperand() + * @generated + */ + void setOperand(ALSTerm value); + +} // ALSNot diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNotEquals.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNotEquals.java new file mode 100644 index 00000000..d46c12ec --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNotEquals.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Not Equals'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNotEquals() + * @model + * @generated + */ +public interface ALSNotEquals extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNotEquals_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNotEquals_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSNotEquals diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumberLiteral.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumberLiteral.java new file mode 100644 index 00000000..fd9dcb4d --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumberLiteral.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Number Literal'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral#getValue Value}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNumberLiteral() + * @model + * @generated + */ +public interface ALSNumberLiteral extends ALSTerm +{ + /** + * Returns the value of the 'Value' attribute. + * + *

+ * If the meaning of the 'Value' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Value' attribute. + * @see #setValue(int) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNumberLiteral_Value() + * @model + * @generated + */ + int getValue(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see #getValue() + * @generated + */ + void setValue(int value); + +} // ALSNumberLiteral diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumericOperator.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumericOperator.java new file mode 100644 index 00000000..1383cd27 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSNumericOperator.java @@ -0,0 +1,310 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'ALS Numeric Operator', + * and utility methods for working with them. + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSNumericOperator() + * @model + * @generated + */ +public enum ALSNumericOperator implements Enumerator +{ + /** + * The 'Plus' literal object. + * + * + * @see #PLUS_VALUE + * @generated + * @ordered + */ + PLUS(0, "plus", "plus"), + + /** + * The 'Sub' literal object. + * + * + * @see #SUB_VALUE + * @generated + * @ordered + */ + SUB(1, "sub", "sub"), + + /** + * The 'Mul' literal object. + * + * + * @see #MUL_VALUE + * @generated + * @ordered + */ + MUL(2, "mul", "mul"), + + /** + * The 'Rem' literal object. + * + * + * @see #REM_VALUE + * @generated + * @ordered + */ + REM(3, "rem", "rem"), + + /** + * The 'Div' literal object. + * + * + * @see #DIV_VALUE + * @generated + * @ordered + */ + DIV(4, "div", "div"); + + /** + * The 'Plus' literal value. + * + *

+ * If the meaning of 'Plus' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #PLUS + * @model name="plus" + * @generated + * @ordered + */ + public static final int PLUS_VALUE = 0; + + /** + * The 'Sub' literal value. + * + *

+ * If the meaning of 'Sub' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #SUB + * @model name="sub" + * @generated + * @ordered + */ + public static final int SUB_VALUE = 1; + + /** + * The 'Mul' literal value. + * + *

+ * If the meaning of 'Mul' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #MUL + * @model name="mul" + * @generated + * @ordered + */ + public static final int MUL_VALUE = 2; + + /** + * The 'Rem' literal value. + * + *

+ * If the meaning of 'Rem' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #REM + * @model name="rem" + * @generated + * @ordered + */ + public static final int REM_VALUE = 3; + + /** + * The 'Div' literal value. + * + *

+ * If the meaning of 'Div' literal object isn't clear, + * there really should be more of a description here... + *

+ * + * @see #DIV + * @model name="div" + * @generated + * @ordered + */ + public static final int DIV_VALUE = 4; + + /** + * An array of all the 'ALS Numeric Operator' enumerators. + * + * + * @generated + */ + private static final ALSNumericOperator[] VALUES_ARRAY = + new ALSNumericOperator[] + { + PLUS, + SUB, + MUL, + REM, + DIV, + }; + + /** + * A public read-only list of all the 'ALS Numeric Operator' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'ALS Numeric Operator' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static ALSNumericOperator get(String literal) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + ALSNumericOperator result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) + { + return result; + } + } + return null; + } + + /** + * Returns the 'ALS Numeric Operator' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static ALSNumericOperator getByName(String name) + { + for (int i = 0; i < VALUES_ARRAY.length; ++i) + { + ALSNumericOperator result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) + { + return result; + } + } + return null; + } + + /** + * Returns the 'ALS Numeric Operator' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static ALSNumericOperator get(int value) + { + switch (value) + { + case PLUS_VALUE: return PLUS; + case SUB_VALUE: return SUB; + case MUL_VALUE: return MUL; + case REM_VALUE: return REM; + case DIV_VALUE: return DIV; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private ALSNumericOperator(int value, String name, String literal) + { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() + { + return value; + } + + /** + * + * + * @generated + */ + public String getName() + { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() + { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() + { + return literal; + } + +} //ALSNumericOperator diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOr.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOr.java new file mode 100644 index 00000000..01eab22b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOr.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Or'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSOr() + * @model + * @generated + */ +public interface ALSOr extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSOr_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSOr_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSOr diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOverride.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOverride.java new file mode 100644 index 00000000..fa8f5b56 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSOverride.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Override'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSOverride() + * @model + * @generated + */ +public interface ALSOverride extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSOverride_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSOverride_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSOverride diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSPlus.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSPlus.java new file mode 100644 index 00000000..4cbe7353 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSPlus.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Plus'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSPlus() + * @model + * @generated + */ +public interface ALSPlus extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSPlus_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSPlus_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSPlus diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSQuantifiedEx.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSQuantifiedEx.java new file mode 100644 index 00000000..9f2dd595 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSQuantifiedEx.java @@ -0,0 +1,125 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'ALS Quantified Ex'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getType Type}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#isDisj Disj}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getVariables Variables}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getExpression Expression}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSQuantifiedEx() + * @model + * @generated + */ +public interface ALSQuantifiedEx extends ALSTerm +{ + /** + * Returns the value of the 'Type' attribute. + * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity}. + * + *

+ * If the meaning of the 'Type' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Type' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #setType(ALSMultiplicity) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSQuantifiedEx_Type() + * @model + * @generated + */ + ALSMultiplicity getType(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getType Type}' attribute. + * + * + * @param value the new value of the 'Type' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #getType() + * @generated + */ + void setType(ALSMultiplicity value); + + /** + * Returns the value of the 'Disj' attribute. + * + *

+ * If the meaning of the 'Disj' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Disj' attribute. + * @see #setDisj(boolean) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSQuantifiedEx_Disj() + * @model + * @generated + */ + boolean isDisj(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#isDisj Disj}' attribute. + * + * + * @param value the new value of the 'Disj' attribute. + * @see #isDisj() + * @generated + */ + void setDisj(boolean value); + + /** + * Returns the value of the 'Variables' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration}. + * + *

+ * If the meaning of the 'Variables' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Variables' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSQuantifiedEx_Variables() + * @model containment="true" + * @generated + */ + EList getVariables(); + + /** + * Returns the value of the 'Expression' containment reference. + * + *

+ * If the meaning of the 'Expression' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Expression' containment reference. + * @see #setExpression(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSQuantifiedEx_Expression() + * @model containment="true" + * @generated + */ + ALSTerm getExpression(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getExpression Expression}' containment reference. + * + * + * @param value the new value of the 'Expression' containment reference. + * @see #getExpression() + * @generated + */ + void setExpression(ALSTerm value); + +} // ALSQuantifiedEx diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionLeft.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionLeft.java new file mode 100644 index 00000000..8278a54d --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionLeft.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Range Restriction Left'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getFilter Filter}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getRelation Relation}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRangeRestrictionLeft() + * @model + * @generated + */ +public interface ALSRangeRestrictionLeft extends ALSTerm +{ + /** + * Returns the value of the 'Filter' containment reference. + * + *

+ * If the meaning of the 'Filter' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Filter' containment reference. + * @see #setFilter(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRangeRestrictionLeft_Filter() + * @model containment="true" + * @generated + */ + ALSTerm getFilter(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getFilter Filter}' containment reference. + * + * + * @param value the new value of the 'Filter' containment reference. + * @see #getFilter() + * @generated + */ + void setFilter(ALSTerm value); + + /** + * Returns the value of the 'Relation' containment reference. + * + *

+ * If the meaning of the 'Relation' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Relation' containment reference. + * @see #setRelation(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRangeRestrictionLeft_Relation() + * @model containment="true" + * @generated + */ + ALSTerm getRelation(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getRelation Relation}' containment reference. + * + * + * @param value the new value of the 'Relation' containment reference. + * @see #getRelation() + * @generated + */ + void setRelation(ALSTerm value); + +} // ALSRangeRestrictionLeft diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionRight.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionRight.java new file mode 100644 index 00000000..c5aff17e --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRangeRestrictionRight.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Range Restriction Right'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getRelation Relation}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getFilter Filter}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRangeRestrictionRight() + * @model + * @generated + */ +public interface ALSRangeRestrictionRight extends ALSTerm +{ + /** + * Returns the value of the 'Relation' containment reference. + * + *

+ * If the meaning of the 'Relation' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Relation' containment reference. + * @see #setRelation(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRangeRestrictionRight_Relation() + * @model containment="true" + * @generated + */ + ALSTerm getRelation(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getRelation Relation}' containment reference. + * + * + * @param value the new value of the 'Relation' containment reference. + * @see #getRelation() + * @generated + */ + void setRelation(ALSTerm value); + + /** + * Returns the value of the 'Filter' containment reference. + * + *

+ * If the meaning of the 'Filter' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Filter' containment reference. + * @see #setFilter(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRangeRestrictionRight_Filter() + * @model containment="true" + * @generated + */ + ALSTerm getFilter(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getFilter Filter}' containment reference. + * + * + * @param value the new value of the 'Filter' containment reference. + * @see #getFilter() + * @generated + */ + void setFilter(ALSTerm value); + +} // ALSRangeRestrictionRight diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReference.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReference.java new file mode 100644 index 00000000..1a2c0bd9 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReference.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Reference'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference#getReferred Referred}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSReference() + * @model + * @generated + */ +public interface ALSReference extends ALSTerm +{ + /** + * Returns the value of the 'Referred' reference. + * + *

+ * If the meaning of the 'Referred' reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Referred' reference. + * @see #setReferred(ALSRelationDeclaration) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSReference_Referred() + * @model + * @generated + */ + ALSRelationDeclaration getReferred(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference#getReferred Referred}' reference. + * + * + * @param value the new value of the 'Referred' reference. + * @see #getReferred() + * @generated + */ + void setReferred(ALSRelationDeclaration value); + +} // ALSReference diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReflectiveTransitiveClosure.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReflectiveTransitiveClosure.java new file mode 100644 index 00000000..3667b563 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSReflectiveTransitiveClosure.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Reflective Transitive Closure'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure#getOperand Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSReflectiveTransitiveClosure() + * @model + * @generated + */ +public interface ALSReflectiveTransitiveClosure extends ALSTerm +{ + /** + * Returns the value of the 'Operand' containment reference. + * + *

+ * If the meaning of the 'Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Operand' containment reference. + * @see #setOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSReflectiveTransitiveClosure_Operand() + * @model containment="true" + * @generated + */ + ALSTerm getOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure#getOperand Operand}' containment reference. + * + * + * @param value the new value of the 'Operand' containment reference. + * @see #getOperand() + * @generated + */ + void setOperand(ALSTerm value); + +} // ALSReflectiveTransitiveClosure diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDeclaration.java new file mode 100644 index 00000000..4c91f5ea --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDeclaration.java @@ -0,0 +1,51 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Relation Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration#getName Name}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRelationDeclaration() + * @model + * @generated + */ +public interface ALSRelationDeclaration extends EObject +{ + /** + * Returns the value of the 'Name' attribute. + * + *

+ * If the meaning of the 'Name' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRelationDeclaration_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // ALSRelationDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDefinition.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDefinition.java new file mode 100644 index 00000000..4c6b6d72 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRelationDefinition.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Relation Definition'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRelationDefinition() + * @model + * @generated + */ +public interface ALSRelationDefinition extends ALSDefinition +{ +} // ALSRelationDefinition diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRunCommand.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRunCommand.java new file mode 100644 index 00000000..b01f9eb6 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSRunCommand.java @@ -0,0 +1,43 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Run Command'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand#getTypeScopes Type Scopes}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRunCommand() + * @model + * @generated + */ +public interface ALSRunCommand extends EObject +{ + /** + * Returns the value of the 'Type Scopes' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope}. + * + *

+ * If the meaning of the 'Type Scopes' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Type Scopes' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSRunCommand_TypeScopes() + * @model containment="true" + * @generated + */ + EList getTypeScopes(); + +} // ALSRunCommand diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSigScope.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSigScope.java new file mode 100644 index 00000000..a67986ee --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSigScope.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Sig Scope'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#isExactly Exactly}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#getType Type}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSigScope() + * @model + * @generated + */ +public interface ALSSigScope extends ALSTypeScope +{ + /** + * Returns the value of the 'Exactly' attribute. + * + *

+ * If the meaning of the 'Exactly' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Exactly' attribute. + * @see #setExactly(boolean) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSigScope_Exactly() + * @model + * @generated + */ + boolean isExactly(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#isExactly Exactly}' attribute. + * + * + * @param value the new value of the 'Exactly' attribute. + * @see #isExactly() + * @generated + */ + void setExactly(boolean value); + + /** + * Returns the value of the 'Type' reference. + * + *

+ * If the meaning of the 'Type' reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Type' reference. + * @see #setType(ALSSignatureDeclaration) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSigScope_Type() + * @model + * @generated + */ + ALSSignatureDeclaration getType(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#getType Type}' reference. + * + * + * @param value the new value of the 'Type' reference. + * @see #getType() + * @generated + */ + void setType(ALSSignatureDeclaration value); + +} // ALSSigScope diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureBody.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureBody.java new file mode 100644 index 00000000..794f4420 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureBody.java @@ -0,0 +1,161 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Signature Body'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getMultiplicity Multiplicity}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#isAbstract Abstract}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getDeclarations Declarations}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSupertype Supertype}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSuperset Superset}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getFields Fields}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody() + * @model + * @generated + */ +public interface ALSSignatureBody extends EObject +{ + /** + * Returns the value of the 'Multiplicity' attribute. + * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity}. + * + *

+ * If the meaning of the 'Multiplicity' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Multiplicity' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #setMultiplicity(ALSMultiplicity) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody_Multiplicity() + * @model + * @generated + */ + ALSMultiplicity getMultiplicity(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getMultiplicity Multiplicity}' attribute. + * + * + * @param value the new value of the 'Multiplicity' attribute. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see #getMultiplicity() + * @generated + */ + void setMultiplicity(ALSMultiplicity value); + + /** + * Returns the value of the 'Abstract' attribute. + * + *

+ * If the meaning of the 'Abstract' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Abstract' attribute. + * @see #setAbstract(boolean) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody_Abstract() + * @model + * @generated + */ + boolean isAbstract(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#isAbstract Abstract}' attribute. + * + * + * @param value the new value of the 'Abstract' attribute. + * @see #isAbstract() + * @generated + */ + void setAbstract(boolean value); + + /** + * Returns the value of the 'Declarations' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration}. + * + *

+ * If the meaning of the 'Declarations' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Declarations' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody_Declarations() + * @model containment="true" + * @generated + */ + EList getDeclarations(); + + /** + * Returns the value of the 'Supertype' reference. + * + *

+ * If the meaning of the 'Supertype' reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Supertype' reference. + * @see #setSupertype(ALSSignatureDeclaration) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody_Supertype() + * @model + * @generated + */ + ALSSignatureDeclaration getSupertype(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSupertype Supertype}' reference. + * + * + * @param value the new value of the 'Supertype' reference. + * @see #getSupertype() + * @generated + */ + void setSupertype(ALSSignatureDeclaration value); + + /** + * Returns the value of the 'Superset' reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration}. + * + *

+ * If the meaning of the 'Superset' reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Superset' reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody_Superset() + * @model + * @generated + */ + EList getSuperset(); + + /** + * Returns the value of the 'Fields' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration}. + * + *

+ * If the meaning of the 'Fields' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Fields' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureBody_Fields() + * @model containment="true" + * @generated + */ + EList getFields(); + +} // ALSSignatureBody diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureDeclaration.java new file mode 100644 index 00000000..90113d42 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSignatureDeclaration.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Signature Declaration'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSignatureDeclaration() + * @model + * @generated + */ +public interface ALSSignatureDeclaration extends ALSTypeDeclaration +{ +} // ALSSignatureDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSubset.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSubset.java new file mode 100644 index 00000000..e99cb9ec --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSubset.java @@ -0,0 +1,77 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Subset'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getRightOperand Right Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSubset() + * @model + * @generated + */ +public interface ALSSubset extends ALSTerm +{ + /** + * Returns the value of the 'Left Operand' containment reference. + * + *

+ * If the meaning of the 'Left Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Left Operand' containment reference. + * @see #setLeftOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSubset_LeftOperand() + * @model containment="true" + * @generated + */ + ALSTerm getLeftOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getLeftOperand Left Operand}' containment reference. + * + * + * @param value the new value of the 'Left Operand' containment reference. + * @see #getLeftOperand() + * @generated + */ + void setLeftOperand(ALSTerm value); + + /** + * Returns the value of the 'Right Operand' containment reference. + * + *

+ * If the meaning of the 'Right Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Right Operand' containment reference. + * @see #setRightOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSubset_RightOperand() + * @model containment="true" + * @generated + */ + ALSTerm getRightOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getRightOperand Right Operand}' containment reference. + * + * + * @param value the new value of the 'Right Operand' containment reference. + * @see #getRightOperand() + * @generated + */ + void setRightOperand(ALSTerm value); + +} // ALSSubset diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSum.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSum.java new file mode 100644 index 00000000..58a43ddd --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSSum.java @@ -0,0 +1,68 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'ALS Sum'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getVariables Variables}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getExpression Expression}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSum() + * @model + * @generated + */ +public interface ALSSum extends ALSTerm +{ + /** + * Returns the value of the 'Variables' containment reference list. + * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration}. + * + *

+ * If the meaning of the 'Variables' containment reference list isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Variables' containment reference list. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSum_Variables() + * @model containment="true" + * @generated + */ + EList getVariables(); + + /** + * Returns the value of the 'Expression' containment reference. + * + *

+ * If the meaning of the 'Expression' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Expression' containment reference. + * @see #setExpression(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSSum_Expression() + * @model containment="true" + * @generated + */ + ALSTerm getExpression(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getExpression Expression}' containment reference. + * + * + * @param value the new value of the 'Expression' containment reference. + * @see #getExpression() + * @generated + */ + void setExpression(ALSTerm value); + +} // ALSSum diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTerm.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTerm.java new file mode 100644 index 00000000..d9fb0296 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTerm.java @@ -0,0 +1,19 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Term'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSTerm() + * @model + * @generated + */ +public interface ALSTerm extends EObject +{ +} // ALSTerm diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeDeclaration.java new file mode 100644 index 00000000..4f29b084 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeDeclaration.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Type Declaration'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSTypeDeclaration() + * @model + * @generated + */ +public interface ALSTypeDeclaration extends ALSRelationDeclaration +{ +} // ALSTypeDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeScope.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeScope.java new file mode 100644 index 00000000..f66dcc9b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSTypeScope.java @@ -0,0 +1,51 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'ALS Type Scope'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope#getNumber Number}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSTypeScope() + * @model + * @generated + */ +public interface ALSTypeScope extends EObject +{ + /** + * Returns the value of the 'Number' attribute. + * + *

+ * If the meaning of the 'Number' attribute isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Number' attribute. + * @see #setNumber(int) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSTypeScope_Number() + * @model + * @generated + */ + int getNumber(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope#getNumber Number}' attribute. + * + * + * @param value the new value of the 'Number' attribute. + * @see #getNumber() + * @generated + */ + void setNumber(int value); + +} // ALSTypeScope diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUnaryMinus.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUnaryMinus.java new file mode 100644 index 00000000..1f19c532 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUnaryMinus.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Unary Minus'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus#getOperand Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSUnaryMinus() + * @model + * @generated + */ +public interface ALSUnaryMinus extends ALSTerm +{ + /** + * Returns the value of the 'Operand' containment reference. + * + *

+ * If the meaning of the 'Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Operand' containment reference. + * @see #setOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSUnaryMinus_Operand() + * @model containment="true" + * @generated + */ + ALSTerm getOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus#getOperand Operand}' containment reference. + * + * + * @param value the new value of the 'Operand' containment reference. + * @see #getOperand() + * @generated + */ + void setOperand(ALSTerm value); + +} // ALSUnaryMinus diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUniv.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUniv.java new file mode 100644 index 00000000..97f10946 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSUniv.java @@ -0,0 +1,18 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Univ'. + * + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSUniv() + * @model + * @generated + */ +public interface ALSUniv extends ALSTerm +{ +} // ALSUniv diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSVariableDeclaration.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSVariableDeclaration.java new file mode 100644 index 00000000..912c1533 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/ALSVariableDeclaration.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'ALS Variable Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration#getRange Range}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSVariableDeclaration() + * @model + * @generated + */ +public interface ALSVariableDeclaration extends ALSRelationDeclaration +{ + /** + * Returns the value of the 'Range' containment reference. + * + *

+ * If the meaning of the 'Range' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Range' containment reference. + * @see #setRange(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getALSVariableDeclaration_Range() + * @model containment="true" + * @generated + */ + ALSTerm getRange(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration#getRange Range}' containment reference. + * + * + * @param value the new value of the 'Range' containment reference. + * @see #getRange() + * @generated + */ + void setRange(ALSTerm value); + +} // ALSVariableDeclaration diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlSTransitiveClosure.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlSTransitiveClosure.java new file mode 100644 index 00000000..accb9ef8 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlSTransitiveClosure.java @@ -0,0 +1,50 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + + +/** + * + * A representation of the model object 'Al STransitive Closure'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure#getOperand Operand}
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getAlSTransitiveClosure() + * @model + * @generated + */ +public interface AlSTransitiveClosure extends ALSTerm +{ + /** + * Returns the value of the 'Operand' containment reference. + * + *

+ * If the meaning of the 'Operand' containment reference isn't clear, + * there really should be more of a description here... + *

+ * + * @return the value of the 'Operand' containment reference. + * @see #setOperand(ALSTerm) + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage#getAlSTransitiveClosure_Operand() + * @model containment="true" + * @generated + */ + ALSTerm getOperand(); + + /** + * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure#getOperand Operand}' containment reference. + * + * + * @param value the new value of the 'Operand' containment reference. + * @see #getOperand() + * @generated + */ + void setOperand(ALSTerm value); + +} // AlSTransitiveClosure diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguageFactory.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguageFactory.java new file mode 100644 index 00000000..06919ba8 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguageFactory.java @@ -0,0 +1,502 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.ecore.EFactory; + +/** + * + * The Factory for the model. + * It provides a create method for each non-abstract class of the model. + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage + * @generated + */ +public interface AlloyLanguageFactory extends EFactory +{ + /** + * The singleton instance of the factory. + * + * + * @generated + */ + AlloyLanguageFactory eINSTANCE = hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguageFactoryImpl.init(); + + /** + * Returns a new object of class 'ALS Document'. + * + * + * @return a new object of class 'ALS Document'. + * @generated + */ + ALSDocument createALSDocument(); + + /** + * Returns a new object of class 'ALS Relation Declaration'. + * + * + * @return a new object of class 'ALS Relation Declaration'. + * @generated + */ + ALSRelationDeclaration createALSRelationDeclaration(); + + /** + * Returns a new object of class 'ALS Type Declaration'. + * + * + * @return a new object of class 'ALS Type Declaration'. + * @generated + */ + ALSTypeDeclaration createALSTypeDeclaration(); + + /** + * Returns a new object of class 'ALS Enum Declaration'. + * + * + * @return a new object of class 'ALS Enum Declaration'. + * @generated + */ + ALSEnumDeclaration createALSEnumDeclaration(); + + /** + * Returns a new object of class 'ALS Enum Literal'. + * + * + * @return a new object of class 'ALS Enum Literal'. + * @generated + */ + ALSEnumLiteral createALSEnumLiteral(); + + /** + * Returns a new object of class 'ALS Signature Declaration'. + * + * + * @return a new object of class 'ALS Signature Declaration'. + * @generated + */ + ALSSignatureDeclaration createALSSignatureDeclaration(); + + /** + * Returns a new object of class 'ALS Signature Body'. + * + * + * @return a new object of class 'ALS Signature Body'. + * @generated + */ + ALSSignatureBody createALSSignatureBody(); + + /** + * Returns a new object of class 'ALS Field Declaration'. + * + * + * @return a new object of class 'ALS Field Declaration'. + * @generated + */ + ALSFieldDeclaration createALSFieldDeclaration(); + + /** + * Returns a new object of class 'ALS Definition'. + * + * + * @return a new object of class 'ALS Definition'. + * @generated + */ + ALSDefinition createALSDefinition(); + + /** + * Returns a new object of class 'ALS Function Definition'. + * + * + * @return a new object of class 'ALS Function Definition'. + * @generated + */ + ALSFunctionDefinition createALSFunctionDefinition(); + + /** + * Returns a new object of class 'ALS Relation Definition'. + * + * + * @return a new object of class 'ALS Relation Definition'. + * @generated + */ + ALSRelationDefinition createALSRelationDefinition(); + + /** + * Returns a new object of class 'ALS Fact Declaration'. + * + * + * @return a new object of class 'ALS Fact Declaration'. + * @generated + */ + ALSFactDeclaration createALSFactDeclaration(); + + /** + * Returns a new object of class 'ALS Term'. + * + * + * @return a new object of class 'ALS Term'. + * @generated + */ + ALSTerm createALSTerm(); + + /** + * Returns a new object of class 'ALS Variable Declaration'. + * + * + * @return a new object of class 'ALS Variable Declaration'. + * @generated + */ + ALSVariableDeclaration createALSVariableDeclaration(); + + /** + * Returns a new object of class 'ALS Run Command'. + * + * + * @return a new object of class 'ALS Run Command'. + * @generated + */ + ALSRunCommand createALSRunCommand(); + + /** + * Returns a new object of class 'ALS Type Scope'. + * + * + * @return a new object of class 'ALS Type Scope'. + * @generated + */ + ALSTypeScope createALSTypeScope(); + + /** + * Returns a new object of class 'ALS Sig Scope'. + * + * + * @return a new object of class 'ALS Sig Scope'. + * @generated + */ + ALSSigScope createALSSigScope(); + + /** + * Returns a new object of class 'ALS Int Scope'. + * + * + * @return a new object of class 'ALS Int Scope'. + * @generated + */ + ALSIntScope createALSIntScope(); + + /** + * Returns a new object of class 'ALS Quantified Ex'. + * + * + * @return a new object of class 'ALS Quantified Ex'. + * @generated + */ + ALSQuantifiedEx createALSQuantifiedEx(); + + /** + * Returns a new object of class 'ALS Or'. + * + * + * @return a new object of class 'ALS Or'. + * @generated + */ + ALSOr createALSOr(); + + /** + * Returns a new object of class 'ALS Iff'. + * + * + * @return a new object of class 'ALS Iff'. + * @generated + */ + ALSIff createALSIff(); + + /** + * Returns a new object of class 'ALS Impl'. + * + * + * @return a new object of class 'ALS Impl'. + * @generated + */ + ALSImpl createALSImpl(); + + /** + * Returns a new object of class 'ALS And'. + * + * + * @return a new object of class 'ALS And'. + * @generated + */ + ALSAnd createALSAnd(); + + /** + * Returns a new object of class 'ALS Equals'. + * + * + * @return a new object of class 'ALS Equals'. + * @generated + */ + ALSEquals createALSEquals(); + + /** + * Returns a new object of class 'ALS Not Equals'. + * + * + * @return a new object of class 'ALS Not Equals'. + * @generated + */ + ALSNotEquals createALSNotEquals(); + + /** + * Returns a new object of class 'ALS Subset'. + * + * + * @return a new object of class 'ALS Subset'. + * @generated + */ + ALSSubset createALSSubset(); + + /** + * Returns a new object of class 'ALS Less'. + * + * + * @return a new object of class 'ALS Less'. + * @generated + */ + ALSLess createALSLess(); + + /** + * Returns a new object of class 'ALS Leq'. + * + * + * @return a new object of class 'ALS Leq'. + * @generated + */ + ALSLeq createALSLeq(); + + /** + * Returns a new object of class 'ALS More'. + * + * + * @return a new object of class 'ALS More'. + * @generated + */ + ALSMore createALSMore(); + + /** + * Returns a new object of class 'ALS Meq'. + * + * + * @return a new object of class 'ALS Meq'. + * @generated + */ + ALSMeq createALSMeq(); + + /** + * Returns a new object of class 'ALS Override'. + * + * + * @return a new object of class 'ALS Override'. + * @generated + */ + ALSOverride createALSOverride(); + + /** + * Returns a new object of class 'ALS Range Restriction Right'. + * + * + * @return a new object of class 'ALS Range Restriction Right'. + * @generated + */ + ALSRangeRestrictionRight createALSRangeRestrictionRight(); + + /** + * Returns a new object of class 'ALS Range Restriction Left'. + * + * + * @return a new object of class 'ALS Range Restriction Left'. + * @generated + */ + ALSRangeRestrictionLeft createALSRangeRestrictionLeft(); + + /** + * Returns a new object of class 'ALS Join'. + * + * + * @return a new object of class 'ALS Join'. + * @generated + */ + ALSJoin createALSJoin(); + + /** + * Returns a new object of class 'ALS Minus'. + * + * + * @return a new object of class 'ALS Minus'. + * @generated + */ + ALSMinus createALSMinus(); + + /** + * Returns a new object of class 'ALS Plus'. + * + * + * @return a new object of class 'ALS Plus'. + * @generated + */ + ALSPlus createALSPlus(); + + /** + * Returns a new object of class 'ALS Intersection'. + * + * + * @return a new object of class 'ALS Intersection'. + * @generated + */ + ALSIntersection createALSIntersection(); + + /** + * Returns a new object of class 'ALS Direct Product'. + * + * + * @return a new object of class 'ALS Direct Product'. + * @generated + */ + ALSDirectProduct createALSDirectProduct(); + + /** + * Returns a new object of class 'ALS Not'. + * + * + * @return a new object of class 'ALS Not'. + * @generated + */ + ALSNot createALSNot(); + + /** + * Returns a new object of class 'ALS Inverse Relation'. + * + * + * @return a new object of class 'ALS Inverse Relation'. + * @generated + */ + ALSInverseRelation createALSInverseRelation(); + + /** + * Returns a new object of class 'Al STransitive Closure'. + * + * + * @return a new object of class 'Al STransitive Closure'. + * @generated + */ + AlSTransitiveClosure createAlSTransitiveClosure(); + + /** + * Returns a new object of class 'ALS Reflective Transitive Closure'. + * + * + * @return a new object of class 'ALS Reflective Transitive Closure'. + * @generated + */ + ALSReflectiveTransitiveClosure createALSReflectiveTransitiveClosure(); + + /** + * Returns a new object of class 'ALS Cardinality'. + * + * + * @return a new object of class 'ALS Cardinality'. + * @generated + */ + ALSCardinality createALSCardinality(); + + /** + * Returns a new object of class 'ALS Unary Minus'. + * + * + * @return a new object of class 'ALS Unary Minus'. + * @generated + */ + ALSUnaryMinus createALSUnaryMinus(); + + /** + * Returns a new object of class 'ALS Sum'. + * + * + * @return a new object of class 'ALS Sum'. + * @generated + */ + ALSSum createALSSum(); + + /** + * Returns a new object of class 'ALS Function Call'. + * + * + * @return a new object of class 'ALS Function Call'. + * @generated + */ + ALSFunctionCall createALSFunctionCall(); + + /** + * Returns a new object of class 'ALS None'. + * + * + * @return a new object of class 'ALS None'. + * @generated + */ + ALSNone createALSNone(); + + /** + * Returns a new object of class 'ALS Iden'. + * + * + * @return a new object of class 'ALS Iden'. + * @generated + */ + ALSIden createALSIden(); + + /** + * Returns a new object of class 'ALS Univ'. + * + * + * @return a new object of class 'ALS Univ'. + * @generated + */ + ALSUniv createALSUniv(); + + /** + * Returns a new object of class 'ALS Int'. + * + * + * @return a new object of class 'ALS Int'. + * @generated + */ + ALSInt createALSInt(); + + /** + * Returns a new object of class 'ALS Reference'. + * + * + * @return a new object of class 'ALS Reference'. + * @generated + */ + ALSReference createALSReference(); + + /** + * Returns a new object of class 'ALS Number Literal'. + * + * + * @return a new object of class 'ALS Number Literal'. + * @generated + */ + ALSNumberLiteral createALSNumberLiteral(); + + /** + * Returns the package supported by this factory. + * + * + * @return the package supported by this factory. + * @generated + */ + AlloyLanguagePackage getAlloyLanguagePackage(); + +} //AlloyLanguageFactory diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguagePackage.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguagePackage.java new file mode 100644 index 00000000..50e3d607 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/AlloyLanguagePackage.java @@ -0,0 +1,4680 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * + * The Package for the model. + * It contains accessors for the meta objects to represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguageFactory + * @model kind="package" + * @generated + */ +public interface AlloyLanguagePackage extends EPackage +{ + /** + * The package name. + * + * + * @generated + */ + String eNAME = "alloyLanguage"; + + /** + * The package namespace URI. + * + * + * @generated + */ + String eNS_URI = "http://www.bme.hu/mit/inf/dslreasoner/AlloyLanguage"; + + /** + * The package namespace name. + * + * + * @generated + */ + String eNS_PREFIX = "alloyLanguage"; + + /** + * The singleton instance of the package. + * + * + * @generated + */ + AlloyLanguagePackage eINSTANCE = hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl.init(); + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl ALS Document}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSDocument() + * @generated + */ + int ALS_DOCUMENT = 0; + + /** + * The feature id for the 'Enum Declarations' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT__ENUM_DECLARATIONS = 0; + + /** + * The feature id for the 'Signature Bodies' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT__SIGNATURE_BODIES = 1; + + /** + * The feature id for the 'Function Definitions' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT__FUNCTION_DEFINITIONS = 2; + + /** + * The feature id for the 'Relation Definitions' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT__RELATION_DEFINITIONS = 3; + + /** + * The feature id for the 'Fact Declarations' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT__FACT_DECLARATIONS = 4; + + /** + * The feature id for the 'Run Command' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT__RUN_COMMAND = 5; + + /** + * The number of structural features of the 'ALS Document' class. + * + * + * @generated + * @ordered + */ + int ALS_DOCUMENT_FEATURE_COUNT = 6; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDeclarationImpl ALS Relation Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRelationDeclaration() + * @generated + */ + int ALS_RELATION_DECLARATION = 1; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_RELATION_DECLARATION__NAME = 0; + + /** + * The number of structural features of the 'ALS Relation Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_RELATION_DECLARATION_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeDeclarationImpl ALS Type Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSTypeDeclaration() + * @generated + */ + int ALS_TYPE_DECLARATION = 2; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_TYPE_DECLARATION__NAME = ALS_RELATION_DECLARATION__NAME; + + /** + * The number of structural features of the 'ALS Type Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_TYPE_DECLARATION_FEATURE_COUNT = ALS_RELATION_DECLARATION_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumDeclarationImpl ALS Enum Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSEnumDeclaration() + * @generated + */ + int ALS_ENUM_DECLARATION = 3; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_ENUM_DECLARATION__NAME = ALS_TYPE_DECLARATION__NAME; + + /** + * The feature id for the 'Literal' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_ENUM_DECLARATION__LITERAL = ALS_TYPE_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Enum Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_ENUM_DECLARATION_FEATURE_COUNT = ALS_TYPE_DECLARATION_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumLiteralImpl ALS Enum Literal}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumLiteralImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSEnumLiteral() + * @generated + */ + int ALS_ENUM_LITERAL = 4; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_ENUM_LITERAL__NAME = ALS_RELATION_DECLARATION__NAME; + + /** + * The number of structural features of the 'ALS Enum Literal' class. + * + * + * @generated + * @ordered + */ + int ALS_ENUM_LITERAL_FEATURE_COUNT = ALS_RELATION_DECLARATION_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureDeclarationImpl ALS Signature Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSignatureDeclaration() + * @generated + */ + int ALS_SIGNATURE_DECLARATION = 5; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_DECLARATION__NAME = ALS_TYPE_DECLARATION__NAME; + + /** + * The number of structural features of the 'ALS Signature Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_DECLARATION_FEATURE_COUNT = ALS_TYPE_DECLARATION_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl ALS Signature Body}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSignatureBody() + * @generated + */ + int ALS_SIGNATURE_BODY = 6; + + /** + * The feature id for the 'Multiplicity' attribute. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY__MULTIPLICITY = 0; + + /** + * The feature id for the 'Abstract' attribute. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY__ABSTRACT = 1; + + /** + * The feature id for the 'Declarations' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY__DECLARATIONS = 2; + + /** + * The feature id for the 'Supertype' reference. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY__SUPERTYPE = 3; + + /** + * The feature id for the 'Superset' reference list. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY__SUPERSET = 4; + + /** + * The feature id for the 'Fields' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY__FIELDS = 5; + + /** + * The number of structural features of the 'ALS Signature Body' class. + * + * + * @generated + * @ordered + */ + int ALS_SIGNATURE_BODY_FEATURE_COUNT = 6; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFieldDeclarationImpl ALS Field Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFieldDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFieldDeclaration() + * @generated + */ + int ALS_FIELD_DECLARATION = 7; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_FIELD_DECLARATION__NAME = ALS_RELATION_DECLARATION__NAME; + + /** + * The feature id for the 'Multiplicity' attribute. + * + * + * @generated + * @ordered + */ + int ALS_FIELD_DECLARATION__MULTIPLICITY = ALS_RELATION_DECLARATION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Type' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_FIELD_DECLARATION__TYPE = ALS_RELATION_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Field Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_FIELD_DECLARATION_FEATURE_COUNT = ALS_RELATION_DECLARATION_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl ALS Definition}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSDefinition() + * @generated + */ + int ALS_DEFINITION = 8; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_DEFINITION__NAME = 0; + + /** + * The feature id for the 'Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_DEFINITION__VARIABLES = 1; + + /** + * The feature id for the 'Value' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_DEFINITION__VALUE = 2; + + /** + * The number of structural features of the 'ALS Definition' class. + * + * + * @generated + * @ordered + */ + int ALS_DEFINITION_FEATURE_COUNT = 3; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionDefinitionImpl ALS Function Definition}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionDefinitionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFunctionDefinition() + * @generated + */ + int ALS_FUNCTION_DEFINITION = 9; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_DEFINITION__NAME = ALS_DEFINITION__NAME; + + /** + * The feature id for the 'Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_DEFINITION__VARIABLES = ALS_DEFINITION__VARIABLES; + + /** + * The feature id for the 'Value' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_DEFINITION__VALUE = ALS_DEFINITION__VALUE; + + /** + * The feature id for the 'Type' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_DEFINITION__TYPE = ALS_DEFINITION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Function Definition' class. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_DEFINITION_FEATURE_COUNT = ALS_DEFINITION_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDefinitionImpl ALS Relation Definition}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDefinitionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRelationDefinition() + * @generated + */ + int ALS_RELATION_DEFINITION = 10; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_RELATION_DEFINITION__NAME = ALS_DEFINITION__NAME; + + /** + * The feature id for the 'Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_RELATION_DEFINITION__VARIABLES = ALS_DEFINITION__VARIABLES; + + /** + * The feature id for the 'Value' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_RELATION_DEFINITION__VALUE = ALS_DEFINITION__VALUE; + + /** + * The number of structural features of the 'ALS Relation Definition' class. + * + * + * @generated + * @ordered + */ + int ALS_RELATION_DEFINITION_FEATURE_COUNT = ALS_DEFINITION_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFactDeclarationImpl ALS Fact Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFactDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFactDeclaration() + * @generated + */ + int ALS_FACT_DECLARATION = 11; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_FACT_DECLARATION__NAME = 0; + + /** + * The feature id for the 'Term' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_FACT_DECLARATION__TERM = 1; + + /** + * The number of structural features of the 'ALS Fact Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_FACT_DECLARATION_FEATURE_COUNT = 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTermImpl ALS Term}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTermImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSTerm() + * @generated + */ + int ALS_TERM = 12; + + /** + * The number of structural features of the 'ALS Term' class. + * + * + * @generated + * @ordered + */ + int ALS_TERM_FEATURE_COUNT = 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSVariableDeclarationImpl ALS Variable Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSVariableDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSVariableDeclaration() + * @generated + */ + int ALS_VARIABLE_DECLARATION = 13; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ALS_VARIABLE_DECLARATION__NAME = ALS_RELATION_DECLARATION__NAME; + + /** + * The feature id for the 'Range' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_VARIABLE_DECLARATION__RANGE = ALS_RELATION_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Variable Declaration' class. + * + * + * @generated + * @ordered + */ + int ALS_VARIABLE_DECLARATION_FEATURE_COUNT = ALS_RELATION_DECLARATION_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRunCommandImpl ALS Run Command}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRunCommandImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRunCommand() + * @generated + */ + int ALS_RUN_COMMAND = 14; + + /** + * The feature id for the 'Type Scopes' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_RUN_COMMAND__TYPE_SCOPES = 0; + + /** + * The number of structural features of the 'ALS Run Command' class. + * + * + * @generated + * @ordered + */ + int ALS_RUN_COMMAND_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeScopeImpl ALS Type Scope}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeScopeImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSTypeScope() + * @generated + */ + int ALS_TYPE_SCOPE = 15; + + /** + * The feature id for the 'Number' attribute. + * + * + * @generated + * @ordered + */ + int ALS_TYPE_SCOPE__NUMBER = 0; + + /** + * The number of structural features of the 'ALS Type Scope' class. + * + * + * @generated + * @ordered + */ + int ALS_TYPE_SCOPE_FEATURE_COUNT = 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSigScopeImpl ALS Sig Scope}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSigScopeImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSigScope() + * @generated + */ + int ALS_SIG_SCOPE = 16; + + /** + * The feature id for the 'Number' attribute. + * + * + * @generated + * @ordered + */ + int ALS_SIG_SCOPE__NUMBER = ALS_TYPE_SCOPE__NUMBER; + + /** + * The feature id for the 'Exactly' attribute. + * + * + * @generated + * @ordered + */ + int ALS_SIG_SCOPE__EXACTLY = ALS_TYPE_SCOPE_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int ALS_SIG_SCOPE__TYPE = ALS_TYPE_SCOPE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Sig Scope' class. + * + * + * @generated + * @ordered + */ + int ALS_SIG_SCOPE_FEATURE_COUNT = ALS_TYPE_SCOPE_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntScopeImpl ALS Int Scope}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntScopeImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIntScope() + * @generated + */ + int ALS_INT_SCOPE = 17; + + /** + * The feature id for the 'Number' attribute. + * + * + * @generated + * @ordered + */ + int ALS_INT_SCOPE__NUMBER = ALS_TYPE_SCOPE__NUMBER; + + /** + * The number of structural features of the 'ALS Int Scope' class. + * + * + * @generated + * @ordered + */ + int ALS_INT_SCOPE_FEATURE_COUNT = ALS_TYPE_SCOPE_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl ALS Quantified Ex}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSQuantifiedEx() + * @generated + */ + int ALS_QUANTIFIED_EX = 18; + + /** + * The feature id for the 'Type' attribute. + * + * + * @generated + * @ordered + */ + int ALS_QUANTIFIED_EX__TYPE = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Disj' attribute. + * + * + * @generated + * @ordered + */ + int ALS_QUANTIFIED_EX__DISJ = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_QUANTIFIED_EX__VARIABLES = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Expression' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_QUANTIFIED_EX__EXPRESSION = ALS_TERM_FEATURE_COUNT + 3; + + /** + * The number of structural features of the 'ALS Quantified Ex' class. + * + * + * @generated + * @ordered + */ + int ALS_QUANTIFIED_EX_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 4; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOrImpl ALS Or}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOrImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSOr() + * @generated + */ + int ALS_OR = 19; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_OR__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_OR__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Or' class. + * + * + * @generated + * @ordered + */ + int ALS_OR_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIffImpl ALS Iff}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIffImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIff() + * @generated + */ + int ALS_IFF = 20; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_IFF__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_IFF__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Iff' class. + * + * + * @generated + * @ordered + */ + int ALS_IFF_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl ALS Impl}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSImpl() + * @generated + */ + int ALS_IMPL = 21; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_IMPL__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_IMPL__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Else Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_IMPL__ELSE_OPERAND = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'ALS Impl' class. + * + * + * @generated + * @ordered + */ + int ALS_IMPL_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSAndImpl ALS And}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSAndImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSAnd() + * @generated + */ + int ALS_AND = 22; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_AND__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_AND__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS And' class. + * + * + * @generated + * @ordered + */ + int ALS_AND_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEqualsImpl ALS Equals}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEqualsImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSEquals() + * @generated + */ + int ALS_EQUALS = 23; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_EQUALS__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_EQUALS__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Equals' class. + * + * + * @generated + * @ordered + */ + int ALS_EQUALS_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotEqualsImpl ALS Not Equals}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotEqualsImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNotEquals() + * @generated + */ + int ALS_NOT_EQUALS = 24; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_NOT_EQUALS__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_NOT_EQUALS__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Not Equals' class. + * + * + * @generated + * @ordered + */ + int ALS_NOT_EQUALS_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSubsetImpl ALS Subset}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSubsetImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSubset() + * @generated + */ + int ALS_SUBSET = 25; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_SUBSET__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_SUBSET__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Subset' class. + * + * + * @generated + * @ordered + */ + int ALS_SUBSET_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLessImpl ALS Less}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLessImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSLess() + * @generated + */ + int ALS_LESS = 26; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_LESS__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_LESS__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Less' class. + * + * + * @generated + * @ordered + */ + int ALS_LESS_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLeqImpl ALS Leq}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLeqImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSLeq() + * @generated + */ + int ALS_LEQ = 27; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_LEQ__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_LEQ__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Leq' class. + * + * + * @generated + * @ordered + */ + int ALS_LEQ_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMoreImpl ALS More}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMoreImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMore() + * @generated + */ + int ALS_MORE = 28; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_MORE__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_MORE__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS More' class. + * + * + * @generated + * @ordered + */ + int ALS_MORE_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMeqImpl ALS Meq}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMeqImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMeq() + * @generated + */ + int ALS_MEQ = 29; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_MEQ__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_MEQ__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Meq' class. + * + * + * @generated + * @ordered + */ + int ALS_MEQ_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOverrideImpl ALS Override}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOverrideImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSOverride() + * @generated + */ + int ALS_OVERRIDE = 30; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_OVERRIDE__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_OVERRIDE__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Override' class. + * + * + * @generated + * @ordered + */ + int ALS_OVERRIDE_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionRightImpl ALS Range Restriction Right}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionRightImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRangeRestrictionRight() + * @generated + */ + int ALS_RANGE_RESTRICTION_RIGHT = 31; + + /** + * The feature id for the 'Relation' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_RANGE_RESTRICTION_RIGHT__RELATION = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Filter' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_RANGE_RESTRICTION_RIGHT__FILTER = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Range Restriction Right' class. + * + * + * @generated + * @ordered + */ + int ALS_RANGE_RESTRICTION_RIGHT_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionLeftImpl ALS Range Restriction Left}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionLeftImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRangeRestrictionLeft() + * @generated + */ + int ALS_RANGE_RESTRICTION_LEFT = 32; + + /** + * The feature id for the 'Filter' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_RANGE_RESTRICTION_LEFT__FILTER = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Relation' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_RANGE_RESTRICTION_LEFT__RELATION = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Range Restriction Left' class. + * + * + * @generated + * @ordered + */ + int ALS_RANGE_RESTRICTION_LEFT_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSJoinImpl ALS Join}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSJoinImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSJoin() + * @generated + */ + int ALS_JOIN = 33; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_JOIN__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_JOIN__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Join' class. + * + * + * @generated + * @ordered + */ + int ALS_JOIN_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMinusImpl ALS Minus}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMinusImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMinus() + * @generated + */ + int ALS_MINUS = 34; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_MINUS__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_MINUS__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Minus' class. + * + * + * @generated + * @ordered + */ + int ALS_MINUS_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSPlusImpl ALS Plus}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSPlusImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSPlus() + * @generated + */ + int ALS_PLUS = 35; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_PLUS__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_PLUS__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Plus' class. + * + * + * @generated + * @ordered + */ + int ALS_PLUS_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntersectionImpl ALS Intersection}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntersectionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIntersection() + * @generated + */ + int ALS_INTERSECTION = 36; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_INTERSECTION__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_INTERSECTION__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Intersection' class. + * + * + * @generated + * @ordered + */ + int ALS_INTERSECTION_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl ALS Direct Product}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSDirectProduct() + * @generated + */ + int ALS_DIRECT_PRODUCT = 37; + + /** + * The feature id for the 'Left Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_DIRECT_PRODUCT__LEFT_OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Left Multiplicit' attribute. + * + * + * @generated + * @ordered + */ + int ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Right Multiplicit' attribute. + * + * + * @generated + * @ordered + */ + int ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Right Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_DIRECT_PRODUCT__RIGHT_OPERAND = ALS_TERM_FEATURE_COUNT + 3; + + /** + * The number of structural features of the 'ALS Direct Product' class. + * + * + * @generated + * @ordered + */ + int ALS_DIRECT_PRODUCT_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 4; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotImpl ALS Not}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNot() + * @generated + */ + int ALS_NOT = 38; + + /** + * The feature id for the 'Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_NOT__OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Not' class. + * + * + * @generated + * @ordered + */ + int ALS_NOT_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSInverseRelationImpl ALS Inverse Relation}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSInverseRelationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSInverseRelation() + * @generated + */ + int ALS_INVERSE_RELATION = 39; + + /** + * The feature id for the 'Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_INVERSE_RELATION__OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Inverse Relation' class. + * + * + * @generated + * @ordered + */ + int ALS_INVERSE_RELATION_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlSTransitiveClosureImpl Al STransitive Closure}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlSTransitiveClosureImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getAlSTransitiveClosure() + * @generated + */ + int AL_STRANSITIVE_CLOSURE = 40; + + /** + * The feature id for the 'Operand' containment reference. + * + * + * @generated + * @ordered + */ + int AL_STRANSITIVE_CLOSURE__OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Al STransitive Closure' class. + * + * + * @generated + * @ordered + */ + int AL_STRANSITIVE_CLOSURE_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReflectiveTransitiveClosureImpl ALS Reflective Transitive Closure}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReflectiveTransitiveClosureImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSReflectiveTransitiveClosure() + * @generated + */ + int ALS_REFLECTIVE_TRANSITIVE_CLOSURE = 41; + + /** + * The feature id for the 'Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Reflective Transitive Closure' class. + * + * + * @generated + * @ordered + */ + int ALS_REFLECTIVE_TRANSITIVE_CLOSURE_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSCardinalityImpl ALS Cardinality}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSCardinalityImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSCardinality() + * @generated + */ + int ALS_CARDINALITY = 42; + + /** + * The feature id for the 'Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_CARDINALITY__OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Cardinality' class. + * + * + * @generated + * @ordered + */ + int ALS_CARDINALITY_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnaryMinusImpl ALS Unary Minus}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnaryMinusImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSUnaryMinus() + * @generated + */ + int ALS_UNARY_MINUS = 43; + + /** + * The feature id for the 'Operand' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_UNARY_MINUS__OPERAND = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Unary Minus' class. + * + * + * @generated + * @ordered + */ + int ALS_UNARY_MINUS_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSumImpl ALS Sum}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSumImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSum() + * @generated + */ + int ALS_SUM = 44; + + /** + * The feature id for the 'Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_SUM__VARIABLES = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Expression' containment reference. + * + * + * @generated + * @ordered + */ + int ALS_SUM__EXPRESSION = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'ALS Sum' class. + * + * + * @generated + * @ordered + */ + int ALS_SUM_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl ALS Function Call}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFunctionCall() + * @generated + */ + int ALS_FUNCTION_CALL = 45; + + /** + * The feature id for the 'Referred Definition' reference. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_CALL__REFERRED_DEFINITION = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Referred Numeric Operator' attribute. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Params' containment reference list. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_CALL__PARAMS = ALS_TERM_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'ALS Function Call' class. + * + * + * @generated + * @ordered + */ + int ALS_FUNCTION_CALL_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 3; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNoneImpl ALS None}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNoneImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNone() + * @generated + */ + int ALS_NONE = 46; + + /** + * The number of structural features of the 'ALS None' class. + * + * + * @generated + * @ordered + */ + int ALS_NONE_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIdenImpl ALS Iden}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIdenImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIden() + * @generated + */ + int ALS_IDEN = 47; + + /** + * The number of structural features of the 'ALS Iden' class. + * + * + * @generated + * @ordered + */ + int ALS_IDEN_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnivImpl ALS Univ}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnivImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSUniv() + * @generated + */ + int ALS_UNIV = 48; + + /** + * The number of structural features of the 'ALS Univ' class. + * + * + * @generated + * @ordered + */ + int ALS_UNIV_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntImpl ALS Int}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSInt() + * @generated + */ + int ALS_INT = 49; + + /** + * The number of structural features of the 'ALS Int' class. + * + * + * @generated + * @ordered + */ + int ALS_INT_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReferenceImpl ALS Reference}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReferenceImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSReference() + * @generated + */ + int ALS_REFERENCE = 50; + + /** + * The feature id for the 'Referred' reference. + * + * + * @generated + * @ordered + */ + int ALS_REFERENCE__REFERRED = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Reference' class. + * + * + * @generated + * @ordered + */ + int ALS_REFERENCE_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNumberLiteralImpl ALS Number Literal}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNumberLiteralImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNumberLiteral() + * @generated + */ + int ALS_NUMBER_LITERAL = 51; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int ALS_NUMBER_LITERAL__VALUE = ALS_TERM_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'ALS Number Literal' class. + * + * + * @generated + * @ordered + */ + int ALS_NUMBER_LITERAL_FEATURE_COUNT = ALS_TERM_FEATURE_COUNT + 1; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity ALS Multiplicity}' enum. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMultiplicity() + * @generated + */ + int ALS_MULTIPLICITY = 52; + + /** + * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator ALS Numeric Operator}' enum. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNumericOperator() + * @generated + */ + int ALS_NUMERIC_OPERATOR = 53; + + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument ALS Document}'. + * + * + * @return the meta object for class 'ALS Document'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument + * @generated + */ + EClass getALSDocument(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getEnumDeclarations Enum Declarations}'. + * + * + * @return the meta object for the containment reference list 'Enum Declarations'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getEnumDeclarations() + * @see #getALSDocument() + * @generated + */ + EReference getALSDocument_EnumDeclarations(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getSignatureBodies Signature Bodies}'. + * + * + * @return the meta object for the containment reference list 'Signature Bodies'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getSignatureBodies() + * @see #getALSDocument() + * @generated + */ + EReference getALSDocument_SignatureBodies(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getFunctionDefinitions Function Definitions}'. + * + * + * @return the meta object for the containment reference list 'Function Definitions'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getFunctionDefinitions() + * @see #getALSDocument() + * @generated + */ + EReference getALSDocument_FunctionDefinitions(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRelationDefinitions Relation Definitions}'. + * + * + * @return the meta object for the containment reference list 'Relation Definitions'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRelationDefinitions() + * @see #getALSDocument() + * @generated + */ + EReference getALSDocument_RelationDefinitions(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getFactDeclarations Fact Declarations}'. + * + * + * @return the meta object for the containment reference list 'Fact Declarations'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getFactDeclarations() + * @see #getALSDocument() + * @generated + */ + EReference getALSDocument_FactDeclarations(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRunCommand Run Command}'. + * + * + * @return the meta object for the containment reference 'Run Command'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument#getRunCommand() + * @see #getALSDocument() + * @generated + */ + EReference getALSDocument_RunCommand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration ALS Relation Declaration}'. + * + * + * @return the meta object for class 'ALS Relation Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration + * @generated + */ + EClass getALSRelationDeclaration(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration#getName() + * @see #getALSRelationDeclaration() + * @generated + */ + EAttribute getALSRelationDeclaration_Name(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeDeclaration ALS Type Declaration}'. + * + * + * @return the meta object for class 'ALS Type Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeDeclaration + * @generated + */ + EClass getALSTypeDeclaration(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration ALS Enum Declaration}'. + * + * + * @return the meta object for class 'ALS Enum Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration + * @generated + */ + EClass getALSEnumDeclaration(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration#getLiteral Literal}'. + * + * + * @return the meta object for the containment reference list 'Literal'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration#getLiteral() + * @see #getALSEnumDeclaration() + * @generated + */ + EReference getALSEnumDeclaration_Literal(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral ALS Enum Literal}'. + * + * + * @return the meta object for class 'ALS Enum Literal'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral + * @generated + */ + EClass getALSEnumLiteral(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration ALS Signature Declaration}'. + * + * + * @return the meta object for class 'ALS Signature Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration + * @generated + */ + EClass getALSSignatureDeclaration(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody ALS Signature Body}'. + * + * + * @return the meta object for class 'ALS Signature Body'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody + * @generated + */ + EClass getALSSignatureBody(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getMultiplicity Multiplicity}'. + * + * + * @return the meta object for the attribute 'Multiplicity'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getMultiplicity() + * @see #getALSSignatureBody() + * @generated + */ + EAttribute getALSSignatureBody_Multiplicity(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#isAbstract Abstract}'. + * + * + * @return the meta object for the attribute 'Abstract'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#isAbstract() + * @see #getALSSignatureBody() + * @generated + */ + EAttribute getALSSignatureBody_Abstract(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getDeclarations Declarations}'. + * + * + * @return the meta object for the containment reference list 'Declarations'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getDeclarations() + * @see #getALSSignatureBody() + * @generated + */ + EReference getALSSignatureBody_Declarations(); + + /** + * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSupertype Supertype}'. + * + * + * @return the meta object for the reference 'Supertype'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSupertype() + * @see #getALSSignatureBody() + * @generated + */ + EReference getALSSignatureBody_Supertype(); + + /** + * Returns the meta object for the reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSuperset Superset}'. + * + * + * @return the meta object for the reference list 'Superset'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getSuperset() + * @see #getALSSignatureBody() + * @generated + */ + EReference getALSSignatureBody_Superset(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getFields Fields}'. + * + * + * @return the meta object for the containment reference list 'Fields'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody#getFields() + * @see #getALSSignatureBody() + * @generated + */ + EReference getALSSignatureBody_Fields(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration ALS Field Declaration}'. + * + * + * @return the meta object for class 'ALS Field Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration + * @generated + */ + EClass getALSFieldDeclaration(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getMultiplicity Multiplicity}'. + * + * + * @return the meta object for the attribute 'Multiplicity'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getMultiplicity() + * @see #getALSFieldDeclaration() + * @generated + */ + EAttribute getALSFieldDeclaration_Multiplicity(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getType Type}'. + * + * + * @return the meta object for the containment reference 'Type'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration#getType() + * @see #getALSFieldDeclaration() + * @generated + */ + EReference getALSFieldDeclaration_Type(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition ALS Definition}'. + * + * + * @return the meta object for class 'ALS Definition'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition + * @generated + */ + EClass getALSDefinition(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getName() + * @see #getALSDefinition() + * @generated + */ + EAttribute getALSDefinition_Name(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getVariables Variables}'. + * + * + * @return the meta object for the containment reference list 'Variables'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getVariables() + * @see #getALSDefinition() + * @generated + */ + EReference getALSDefinition_Variables(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getValue Value}'. + * + * + * @return the meta object for the containment reference 'Value'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition#getValue() + * @see #getALSDefinition() + * @generated + */ + EReference getALSDefinition_Value(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition ALS Function Definition}'. + * + * + * @return the meta object for class 'ALS Function Definition'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition + * @generated + */ + EClass getALSFunctionDefinition(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition#getType Type}'. + * + * + * @return the meta object for the containment reference 'Type'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition#getType() + * @see #getALSFunctionDefinition() + * @generated + */ + EReference getALSFunctionDefinition_Type(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition ALS Relation Definition}'. + * + * + * @return the meta object for class 'ALS Relation Definition'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition + * @generated + */ + EClass getALSRelationDefinition(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration ALS Fact Declaration}'. + * + * + * @return the meta object for class 'ALS Fact Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration + * @generated + */ + EClass getALSFactDeclaration(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getName() + * @see #getALSFactDeclaration() + * @generated + */ + EAttribute getALSFactDeclaration_Name(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getTerm Term}'. + * + * + * @return the meta object for the containment reference 'Term'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration#getTerm() + * @see #getALSFactDeclaration() + * @generated + */ + EReference getALSFactDeclaration_Term(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm ALS Term}'. + * + * + * @return the meta object for class 'ALS Term'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm + * @generated + */ + EClass getALSTerm(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration ALS Variable Declaration}'. + * + * + * @return the meta object for class 'ALS Variable Declaration'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration + * @generated + */ + EClass getALSVariableDeclaration(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration#getRange Range}'. + * + * + * @return the meta object for the containment reference 'Range'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration#getRange() + * @see #getALSVariableDeclaration() + * @generated + */ + EReference getALSVariableDeclaration_Range(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand ALS Run Command}'. + * + * + * @return the meta object for class 'ALS Run Command'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand + * @generated + */ + EClass getALSRunCommand(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand#getTypeScopes Type Scopes}'. + * + * + * @return the meta object for the containment reference list 'Type Scopes'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand#getTypeScopes() + * @see #getALSRunCommand() + * @generated + */ + EReference getALSRunCommand_TypeScopes(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope ALS Type Scope}'. + * + * + * @return the meta object for class 'ALS Type Scope'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope + * @generated + */ + EClass getALSTypeScope(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope#getNumber Number}'. + * + * + * @return the meta object for the attribute 'Number'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope#getNumber() + * @see #getALSTypeScope() + * @generated + */ + EAttribute getALSTypeScope_Number(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope ALS Sig Scope}'. + * + * + * @return the meta object for class 'ALS Sig Scope'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope + * @generated + */ + EClass getALSSigScope(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#isExactly Exactly}'. + * + * + * @return the meta object for the attribute 'Exactly'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#isExactly() + * @see #getALSSigScope() + * @generated + */ + EAttribute getALSSigScope_Exactly(); + + /** + * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#getType Type}'. + * + * + * @return the meta object for the reference 'Type'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope#getType() + * @see #getALSSigScope() + * @generated + */ + EReference getALSSigScope_Type(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope ALS Int Scope}'. + * + * + * @return the meta object for class 'ALS Int Scope'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope + * @generated + */ + EClass getALSIntScope(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx ALS Quantified Ex}'. + * + * + * @return the meta object for class 'ALS Quantified Ex'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx + * @generated + */ + EClass getALSQuantifiedEx(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getType Type}'. + * + * + * @return the meta object for the attribute 'Type'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getType() + * @see #getALSQuantifiedEx() + * @generated + */ + EAttribute getALSQuantifiedEx_Type(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#isDisj Disj}'. + * + * + * @return the meta object for the attribute 'Disj'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#isDisj() + * @see #getALSQuantifiedEx() + * @generated + */ + EAttribute getALSQuantifiedEx_Disj(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getVariables Variables}'. + * + * + * @return the meta object for the containment reference list 'Variables'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getVariables() + * @see #getALSQuantifiedEx() + * @generated + */ + EReference getALSQuantifiedEx_Variables(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getExpression Expression}'. + * + * + * @return the meta object for the containment reference 'Expression'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx#getExpression() + * @see #getALSQuantifiedEx() + * @generated + */ + EReference getALSQuantifiedEx_Expression(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr ALS Or}'. + * + * + * @return the meta object for class 'ALS Or'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr + * @generated + */ + EClass getALSOr(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getLeftOperand() + * @see #getALSOr() + * @generated + */ + EReference getALSOr_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr#getRightOperand() + * @see #getALSOr() + * @generated + */ + EReference getALSOr_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff ALS Iff}'. + * + * + * @return the meta object for class 'ALS Iff'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff + * @generated + */ + EClass getALSIff(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getLeftOperand() + * @see #getALSIff() + * @generated + */ + EReference getALSIff_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff#getRightOperand() + * @see #getALSIff() + * @generated + */ + EReference getALSIff_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl ALS Impl}'. + * + * + * @return the meta object for class 'ALS Impl'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl + * @generated + */ + EClass getALSImpl(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getLeftOperand() + * @see #getALSImpl() + * @generated + */ + EReference getALSImpl_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getRightOperand() + * @see #getALSImpl() + * @generated + */ + EReference getALSImpl_RightOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getElseOperand Else Operand}'. + * + * + * @return the meta object for the containment reference 'Else Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl#getElseOperand() + * @see #getALSImpl() + * @generated + */ + EReference getALSImpl_ElseOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd ALS And}'. + * + * + * @return the meta object for class 'ALS And'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd + * @generated + */ + EClass getALSAnd(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd#getLeftOperand() + * @see #getALSAnd() + * @generated + */ + EReference getALSAnd_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd#getRightOperand() + * @see #getALSAnd() + * @generated + */ + EReference getALSAnd_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals ALS Equals}'. + * + * + * @return the meta object for class 'ALS Equals'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals + * @generated + */ + EClass getALSEquals(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getLeftOperand() + * @see #getALSEquals() + * @generated + */ + EReference getALSEquals_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals#getRightOperand() + * @see #getALSEquals() + * @generated + */ + EReference getALSEquals_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals ALS Not Equals}'. + * + * + * @return the meta object for class 'ALS Not Equals'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals + * @generated + */ + EClass getALSNotEquals(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getLeftOperand() + * @see #getALSNotEquals() + * @generated + */ + EReference getALSNotEquals_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals#getRightOperand() + * @see #getALSNotEquals() + * @generated + */ + EReference getALSNotEquals_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset ALS Subset}'. + * + * + * @return the meta object for class 'ALS Subset'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset + * @generated + */ + EClass getALSSubset(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getLeftOperand() + * @see #getALSSubset() + * @generated + */ + EReference getALSSubset_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset#getRightOperand() + * @see #getALSSubset() + * @generated + */ + EReference getALSSubset_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess ALS Less}'. + * + * + * @return the meta object for class 'ALS Less'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess + * @generated + */ + EClass getALSLess(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getLeftOperand() + * @see #getALSLess() + * @generated + */ + EReference getALSLess_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess#getRightOperand() + * @see #getALSLess() + * @generated + */ + EReference getALSLess_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq ALS Leq}'. + * + * + * @return the meta object for class 'ALS Leq'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq + * @generated + */ + EClass getALSLeq(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getLeftOperand() + * @see #getALSLeq() + * @generated + */ + EReference getALSLeq_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq#getRightOperand() + * @see #getALSLeq() + * @generated + */ + EReference getALSLeq_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore ALS More}'. + * + * + * @return the meta object for class 'ALS More'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore + * @generated + */ + EClass getALSMore(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getLeftOperand() + * @see #getALSMore() + * @generated + */ + EReference getALSMore_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore#getRightOperand() + * @see #getALSMore() + * @generated + */ + EReference getALSMore_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq ALS Meq}'. + * + * + * @return the meta object for class 'ALS Meq'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq + * @generated + */ + EClass getALSMeq(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getLeftOperand() + * @see #getALSMeq() + * @generated + */ + EReference getALSMeq_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq#getRightOperand() + * @see #getALSMeq() + * @generated + */ + EReference getALSMeq_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride ALS Override}'. + * + * + * @return the meta object for class 'ALS Override'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride + * @generated + */ + EClass getALSOverride(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getLeftOperand() + * @see #getALSOverride() + * @generated + */ + EReference getALSOverride_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride#getRightOperand() + * @see #getALSOverride() + * @generated + */ + EReference getALSOverride_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight ALS Range Restriction Right}'. + * + * + * @return the meta object for class 'ALS Range Restriction Right'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight + * @generated + */ + EClass getALSRangeRestrictionRight(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getRelation Relation}'. + * + * + * @return the meta object for the containment reference 'Relation'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getRelation() + * @see #getALSRangeRestrictionRight() + * @generated + */ + EReference getALSRangeRestrictionRight_Relation(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getFilter Filter}'. + * + * + * @return the meta object for the containment reference 'Filter'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight#getFilter() + * @see #getALSRangeRestrictionRight() + * @generated + */ + EReference getALSRangeRestrictionRight_Filter(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft ALS Range Restriction Left}'. + * + * + * @return the meta object for class 'ALS Range Restriction Left'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft + * @generated + */ + EClass getALSRangeRestrictionLeft(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getFilter Filter}'. + * + * + * @return the meta object for the containment reference 'Filter'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getFilter() + * @see #getALSRangeRestrictionLeft() + * @generated + */ + EReference getALSRangeRestrictionLeft_Filter(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getRelation Relation}'. + * + * + * @return the meta object for the containment reference 'Relation'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft#getRelation() + * @see #getALSRangeRestrictionLeft() + * @generated + */ + EReference getALSRangeRestrictionLeft_Relation(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin ALS Join}'. + * + * + * @return the meta object for class 'ALS Join'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin + * @generated + */ + EClass getALSJoin(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getLeftOperand() + * @see #getALSJoin() + * @generated + */ + EReference getALSJoin_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin#getRightOperand() + * @see #getALSJoin() + * @generated + */ + EReference getALSJoin_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus ALS Minus}'. + * + * + * @return the meta object for class 'ALS Minus'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus + * @generated + */ + EClass getALSMinus(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getLeftOperand() + * @see #getALSMinus() + * @generated + */ + EReference getALSMinus_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus#getRightOperand() + * @see #getALSMinus() + * @generated + */ + EReference getALSMinus_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus ALS Plus}'. + * + * + * @return the meta object for class 'ALS Plus'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus + * @generated + */ + EClass getALSPlus(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getLeftOperand() + * @see #getALSPlus() + * @generated + */ + EReference getALSPlus_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus#getRightOperand() + * @see #getALSPlus() + * @generated + */ + EReference getALSPlus_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection ALS Intersection}'. + * + * + * @return the meta object for class 'ALS Intersection'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection + * @generated + */ + EClass getALSIntersection(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getLeftOperand() + * @see #getALSIntersection() + * @generated + */ + EReference getALSIntersection_LeftOperand(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection#getRightOperand() + * @see #getALSIntersection() + * @generated + */ + EReference getALSIntersection_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct ALS Direct Product}'. + * + * + * @return the meta object for class 'ALS Direct Product'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct + * @generated + */ + EClass getALSDirectProduct(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftOperand Left Operand}'. + * + * + * @return the meta object for the containment reference 'Left Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftOperand() + * @see #getALSDirectProduct() + * @generated + */ + EReference getALSDirectProduct_LeftOperand(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftMultiplicit Left Multiplicit}'. + * + * + * @return the meta object for the attribute 'Left Multiplicit'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getLeftMultiplicit() + * @see #getALSDirectProduct() + * @generated + */ + EAttribute getALSDirectProduct_LeftMultiplicit(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightMultiplicit Right Multiplicit}'. + * + * + * @return the meta object for the attribute 'Right Multiplicit'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightMultiplicit() + * @see #getALSDirectProduct() + * @generated + */ + EAttribute getALSDirectProduct_RightMultiplicit(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightOperand Right Operand}'. + * + * + * @return the meta object for the containment reference 'Right Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct#getRightOperand() + * @see #getALSDirectProduct() + * @generated + */ + EReference getALSDirectProduct_RightOperand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot ALS Not}'. + * + * + * @return the meta object for class 'ALS Not'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot + * @generated + */ + EClass getALSNot(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot#getOperand Operand}'. + * + * + * @return the meta object for the containment reference 'Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot#getOperand() + * @see #getALSNot() + * @generated + */ + EReference getALSNot_Operand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation ALS Inverse Relation}'. + * + * + * @return the meta object for class 'ALS Inverse Relation'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation + * @generated + */ + EClass getALSInverseRelation(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation#getOperand Operand}'. + * + * + * @return the meta object for the containment reference 'Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation#getOperand() + * @see #getALSInverseRelation() + * @generated + */ + EReference getALSInverseRelation_Operand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure Al STransitive Closure}'. + * + * + * @return the meta object for class 'Al STransitive Closure'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure + * @generated + */ + EClass getAlSTransitiveClosure(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure#getOperand Operand}'. + * + * + * @return the meta object for the containment reference 'Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure#getOperand() + * @see #getAlSTransitiveClosure() + * @generated + */ + EReference getAlSTransitiveClosure_Operand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure ALS Reflective Transitive Closure}'. + * + * + * @return the meta object for class 'ALS Reflective Transitive Closure'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure + * @generated + */ + EClass getALSReflectiveTransitiveClosure(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure#getOperand Operand}'. + * + * + * @return the meta object for the containment reference 'Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure#getOperand() + * @see #getALSReflectiveTransitiveClosure() + * @generated + */ + EReference getALSReflectiveTransitiveClosure_Operand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality ALS Cardinality}'. + * + * + * @return the meta object for class 'ALS Cardinality'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality + * @generated + */ + EClass getALSCardinality(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality#getOperand Operand}'. + * + * + * @return the meta object for the containment reference 'Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality#getOperand() + * @see #getALSCardinality() + * @generated + */ + EReference getALSCardinality_Operand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus ALS Unary Minus}'. + * + * + * @return the meta object for class 'ALS Unary Minus'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus + * @generated + */ + EClass getALSUnaryMinus(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus#getOperand Operand}'. + * + * + * @return the meta object for the containment reference 'Operand'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus#getOperand() + * @see #getALSUnaryMinus() + * @generated + */ + EReference getALSUnaryMinus_Operand(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum ALS Sum}'. + * + * + * @return the meta object for class 'ALS Sum'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum + * @generated + */ + EClass getALSSum(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getVariables Variables}'. + * + * + * @return the meta object for the containment reference list 'Variables'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getVariables() + * @see #getALSSum() + * @generated + */ + EReference getALSSum_Variables(); + + /** + * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getExpression Expression}'. + * + * + * @return the meta object for the containment reference 'Expression'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum#getExpression() + * @see #getALSSum() + * @generated + */ + EReference getALSSum_Expression(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall ALS Function Call}'. + * + * + * @return the meta object for class 'ALS Function Call'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall + * @generated + */ + EClass getALSFunctionCall(); + + /** + * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredDefinition Referred Definition}'. + * + * + * @return the meta object for the reference 'Referred Definition'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredDefinition() + * @see #getALSFunctionCall() + * @generated + */ + EReference getALSFunctionCall_ReferredDefinition(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredNumericOperator Referred Numeric Operator}'. + * + * + * @return the meta object for the attribute 'Referred Numeric Operator'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getReferredNumericOperator() + * @see #getALSFunctionCall() + * @generated + */ + EAttribute getALSFunctionCall_ReferredNumericOperator(); + + /** + * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getParams Params}'. + * + * + * @return the meta object for the containment reference list 'Params'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall#getParams() + * @see #getALSFunctionCall() + * @generated + */ + EReference getALSFunctionCall_Params(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone ALS None}'. + * + * + * @return the meta object for class 'ALS None'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone + * @generated + */ + EClass getALSNone(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden ALS Iden}'. + * + * + * @return the meta object for class 'ALS Iden'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden + * @generated + */ + EClass getALSIden(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv ALS Univ}'. + * + * + * @return the meta object for class 'ALS Univ'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv + * @generated + */ + EClass getALSUniv(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt ALS Int}'. + * + * + * @return the meta object for class 'ALS Int'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt + * @generated + */ + EClass getALSInt(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference ALS Reference}'. + * + * + * @return the meta object for class 'ALS Reference'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference + * @generated + */ + EClass getALSReference(); + + /** + * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference#getReferred Referred}'. + * + * + * @return the meta object for the reference 'Referred'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference#getReferred() + * @see #getALSReference() + * @generated + */ + EReference getALSReference_Referred(); + + /** + * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral ALS Number Literal}'. + * + * + * @return the meta object for class 'ALS Number Literal'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral + * @generated + */ + EClass getALSNumberLiteral(); + + /** + * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral#getValue() + * @see #getALSNumberLiteral() + * @generated + */ + EAttribute getALSNumberLiteral_Value(); + + /** + * Returns the meta object for enum '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity ALS Multiplicity}'. + * + * + * @return the meta object for enum 'ALS Multiplicity'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @generated + */ + EEnum getALSMultiplicity(); + + /** + * Returns the meta object for enum '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator ALS Numeric Operator}'. + * + * + * @return the meta object for enum 'ALS Numeric Operator'. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator + * @generated + */ + EEnum getALSNumericOperator(); + + /** + * Returns the factory that creates the instances of the model. + * + * + * @return the factory that creates the instances of the model. + * @generated + */ + AlloyLanguageFactory getAlloyLanguageFactory(); + + /** + * + * Defines literals for the meta objects that represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @generated + */ + interface Literals + { + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl ALS Document}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSDocument() + * @generated + */ + EClass ALS_DOCUMENT = eINSTANCE.getALSDocument(); + + /** + * The meta object literal for the 'Enum Declarations' containment reference list feature. + * + * + * @generated + */ + EReference ALS_DOCUMENT__ENUM_DECLARATIONS = eINSTANCE.getALSDocument_EnumDeclarations(); + + /** + * The meta object literal for the 'Signature Bodies' containment reference list feature. + * + * + * @generated + */ + EReference ALS_DOCUMENT__SIGNATURE_BODIES = eINSTANCE.getALSDocument_SignatureBodies(); + + /** + * The meta object literal for the 'Function Definitions' containment reference list feature. + * + * + * @generated + */ + EReference ALS_DOCUMENT__FUNCTION_DEFINITIONS = eINSTANCE.getALSDocument_FunctionDefinitions(); + + /** + * The meta object literal for the 'Relation Definitions' containment reference list feature. + * + * + * @generated + */ + EReference ALS_DOCUMENT__RELATION_DEFINITIONS = eINSTANCE.getALSDocument_RelationDefinitions(); + + /** + * The meta object literal for the 'Fact Declarations' containment reference list feature. + * + * + * @generated + */ + EReference ALS_DOCUMENT__FACT_DECLARATIONS = eINSTANCE.getALSDocument_FactDeclarations(); + + /** + * The meta object literal for the 'Run Command' containment reference feature. + * + * + * @generated + */ + EReference ALS_DOCUMENT__RUN_COMMAND = eINSTANCE.getALSDocument_RunCommand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDeclarationImpl ALS Relation Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRelationDeclaration() + * @generated + */ + EClass ALS_RELATION_DECLARATION = eINSTANCE.getALSRelationDeclaration(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute ALS_RELATION_DECLARATION__NAME = eINSTANCE.getALSRelationDeclaration_Name(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeDeclarationImpl ALS Type Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSTypeDeclaration() + * @generated + */ + EClass ALS_TYPE_DECLARATION = eINSTANCE.getALSTypeDeclaration(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumDeclarationImpl ALS Enum Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSEnumDeclaration() + * @generated + */ + EClass ALS_ENUM_DECLARATION = eINSTANCE.getALSEnumDeclaration(); + + /** + * The meta object literal for the 'Literal' containment reference list feature. + * + * + * @generated + */ + EReference ALS_ENUM_DECLARATION__LITERAL = eINSTANCE.getALSEnumDeclaration_Literal(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumLiteralImpl ALS Enum Literal}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumLiteralImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSEnumLiteral() + * @generated + */ + EClass ALS_ENUM_LITERAL = eINSTANCE.getALSEnumLiteral(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureDeclarationImpl ALS Signature Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSignatureDeclaration() + * @generated + */ + EClass ALS_SIGNATURE_DECLARATION = eINSTANCE.getALSSignatureDeclaration(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl ALS Signature Body}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSignatureBody() + * @generated + */ + EClass ALS_SIGNATURE_BODY = eINSTANCE.getALSSignatureBody(); + + /** + * The meta object literal for the 'Multiplicity' attribute feature. + * + * + * @generated + */ + EAttribute ALS_SIGNATURE_BODY__MULTIPLICITY = eINSTANCE.getALSSignatureBody_Multiplicity(); + + /** + * The meta object literal for the 'Abstract' attribute feature. + * + * + * @generated + */ + EAttribute ALS_SIGNATURE_BODY__ABSTRACT = eINSTANCE.getALSSignatureBody_Abstract(); + + /** + * The meta object literal for the 'Declarations' containment reference list feature. + * + * + * @generated + */ + EReference ALS_SIGNATURE_BODY__DECLARATIONS = eINSTANCE.getALSSignatureBody_Declarations(); + + /** + * The meta object literal for the 'Supertype' reference feature. + * + * + * @generated + */ + EReference ALS_SIGNATURE_BODY__SUPERTYPE = eINSTANCE.getALSSignatureBody_Supertype(); + + /** + * The meta object literal for the 'Superset' reference list feature. + * + * + * @generated + */ + EReference ALS_SIGNATURE_BODY__SUPERSET = eINSTANCE.getALSSignatureBody_Superset(); + + /** + * The meta object literal for the 'Fields' containment reference list feature. + * + * + * @generated + */ + EReference ALS_SIGNATURE_BODY__FIELDS = eINSTANCE.getALSSignatureBody_Fields(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFieldDeclarationImpl ALS Field Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFieldDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFieldDeclaration() + * @generated + */ + EClass ALS_FIELD_DECLARATION = eINSTANCE.getALSFieldDeclaration(); + + /** + * The meta object literal for the 'Multiplicity' attribute feature. + * + * + * @generated + */ + EAttribute ALS_FIELD_DECLARATION__MULTIPLICITY = eINSTANCE.getALSFieldDeclaration_Multiplicity(); + + /** + * The meta object literal for the 'Type' containment reference feature. + * + * + * @generated + */ + EReference ALS_FIELD_DECLARATION__TYPE = eINSTANCE.getALSFieldDeclaration_Type(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl ALS Definition}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSDefinition() + * @generated + */ + EClass ALS_DEFINITION = eINSTANCE.getALSDefinition(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute ALS_DEFINITION__NAME = eINSTANCE.getALSDefinition_Name(); + + /** + * The meta object literal for the 'Variables' containment reference list feature. + * + * + * @generated + */ + EReference ALS_DEFINITION__VARIABLES = eINSTANCE.getALSDefinition_Variables(); + + /** + * The meta object literal for the 'Value' containment reference feature. + * + * + * @generated + */ + EReference ALS_DEFINITION__VALUE = eINSTANCE.getALSDefinition_Value(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionDefinitionImpl ALS Function Definition}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionDefinitionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFunctionDefinition() + * @generated + */ + EClass ALS_FUNCTION_DEFINITION = eINSTANCE.getALSFunctionDefinition(); + + /** + * The meta object literal for the 'Type' containment reference feature. + * + * + * @generated + */ + EReference ALS_FUNCTION_DEFINITION__TYPE = eINSTANCE.getALSFunctionDefinition_Type(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDefinitionImpl ALS Relation Definition}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDefinitionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRelationDefinition() + * @generated + */ + EClass ALS_RELATION_DEFINITION = eINSTANCE.getALSRelationDefinition(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFactDeclarationImpl ALS Fact Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFactDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFactDeclaration() + * @generated + */ + EClass ALS_FACT_DECLARATION = eINSTANCE.getALSFactDeclaration(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute ALS_FACT_DECLARATION__NAME = eINSTANCE.getALSFactDeclaration_Name(); + + /** + * The meta object literal for the 'Term' containment reference feature. + * + * + * @generated + */ + EReference ALS_FACT_DECLARATION__TERM = eINSTANCE.getALSFactDeclaration_Term(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTermImpl ALS Term}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTermImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSTerm() + * @generated + */ + EClass ALS_TERM = eINSTANCE.getALSTerm(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSVariableDeclarationImpl ALS Variable Declaration}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSVariableDeclarationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSVariableDeclaration() + * @generated + */ + EClass ALS_VARIABLE_DECLARATION = eINSTANCE.getALSVariableDeclaration(); + + /** + * The meta object literal for the 'Range' containment reference feature. + * + * + * @generated + */ + EReference ALS_VARIABLE_DECLARATION__RANGE = eINSTANCE.getALSVariableDeclaration_Range(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRunCommandImpl ALS Run Command}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRunCommandImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRunCommand() + * @generated + */ + EClass ALS_RUN_COMMAND = eINSTANCE.getALSRunCommand(); + + /** + * The meta object literal for the 'Type Scopes' containment reference list feature. + * + * + * @generated + */ + EReference ALS_RUN_COMMAND__TYPE_SCOPES = eINSTANCE.getALSRunCommand_TypeScopes(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeScopeImpl ALS Type Scope}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeScopeImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSTypeScope() + * @generated + */ + EClass ALS_TYPE_SCOPE = eINSTANCE.getALSTypeScope(); + + /** + * The meta object literal for the 'Number' attribute feature. + * + * + * @generated + */ + EAttribute ALS_TYPE_SCOPE__NUMBER = eINSTANCE.getALSTypeScope_Number(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSigScopeImpl ALS Sig Scope}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSigScopeImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSigScope() + * @generated + */ + EClass ALS_SIG_SCOPE = eINSTANCE.getALSSigScope(); + + /** + * The meta object literal for the 'Exactly' attribute feature. + * + * + * @generated + */ + EAttribute ALS_SIG_SCOPE__EXACTLY = eINSTANCE.getALSSigScope_Exactly(); + + /** + * The meta object literal for the 'Type' reference feature. + * + * + * @generated + */ + EReference ALS_SIG_SCOPE__TYPE = eINSTANCE.getALSSigScope_Type(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntScopeImpl ALS Int Scope}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntScopeImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIntScope() + * @generated + */ + EClass ALS_INT_SCOPE = eINSTANCE.getALSIntScope(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl ALS Quantified Ex}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSQuantifiedEx() + * @generated + */ + EClass ALS_QUANTIFIED_EX = eINSTANCE.getALSQuantifiedEx(); + + /** + * The meta object literal for the 'Type' attribute feature. + * + * + * @generated + */ + EAttribute ALS_QUANTIFIED_EX__TYPE = eINSTANCE.getALSQuantifiedEx_Type(); + + /** + * The meta object literal for the 'Disj' attribute feature. + * + * + * @generated + */ + EAttribute ALS_QUANTIFIED_EX__DISJ = eINSTANCE.getALSQuantifiedEx_Disj(); + + /** + * The meta object literal for the 'Variables' containment reference list feature. + * + * + * @generated + */ + EReference ALS_QUANTIFIED_EX__VARIABLES = eINSTANCE.getALSQuantifiedEx_Variables(); + + /** + * The meta object literal for the 'Expression' containment reference feature. + * + * + * @generated + */ + EReference ALS_QUANTIFIED_EX__EXPRESSION = eINSTANCE.getALSQuantifiedEx_Expression(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOrImpl ALS Or}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOrImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSOr() + * @generated + */ + EClass ALS_OR = eINSTANCE.getALSOr(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_OR__LEFT_OPERAND = eINSTANCE.getALSOr_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_OR__RIGHT_OPERAND = eINSTANCE.getALSOr_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIffImpl ALS Iff}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIffImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIff() + * @generated + */ + EClass ALS_IFF = eINSTANCE.getALSIff(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_IFF__LEFT_OPERAND = eINSTANCE.getALSIff_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_IFF__RIGHT_OPERAND = eINSTANCE.getALSIff_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl ALS Impl}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSImpl() + * @generated + */ + EClass ALS_IMPL = eINSTANCE.getALSImpl(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_IMPL__LEFT_OPERAND = eINSTANCE.getALSImpl_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_IMPL__RIGHT_OPERAND = eINSTANCE.getALSImpl_RightOperand(); + + /** + * The meta object literal for the 'Else Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_IMPL__ELSE_OPERAND = eINSTANCE.getALSImpl_ElseOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSAndImpl ALS And}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSAndImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSAnd() + * @generated + */ + EClass ALS_AND = eINSTANCE.getALSAnd(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_AND__LEFT_OPERAND = eINSTANCE.getALSAnd_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_AND__RIGHT_OPERAND = eINSTANCE.getALSAnd_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEqualsImpl ALS Equals}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEqualsImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSEquals() + * @generated + */ + EClass ALS_EQUALS = eINSTANCE.getALSEquals(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_EQUALS__LEFT_OPERAND = eINSTANCE.getALSEquals_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_EQUALS__RIGHT_OPERAND = eINSTANCE.getALSEquals_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotEqualsImpl ALS Not Equals}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotEqualsImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNotEquals() + * @generated + */ + EClass ALS_NOT_EQUALS = eINSTANCE.getALSNotEquals(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_NOT_EQUALS__LEFT_OPERAND = eINSTANCE.getALSNotEquals_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_NOT_EQUALS__RIGHT_OPERAND = eINSTANCE.getALSNotEquals_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSubsetImpl ALS Subset}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSubsetImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSubset() + * @generated + */ + EClass ALS_SUBSET = eINSTANCE.getALSSubset(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_SUBSET__LEFT_OPERAND = eINSTANCE.getALSSubset_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_SUBSET__RIGHT_OPERAND = eINSTANCE.getALSSubset_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLessImpl ALS Less}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLessImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSLess() + * @generated + */ + EClass ALS_LESS = eINSTANCE.getALSLess(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_LESS__LEFT_OPERAND = eINSTANCE.getALSLess_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_LESS__RIGHT_OPERAND = eINSTANCE.getALSLess_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLeqImpl ALS Leq}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLeqImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSLeq() + * @generated + */ + EClass ALS_LEQ = eINSTANCE.getALSLeq(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_LEQ__LEFT_OPERAND = eINSTANCE.getALSLeq_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_LEQ__RIGHT_OPERAND = eINSTANCE.getALSLeq_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMoreImpl ALS More}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMoreImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMore() + * @generated + */ + EClass ALS_MORE = eINSTANCE.getALSMore(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_MORE__LEFT_OPERAND = eINSTANCE.getALSMore_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_MORE__RIGHT_OPERAND = eINSTANCE.getALSMore_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMeqImpl ALS Meq}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMeqImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMeq() + * @generated + */ + EClass ALS_MEQ = eINSTANCE.getALSMeq(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_MEQ__LEFT_OPERAND = eINSTANCE.getALSMeq_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_MEQ__RIGHT_OPERAND = eINSTANCE.getALSMeq_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOverrideImpl ALS Override}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOverrideImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSOverride() + * @generated + */ + EClass ALS_OVERRIDE = eINSTANCE.getALSOverride(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_OVERRIDE__LEFT_OPERAND = eINSTANCE.getALSOverride_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_OVERRIDE__RIGHT_OPERAND = eINSTANCE.getALSOverride_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionRightImpl ALS Range Restriction Right}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionRightImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRangeRestrictionRight() + * @generated + */ + EClass ALS_RANGE_RESTRICTION_RIGHT = eINSTANCE.getALSRangeRestrictionRight(); + + /** + * The meta object literal for the 'Relation' containment reference feature. + * + * + * @generated + */ + EReference ALS_RANGE_RESTRICTION_RIGHT__RELATION = eINSTANCE.getALSRangeRestrictionRight_Relation(); + + /** + * The meta object literal for the 'Filter' containment reference feature. + * + * + * @generated + */ + EReference ALS_RANGE_RESTRICTION_RIGHT__FILTER = eINSTANCE.getALSRangeRestrictionRight_Filter(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionLeftImpl ALS Range Restriction Left}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionLeftImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSRangeRestrictionLeft() + * @generated + */ + EClass ALS_RANGE_RESTRICTION_LEFT = eINSTANCE.getALSRangeRestrictionLeft(); + + /** + * The meta object literal for the 'Filter' containment reference feature. + * + * + * @generated + */ + EReference ALS_RANGE_RESTRICTION_LEFT__FILTER = eINSTANCE.getALSRangeRestrictionLeft_Filter(); + + /** + * The meta object literal for the 'Relation' containment reference feature. + * + * + * @generated + */ + EReference ALS_RANGE_RESTRICTION_LEFT__RELATION = eINSTANCE.getALSRangeRestrictionLeft_Relation(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSJoinImpl ALS Join}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSJoinImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSJoin() + * @generated + */ + EClass ALS_JOIN = eINSTANCE.getALSJoin(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_JOIN__LEFT_OPERAND = eINSTANCE.getALSJoin_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_JOIN__RIGHT_OPERAND = eINSTANCE.getALSJoin_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMinusImpl ALS Minus}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMinusImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMinus() + * @generated + */ + EClass ALS_MINUS = eINSTANCE.getALSMinus(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_MINUS__LEFT_OPERAND = eINSTANCE.getALSMinus_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_MINUS__RIGHT_OPERAND = eINSTANCE.getALSMinus_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSPlusImpl ALS Plus}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSPlusImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSPlus() + * @generated + */ + EClass ALS_PLUS = eINSTANCE.getALSPlus(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_PLUS__LEFT_OPERAND = eINSTANCE.getALSPlus_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_PLUS__RIGHT_OPERAND = eINSTANCE.getALSPlus_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntersectionImpl ALS Intersection}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntersectionImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIntersection() + * @generated + */ + EClass ALS_INTERSECTION = eINSTANCE.getALSIntersection(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_INTERSECTION__LEFT_OPERAND = eINSTANCE.getALSIntersection_LeftOperand(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_INTERSECTION__RIGHT_OPERAND = eINSTANCE.getALSIntersection_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl ALS Direct Product}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSDirectProduct() + * @generated + */ + EClass ALS_DIRECT_PRODUCT = eINSTANCE.getALSDirectProduct(); + + /** + * The meta object literal for the 'Left Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_DIRECT_PRODUCT__LEFT_OPERAND = eINSTANCE.getALSDirectProduct_LeftOperand(); + + /** + * The meta object literal for the 'Left Multiplicit' attribute feature. + * + * + * @generated + */ + EAttribute ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT = eINSTANCE.getALSDirectProduct_LeftMultiplicit(); + + /** + * The meta object literal for the 'Right Multiplicit' attribute feature. + * + * + * @generated + */ + EAttribute ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT = eINSTANCE.getALSDirectProduct_RightMultiplicit(); + + /** + * The meta object literal for the 'Right Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_DIRECT_PRODUCT__RIGHT_OPERAND = eINSTANCE.getALSDirectProduct_RightOperand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotImpl ALS Not}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNot() + * @generated + */ + EClass ALS_NOT = eINSTANCE.getALSNot(); + + /** + * The meta object literal for the 'Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_NOT__OPERAND = eINSTANCE.getALSNot_Operand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSInverseRelationImpl ALS Inverse Relation}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSInverseRelationImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSInverseRelation() + * @generated + */ + EClass ALS_INVERSE_RELATION = eINSTANCE.getALSInverseRelation(); + + /** + * The meta object literal for the 'Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_INVERSE_RELATION__OPERAND = eINSTANCE.getALSInverseRelation_Operand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlSTransitiveClosureImpl Al STransitive Closure}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlSTransitiveClosureImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getAlSTransitiveClosure() + * @generated + */ + EClass AL_STRANSITIVE_CLOSURE = eINSTANCE.getAlSTransitiveClosure(); + + /** + * The meta object literal for the 'Operand' containment reference feature. + * + * + * @generated + */ + EReference AL_STRANSITIVE_CLOSURE__OPERAND = eINSTANCE.getAlSTransitiveClosure_Operand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReflectiveTransitiveClosureImpl ALS Reflective Transitive Closure}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReflectiveTransitiveClosureImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSReflectiveTransitiveClosure() + * @generated + */ + EClass ALS_REFLECTIVE_TRANSITIVE_CLOSURE = eINSTANCE.getALSReflectiveTransitiveClosure(); + + /** + * The meta object literal for the 'Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND = eINSTANCE.getALSReflectiveTransitiveClosure_Operand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSCardinalityImpl ALS Cardinality}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSCardinalityImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSCardinality() + * @generated + */ + EClass ALS_CARDINALITY = eINSTANCE.getALSCardinality(); + + /** + * The meta object literal for the 'Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_CARDINALITY__OPERAND = eINSTANCE.getALSCardinality_Operand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnaryMinusImpl ALS Unary Minus}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnaryMinusImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSUnaryMinus() + * @generated + */ + EClass ALS_UNARY_MINUS = eINSTANCE.getALSUnaryMinus(); + + /** + * The meta object literal for the 'Operand' containment reference feature. + * + * + * @generated + */ + EReference ALS_UNARY_MINUS__OPERAND = eINSTANCE.getALSUnaryMinus_Operand(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSumImpl ALS Sum}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSumImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSSum() + * @generated + */ + EClass ALS_SUM = eINSTANCE.getALSSum(); + + /** + * The meta object literal for the 'Variables' containment reference list feature. + * + * + * @generated + */ + EReference ALS_SUM__VARIABLES = eINSTANCE.getALSSum_Variables(); + + /** + * The meta object literal for the 'Expression' containment reference feature. + * + * + * @generated + */ + EReference ALS_SUM__EXPRESSION = eINSTANCE.getALSSum_Expression(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl ALS Function Call}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSFunctionCall() + * @generated + */ + EClass ALS_FUNCTION_CALL = eINSTANCE.getALSFunctionCall(); + + /** + * The meta object literal for the 'Referred Definition' reference feature. + * + * + * @generated + */ + EReference ALS_FUNCTION_CALL__REFERRED_DEFINITION = eINSTANCE.getALSFunctionCall_ReferredDefinition(); + + /** + * The meta object literal for the 'Referred Numeric Operator' attribute feature. + * + * + * @generated + */ + EAttribute ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR = eINSTANCE.getALSFunctionCall_ReferredNumericOperator(); + + /** + * The meta object literal for the 'Params' containment reference list feature. + * + * + * @generated + */ + EReference ALS_FUNCTION_CALL__PARAMS = eINSTANCE.getALSFunctionCall_Params(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNoneImpl ALS None}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNoneImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNone() + * @generated + */ + EClass ALS_NONE = eINSTANCE.getALSNone(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIdenImpl ALS Iden}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIdenImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSIden() + * @generated + */ + EClass ALS_IDEN = eINSTANCE.getALSIden(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnivImpl ALS Univ}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnivImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSUniv() + * @generated + */ + EClass ALS_UNIV = eINSTANCE.getALSUniv(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntImpl ALS Int}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSInt() + * @generated + */ + EClass ALS_INT = eINSTANCE.getALSInt(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReferenceImpl ALS Reference}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReferenceImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSReference() + * @generated + */ + EClass ALS_REFERENCE = eINSTANCE.getALSReference(); + + /** + * The meta object literal for the 'Referred' reference feature. + * + * + * @generated + */ + EReference ALS_REFERENCE__REFERRED = eINSTANCE.getALSReference_Referred(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNumberLiteralImpl ALS Number Literal}' class. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNumberLiteralImpl + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNumberLiteral() + * @generated + */ + EClass ALS_NUMBER_LITERAL = eINSTANCE.getALSNumberLiteral(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute ALS_NUMBER_LITERAL__VALUE = eINSTANCE.getALSNumberLiteral_Value(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity ALS Multiplicity}' enum. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSMultiplicity() + * @generated + */ + EEnum ALS_MULTIPLICITY = eINSTANCE.getALSMultiplicity(); + + /** + * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator ALS Numeric Operator}' enum. + * + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlloyLanguagePackageImpl#getALSNumericOperator() + * @generated + */ + EEnum ALS_NUMERIC_OPERATOR = eINSTANCE.getALSNumericOperator(); + + } + +} //AlloyLanguagePackage diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSAndImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSAndImpl.java new file mode 100644 index 00000000..e8cbd9ad --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSAndImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS And'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSAndImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSAndImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSAndImpl extends ALSTermImpl implements ALSAnd +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSAndImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_AND; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_AND__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_AND__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_AND__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_AND__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_AND__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_AND__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_AND__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_AND__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_AND__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_AND__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSAndImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSCardinalityImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSCardinalityImpl.java new file mode 100644 index 00000000..5faf04d6 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSCardinalityImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Cardinality'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSCardinalityImpl#getOperand Operand}
  • + *
+ * + * @generated + */ +public class ALSCardinalityImpl extends ALSTermImpl implements ALSCardinality +{ + /** + * The cached value of the '{@link #getOperand() Operand}' containment reference. + * + * + * @see #getOperand() + * @generated + * @ordered + */ + protected ALSTerm operand; + + /** + * + * + * @generated + */ + protected ALSCardinalityImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_CARDINALITY; + } + + /** + * + * + * @generated + */ + public ALSTerm getOperand() + { + return operand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetOperand(ALSTerm newOperand, NotificationChain msgs) + { + ALSTerm oldOperand = operand; + operand = newOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_CARDINALITY__OPERAND, oldOperand, newOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setOperand(ALSTerm newOperand) + { + if (newOperand != operand) + { + NotificationChain msgs = null; + if (operand != null) + msgs = ((InternalEObject)operand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_CARDINALITY__OPERAND, null, msgs); + if (newOperand != null) + msgs = ((InternalEObject)newOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_CARDINALITY__OPERAND, null, msgs); + msgs = basicSetOperand(newOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_CARDINALITY__OPERAND, newOperand, newOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_CARDINALITY__OPERAND: + return basicSetOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_CARDINALITY__OPERAND: + return getOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_CARDINALITY__OPERAND: + setOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_CARDINALITY__OPERAND: + setOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_CARDINALITY__OPERAND: + return operand != null; + } + return super.eIsSet(featureID); + } + +} //ALSCardinalityImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDefinitionImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDefinitionImpl.java new file mode 100644 index 00000000..83ba34c2 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDefinitionImpl.java @@ -0,0 +1,312 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Definition'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl#getName Name}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl#getVariables Variables}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDefinitionImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class ALSDefinitionImpl extends MinimalEObjectImpl.Container implements ALSDefinition +{ + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getVariables() Variables}' containment reference list. + * + * + * @see #getVariables() + * @generated + * @ordered + */ + protected EList variables; + + /** + * The cached value of the '{@link #getValue() Value}' containment reference. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected ALSTerm value; + + /** + * + * + * @generated + */ + protected ALSDefinitionImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_DEFINITION; + } + + /** + * + * + * @generated + */ + public String getName() + { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DEFINITION__NAME, oldName, name)); + } + + /** + * + * + * @generated + */ + public EList getVariables() + { + if (variables == null) + { + variables = new EObjectContainmentEList(ALSVariableDeclaration.class, this, AlloyLanguagePackage.ALS_DEFINITION__VARIABLES); + } + return variables; + } + + /** + * + * + * @generated + */ + public ALSTerm getValue() + { + return value; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetValue(ALSTerm newValue, NotificationChain msgs) + { + ALSTerm oldValue = value; + value = newValue; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DEFINITION__VALUE, oldValue, newValue); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setValue(ALSTerm newValue) + { + if (newValue != value) + { + NotificationChain msgs = null; + if (value != null) + msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DEFINITION__VALUE, null, msgs); + if (newValue != null) + msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DEFINITION__VALUE, null, msgs); + msgs = basicSetValue(newValue, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DEFINITION__VALUE, newValue, newValue)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DEFINITION__VARIABLES: + return ((InternalEList)getVariables()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_DEFINITION__VALUE: + return basicSetValue(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DEFINITION__NAME: + return getName(); + case AlloyLanguagePackage.ALS_DEFINITION__VARIABLES: + return getVariables(); + case AlloyLanguagePackage.ALS_DEFINITION__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DEFINITION__NAME: + setName((String)newValue); + return; + case AlloyLanguagePackage.ALS_DEFINITION__VARIABLES: + getVariables().clear(); + getVariables().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_DEFINITION__VALUE: + setValue((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DEFINITION__NAME: + setName(NAME_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_DEFINITION__VARIABLES: + getVariables().clear(); + return; + case AlloyLanguagePackage.ALS_DEFINITION__VALUE: + setValue((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DEFINITION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case AlloyLanguagePackage.ALS_DEFINITION__VARIABLES: + return variables != null && !variables.isEmpty(); + case AlloyLanguagePackage.ALS_DEFINITION__VALUE: + return value != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ALSDefinitionImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDirectProductImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDirectProductImpl.java new file mode 100644 index 00000000..a0b6efe7 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDirectProductImpl.java @@ -0,0 +1,392 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Direct Product'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl#getLeftMultiplicit Left Multiplicit}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl#getRightMultiplicit Right Multiplicit}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDirectProductImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSDirectProductImpl extends ALSTermImpl implements ALSDirectProduct +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The default value of the '{@link #getLeftMultiplicit() Left Multiplicit}' attribute. + * + * + * @see #getLeftMultiplicit() + * @generated + * @ordered + */ + protected static final ALSMultiplicity LEFT_MULTIPLICIT_EDEFAULT = ALSMultiplicity.ALL; + + /** + * The cached value of the '{@link #getLeftMultiplicit() Left Multiplicit}' attribute. + * + * + * @see #getLeftMultiplicit() + * @generated + * @ordered + */ + protected ALSMultiplicity leftMultiplicit = LEFT_MULTIPLICIT_EDEFAULT; + + /** + * The default value of the '{@link #getRightMultiplicit() Right Multiplicit}' attribute. + * + * + * @see #getRightMultiplicit() + * @generated + * @ordered + */ + protected static final ALSMultiplicity RIGHT_MULTIPLICIT_EDEFAULT = ALSMultiplicity.ALL; + + /** + * The cached value of the '{@link #getRightMultiplicit() Right Multiplicit}' attribute. + * + * + * @see #getRightMultiplicit() + * @generated + * @ordered + */ + protected ALSMultiplicity rightMultiplicit = RIGHT_MULTIPLICIT_EDEFAULT; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSDirectProductImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_DIRECT_PRODUCT; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSMultiplicity getLeftMultiplicit() + { + return leftMultiplicit; + } + + /** + * + * + * @generated + */ + public void setLeftMultiplicit(ALSMultiplicity newLeftMultiplicit) + { + ALSMultiplicity oldLeftMultiplicit = leftMultiplicit; + leftMultiplicit = newLeftMultiplicit == null ? LEFT_MULTIPLICIT_EDEFAULT : newLeftMultiplicit; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT, oldLeftMultiplicit, leftMultiplicit)); + } + + /** + * + * + * @generated + */ + public ALSMultiplicity getRightMultiplicit() + { + return rightMultiplicit; + } + + /** + * + * + * @generated + */ + public void setRightMultiplicit(ALSMultiplicity newRightMultiplicit) + { + ALSMultiplicity oldRightMultiplicit = rightMultiplicit; + rightMultiplicit = newRightMultiplicit == null ? RIGHT_MULTIPLICIT_EDEFAULT : newRightMultiplicit; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT, oldRightMultiplicit, rightMultiplicit)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT: + return getLeftMultiplicit(); + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT: + return getRightMultiplicit(); + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT: + setLeftMultiplicit((ALSMultiplicity)newValue); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT: + setRightMultiplicit((ALSMultiplicity)newValue); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT: + setLeftMultiplicit(LEFT_MULTIPLICIT_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT: + setRightMultiplicit(RIGHT_MULTIPLICIT_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT: + return leftMultiplicit != LEFT_MULTIPLICIT_EDEFAULT; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT: + return rightMultiplicit != RIGHT_MULTIPLICIT_EDEFAULT; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (leftMultiplicit: "); + result.append(leftMultiplicit); + result.append(", rightMultiplicit: "); + result.append(rightMultiplicit); + result.append(')'); + return result.toString(); + } + +} //ALSDirectProductImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDocumentImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDocumentImpl.java new file mode 100644 index 00000000..c0e4c494 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSDocumentImpl.java @@ -0,0 +1,397 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Document'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl#getEnumDeclarations Enum Declarations}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl#getSignatureBodies Signature Bodies}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl#getFunctionDefinitions Function Definitions}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl#getRelationDefinitions Relation Definitions}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl#getFactDeclarations Fact Declarations}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSDocumentImpl#getRunCommand Run Command}
  • + *
+ * + * @generated + */ +public class ALSDocumentImpl extends MinimalEObjectImpl.Container implements ALSDocument +{ + /** + * The cached value of the '{@link #getEnumDeclarations() Enum Declarations}' containment reference list. + * + * + * @see #getEnumDeclarations() + * @generated + * @ordered + */ + protected EList enumDeclarations; + + /** + * The cached value of the '{@link #getSignatureBodies() Signature Bodies}' containment reference list. + * + * + * @see #getSignatureBodies() + * @generated + * @ordered + */ + protected EList signatureBodies; + + /** + * The cached value of the '{@link #getFunctionDefinitions() Function Definitions}' containment reference list. + * + * + * @see #getFunctionDefinitions() + * @generated + * @ordered + */ + protected EList functionDefinitions; + + /** + * The cached value of the '{@link #getRelationDefinitions() Relation Definitions}' containment reference list. + * + * + * @see #getRelationDefinitions() + * @generated + * @ordered + */ + protected EList relationDefinitions; + + /** + * The cached value of the '{@link #getFactDeclarations() Fact Declarations}' containment reference list. + * + * + * @see #getFactDeclarations() + * @generated + * @ordered + */ + protected EList factDeclarations; + + /** + * The cached value of the '{@link #getRunCommand() Run Command}' containment reference. + * + * + * @see #getRunCommand() + * @generated + * @ordered + */ + protected ALSRunCommand runCommand; + + /** + * + * + * @generated + */ + protected ALSDocumentImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_DOCUMENT; + } + + /** + * + * + * @generated + */ + public EList getEnumDeclarations() + { + if (enumDeclarations == null) + { + enumDeclarations = new EObjectContainmentEList(ALSEnumDeclaration.class, this, AlloyLanguagePackage.ALS_DOCUMENT__ENUM_DECLARATIONS); + } + return enumDeclarations; + } + + /** + * + * + * @generated + */ + public EList getSignatureBodies() + { + if (signatureBodies == null) + { + signatureBodies = new EObjectContainmentEList(ALSSignatureBody.class, this, AlloyLanguagePackage.ALS_DOCUMENT__SIGNATURE_BODIES); + } + return signatureBodies; + } + + /** + * + * + * @generated + */ + public EList getFunctionDefinitions() + { + if (functionDefinitions == null) + { + functionDefinitions = new EObjectContainmentEList(ALSFunctionDefinition.class, this, AlloyLanguagePackage.ALS_DOCUMENT__FUNCTION_DEFINITIONS); + } + return functionDefinitions; + } + + /** + * + * + * @generated + */ + public EList getRelationDefinitions() + { + if (relationDefinitions == null) + { + relationDefinitions = new EObjectContainmentEList(ALSRelationDefinition.class, this, AlloyLanguagePackage.ALS_DOCUMENT__RELATION_DEFINITIONS); + } + return relationDefinitions; + } + + /** + * + * + * @generated + */ + public EList getFactDeclarations() + { + if (factDeclarations == null) + { + factDeclarations = new EObjectContainmentEList(ALSFactDeclaration.class, this, AlloyLanguagePackage.ALS_DOCUMENT__FACT_DECLARATIONS); + } + return factDeclarations; + } + + /** + * + * + * @generated + */ + public ALSRunCommand getRunCommand() + { + return runCommand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRunCommand(ALSRunCommand newRunCommand, NotificationChain msgs) + { + ALSRunCommand oldRunCommand = runCommand; + runCommand = newRunCommand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND, oldRunCommand, newRunCommand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRunCommand(ALSRunCommand newRunCommand) + { + if (newRunCommand != runCommand) + { + NotificationChain msgs = null; + if (runCommand != null) + msgs = ((InternalEObject)runCommand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND, null, msgs); + if (newRunCommand != null) + msgs = ((InternalEObject)newRunCommand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND, null, msgs); + msgs = basicSetRunCommand(newRunCommand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND, newRunCommand, newRunCommand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DOCUMENT__ENUM_DECLARATIONS: + return ((InternalEList)getEnumDeclarations()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_DOCUMENT__SIGNATURE_BODIES: + return ((InternalEList)getSignatureBodies()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_DOCUMENT__FUNCTION_DEFINITIONS: + return ((InternalEList)getFunctionDefinitions()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_DOCUMENT__RELATION_DEFINITIONS: + return ((InternalEList)getRelationDefinitions()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_DOCUMENT__FACT_DECLARATIONS: + return ((InternalEList)getFactDeclarations()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND: + return basicSetRunCommand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DOCUMENT__ENUM_DECLARATIONS: + return getEnumDeclarations(); + case AlloyLanguagePackage.ALS_DOCUMENT__SIGNATURE_BODIES: + return getSignatureBodies(); + case AlloyLanguagePackage.ALS_DOCUMENT__FUNCTION_DEFINITIONS: + return getFunctionDefinitions(); + case AlloyLanguagePackage.ALS_DOCUMENT__RELATION_DEFINITIONS: + return getRelationDefinitions(); + case AlloyLanguagePackage.ALS_DOCUMENT__FACT_DECLARATIONS: + return getFactDeclarations(); + case AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND: + return getRunCommand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DOCUMENT__ENUM_DECLARATIONS: + getEnumDeclarations().clear(); + getEnumDeclarations().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__SIGNATURE_BODIES: + getSignatureBodies().clear(); + getSignatureBodies().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__FUNCTION_DEFINITIONS: + getFunctionDefinitions().clear(); + getFunctionDefinitions().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__RELATION_DEFINITIONS: + getRelationDefinitions().clear(); + getRelationDefinitions().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__FACT_DECLARATIONS: + getFactDeclarations().clear(); + getFactDeclarations().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND: + setRunCommand((ALSRunCommand)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DOCUMENT__ENUM_DECLARATIONS: + getEnumDeclarations().clear(); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__SIGNATURE_BODIES: + getSignatureBodies().clear(); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__FUNCTION_DEFINITIONS: + getFunctionDefinitions().clear(); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__RELATION_DEFINITIONS: + getRelationDefinitions().clear(); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__FACT_DECLARATIONS: + getFactDeclarations().clear(); + return; + case AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND: + setRunCommand((ALSRunCommand)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_DOCUMENT__ENUM_DECLARATIONS: + return enumDeclarations != null && !enumDeclarations.isEmpty(); + case AlloyLanguagePackage.ALS_DOCUMENT__SIGNATURE_BODIES: + return signatureBodies != null && !signatureBodies.isEmpty(); + case AlloyLanguagePackage.ALS_DOCUMENT__FUNCTION_DEFINITIONS: + return functionDefinitions != null && !functionDefinitions.isEmpty(); + case AlloyLanguagePackage.ALS_DOCUMENT__RELATION_DEFINITIONS: + return relationDefinitions != null && !relationDefinitions.isEmpty(); + case AlloyLanguagePackage.ALS_DOCUMENT__FACT_DECLARATIONS: + return factDeclarations != null && !factDeclarations.isEmpty(); + case AlloyLanguagePackage.ALS_DOCUMENT__RUN_COMMAND: + return runCommand != null; + } + return super.eIsSet(featureID); + } + +} //ALSDocumentImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumDeclarationImpl.java new file mode 100644 index 00000000..776ceb88 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumDeclarationImpl.java @@ -0,0 +1,165 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Enum Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEnumDeclarationImpl#getLiteral Literal}
  • + *
+ * + * @generated + */ +public class ALSEnumDeclarationImpl extends ALSTypeDeclarationImpl implements ALSEnumDeclaration +{ + /** + * The cached value of the '{@link #getLiteral() Literal}' containment reference list. + * + * + * @see #getLiteral() + * @generated + * @ordered + */ + protected EList literal; + + /** + * + * + * @generated + */ + protected ALSEnumDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_ENUM_DECLARATION; + } + + /** + * + * + * @generated + */ + public EList getLiteral() + { + if (literal == null) + { + literal = new EObjectContainmentEList(ALSEnumLiteral.class, this, AlloyLanguagePackage.ALS_ENUM_DECLARATION__LITERAL); + } + return literal; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_ENUM_DECLARATION__LITERAL: + return ((InternalEList)getLiteral()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_ENUM_DECLARATION__LITERAL: + return getLiteral(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_ENUM_DECLARATION__LITERAL: + getLiteral().clear(); + getLiteral().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_ENUM_DECLARATION__LITERAL: + getLiteral().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_ENUM_DECLARATION__LITERAL: + return literal != null && !literal.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ALSEnumDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumLiteralImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumLiteralImpl.java new file mode 100644 index 00000000..59cde373 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEnumLiteralImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Enum Literal'. + * + * + * @generated + */ +public class ALSEnumLiteralImpl extends ALSRelationDeclarationImpl implements ALSEnumLiteral +{ + /** + * + * + * @generated + */ + protected ALSEnumLiteralImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_ENUM_LITERAL; + } + +} //ALSEnumLiteralImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEqualsImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEqualsImpl.java new file mode 100644 index 00000000..8e61050b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSEqualsImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Equals'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEqualsImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSEqualsImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSEqualsImpl extends ALSTermImpl implements ALSEquals +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSEqualsImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_EQUALS; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_EQUALS__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_EQUALS__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSEqualsImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFactDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFactDeclarationImpl.java new file mode 100644 index 00000000..dad737b8 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFactDeclarationImpl.java @@ -0,0 +1,265 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'ALS Fact Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFactDeclarationImpl#getName Name}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFactDeclarationImpl#getTerm Term}
  • + *
+ * + * @generated + */ +public class ALSFactDeclarationImpl extends MinimalEObjectImpl.Container implements ALSFactDeclaration +{ + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getTerm() Term}' containment reference. + * + * + * @see #getTerm() + * @generated + * @ordered + */ + protected ALSTerm term; + + /** + * + * + * @generated + */ + protected ALSFactDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_FACT_DECLARATION; + } + + /** + * + * + * @generated + */ + public String getName() + { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FACT_DECLARATION__NAME, oldName, name)); + } + + /** + * + * + * @generated + */ + public ALSTerm getTerm() + { + return term; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTerm(ALSTerm newTerm, NotificationChain msgs) + { + ALSTerm oldTerm = term; + term = newTerm; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM, oldTerm, newTerm); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setTerm(ALSTerm newTerm) + { + if (newTerm != term) + { + NotificationChain msgs = null; + if (term != null) + msgs = ((InternalEObject)term).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM, null, msgs); + if (newTerm != null) + msgs = ((InternalEObject)newTerm).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM, null, msgs); + msgs = basicSetTerm(newTerm, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM, newTerm, newTerm)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM: + return basicSetTerm(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FACT_DECLARATION__NAME: + return getName(); + case AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM: + return getTerm(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FACT_DECLARATION__NAME: + setName((String)newValue); + return; + case AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM: + setTerm((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FACT_DECLARATION__NAME: + setName(NAME_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM: + setTerm((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FACT_DECLARATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case AlloyLanguagePackage.ALS_FACT_DECLARATION__TERM: + return term != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ALSFactDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFieldDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFieldDeclarationImpl.java new file mode 100644 index 00000000..22e551bb --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFieldDeclarationImpl.java @@ -0,0 +1,265 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Field Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFieldDeclarationImpl#getMultiplicity Multiplicity}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFieldDeclarationImpl#getType Type}
  • + *
+ * + * @generated + */ +public class ALSFieldDeclarationImpl extends ALSRelationDeclarationImpl implements ALSFieldDeclaration +{ + /** + * The default value of the '{@link #getMultiplicity() Multiplicity}' attribute. + * + * + * @see #getMultiplicity() + * @generated + * @ordered + */ + protected static final ALSMultiplicity MULTIPLICITY_EDEFAULT = ALSMultiplicity.ALL; + + /** + * The cached value of the '{@link #getMultiplicity() Multiplicity}' attribute. + * + * + * @see #getMultiplicity() + * @generated + * @ordered + */ + protected ALSMultiplicity multiplicity = MULTIPLICITY_EDEFAULT; + + /** + * The cached value of the '{@link #getType() Type}' containment reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected ALSTerm type; + + /** + * + * + * @generated + */ + protected ALSFieldDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_FIELD_DECLARATION; + } + + /** + * + * + * @generated + */ + public ALSMultiplicity getMultiplicity() + { + return multiplicity; + } + + /** + * + * + * @generated + */ + public void setMultiplicity(ALSMultiplicity newMultiplicity) + { + ALSMultiplicity oldMultiplicity = multiplicity; + multiplicity = newMultiplicity == null ? MULTIPLICITY_EDEFAULT : newMultiplicity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FIELD_DECLARATION__MULTIPLICITY, oldMultiplicity, multiplicity)); + } + + /** + * + * + * @generated + */ + public ALSTerm getType() + { + return type; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetType(ALSTerm newType, NotificationChain msgs) + { + ALSTerm oldType = type; + type = newType; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE, oldType, newType); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setType(ALSTerm newType) + { + if (newType != type) + { + NotificationChain msgs = null; + if (type != null) + msgs = ((InternalEObject)type).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE, null, msgs); + if (newType != null) + msgs = ((InternalEObject)newType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE, null, msgs); + msgs = basicSetType(newType, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE, newType, newType)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE: + return basicSetType(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__MULTIPLICITY: + return getMultiplicity(); + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE: + return getType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__MULTIPLICITY: + setMultiplicity((ALSMultiplicity)newValue); + return; + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE: + setType((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__MULTIPLICITY: + setMultiplicity(MULTIPLICITY_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE: + setType((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__MULTIPLICITY: + return multiplicity != MULTIPLICITY_EDEFAULT; + case AlloyLanguagePackage.ALS_FIELD_DECLARATION__TYPE: + return type != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (multiplicity: "); + result.append(multiplicity); + result.append(')'); + return result.toString(); + } + +} //ALSFieldDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionCallImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionCallImpl.java new file mode 100644 index 00000000..e602f63b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionCallImpl.java @@ -0,0 +1,306 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Function Call'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl#getReferredDefinition Referred Definition}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl#getReferredNumericOperator Referred Numeric Operator}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionCallImpl#getParams Params}
  • + *
+ * + * @generated + */ +public class ALSFunctionCallImpl extends ALSTermImpl implements ALSFunctionCall +{ + /** + * The cached value of the '{@link #getReferredDefinition() Referred Definition}' reference. + * + * + * @see #getReferredDefinition() + * @generated + * @ordered + */ + protected ALSDefinition referredDefinition; + + /** + * The default value of the '{@link #getReferredNumericOperator() Referred Numeric Operator}' attribute. + * + * + * @see #getReferredNumericOperator() + * @generated + * @ordered + */ + protected static final ALSNumericOperator REFERRED_NUMERIC_OPERATOR_EDEFAULT = ALSNumericOperator.PLUS; + + /** + * The cached value of the '{@link #getReferredNumericOperator() Referred Numeric Operator}' attribute. + * + * + * @see #getReferredNumericOperator() + * @generated + * @ordered + */ + protected ALSNumericOperator referredNumericOperator = REFERRED_NUMERIC_OPERATOR_EDEFAULT; + + /** + * The cached value of the '{@link #getParams() Params}' containment reference list. + * + * + * @see #getParams() + * @generated + * @ordered + */ + protected EList params; + + /** + * + * + * @generated + */ + protected ALSFunctionCallImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_FUNCTION_CALL; + } + + /** + * + * + * @generated + */ + public ALSDefinition getReferredDefinition() + { + if (referredDefinition != null && referredDefinition.eIsProxy()) + { + InternalEObject oldReferredDefinition = (InternalEObject)referredDefinition; + referredDefinition = (ALSDefinition)eResolveProxy(oldReferredDefinition); + if (referredDefinition != oldReferredDefinition) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_DEFINITION, oldReferredDefinition, referredDefinition)); + } + } + return referredDefinition; + } + + /** + * + * + * @generated + */ + public ALSDefinition basicGetReferredDefinition() + { + return referredDefinition; + } + + /** + * + * + * @generated + */ + public void setReferredDefinition(ALSDefinition newReferredDefinition) + { + ALSDefinition oldReferredDefinition = referredDefinition; + referredDefinition = newReferredDefinition; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_DEFINITION, oldReferredDefinition, referredDefinition)); + } + + /** + * + * + * @generated + */ + public ALSNumericOperator getReferredNumericOperator() + { + return referredNumericOperator; + } + + /** + * + * + * @generated + */ + public void setReferredNumericOperator(ALSNumericOperator newReferredNumericOperator) + { + ALSNumericOperator oldReferredNumericOperator = referredNumericOperator; + referredNumericOperator = newReferredNumericOperator == null ? REFERRED_NUMERIC_OPERATOR_EDEFAULT : newReferredNumericOperator; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR, oldReferredNumericOperator, referredNumericOperator)); + } + + /** + * + * + * @generated + */ + public EList getParams() + { + if (params == null) + { + params = new EObjectContainmentEList(ALSTerm.class, this, AlloyLanguagePackage.ALS_FUNCTION_CALL__PARAMS); + } + return params; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_CALL__PARAMS: + return ((InternalEList)getParams()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_DEFINITION: + if (resolve) return getReferredDefinition(); + return basicGetReferredDefinition(); + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR: + return getReferredNumericOperator(); + case AlloyLanguagePackage.ALS_FUNCTION_CALL__PARAMS: + return getParams(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_DEFINITION: + setReferredDefinition((ALSDefinition)newValue); + return; + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR: + setReferredNumericOperator((ALSNumericOperator)newValue); + return; + case AlloyLanguagePackage.ALS_FUNCTION_CALL__PARAMS: + getParams().clear(); + getParams().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_DEFINITION: + setReferredDefinition((ALSDefinition)null); + return; + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR: + setReferredNumericOperator(REFERRED_NUMERIC_OPERATOR_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_FUNCTION_CALL__PARAMS: + getParams().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_DEFINITION: + return referredDefinition != null; + case AlloyLanguagePackage.ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR: + return referredNumericOperator != REFERRED_NUMERIC_OPERATOR_EDEFAULT; + case AlloyLanguagePackage.ALS_FUNCTION_CALL__PARAMS: + return params != null && !params.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (referredNumericOperator: "); + result.append(referredNumericOperator); + result.append(')'); + return result.toString(); + } + +} //ALSFunctionCallImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionDefinitionImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionDefinitionImpl.java new file mode 100644 index 00000000..3256eee1 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSFunctionDefinitionImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Function Definition'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSFunctionDefinitionImpl#getType Type}
  • + *
+ * + * @generated + */ +public class ALSFunctionDefinitionImpl extends ALSDefinitionImpl implements ALSFunctionDefinition +{ + /** + * The cached value of the '{@link #getType() Type}' containment reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected ALSTerm type; + + /** + * + * + * @generated + */ + protected ALSFunctionDefinitionImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_FUNCTION_DEFINITION; + } + + /** + * + * + * @generated + */ + public ALSTerm getType() + { + return type; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetType(ALSTerm newType, NotificationChain msgs) + { + ALSTerm oldType = type; + type = newType; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE, oldType, newType); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setType(ALSTerm newType) + { + if (newType != type) + { + NotificationChain msgs = null; + if (type != null) + msgs = ((InternalEObject)type).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE, null, msgs); + if (newType != null) + msgs = ((InternalEObject)newType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE, null, msgs); + msgs = basicSetType(newType, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE, newType, newType)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE: + return basicSetType(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE: + return getType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE: + setType((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE: + setType((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION__TYPE: + return type != null; + } + return super.eIsSet(featureID); + } + +} //ALSFunctionDefinitionImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIdenImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIdenImpl.java new file mode 100644 index 00000000..24b72beb --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIdenImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Iden'. + * + * + * @generated + */ +public class ALSIdenImpl extends ALSTermImpl implements ALSIden +{ + /** + * + * + * @generated + */ + protected ALSIdenImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_IDEN; + } + +} //ALSIdenImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIffImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIffImpl.java new file mode 100644 index 00000000..ac2b73e6 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIffImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Iff'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIffImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIffImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSIffImpl extends ALSTermImpl implements ALSIff +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSIffImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_IFF; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IFF__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_IFF__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSIffImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSImplImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSImplImpl.java new file mode 100644 index 00000000..27623e4f --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSImplImpl.java @@ -0,0 +1,335 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Impl'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl#getRightOperand Right Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSImplImpl#getElseOperand Else Operand}
  • + *
+ * + * @generated + */ +public class ALSImplImpl extends ALSTermImpl implements ALSImpl +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * The cached value of the '{@link #getElseOperand() Else Operand}' containment reference. + * + * + * @see #getElseOperand() + * @generated + * @ordered + */ + protected ALSTerm elseOperand; + + /** + * + * + * @generated + */ + protected ALSImplImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_IMPL; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getElseOperand() + { + return elseOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetElseOperand(ALSTerm newElseOperand, NotificationChain msgs) + { + ALSTerm oldElseOperand = elseOperand; + elseOperand = newElseOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND, oldElseOperand, newElseOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setElseOperand(ALSTerm newElseOperand) + { + if (newElseOperand != elseOperand) + { + NotificationChain msgs = null; + if (elseOperand != null) + msgs = ((InternalEObject)elseOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND, null, msgs); + if (newElseOperand != null) + msgs = ((InternalEObject)newElseOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND, null, msgs); + msgs = basicSetElseOperand(newElseOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND, newElseOperand, newElseOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + case AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND: + return basicSetElseOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND: + return getRightOperand(); + case AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND: + return getElseOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND: + setElseOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND: + setElseOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_IMPL__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_IMPL__RIGHT_OPERAND: + return rightOperand != null; + case AlloyLanguagePackage.ALS_IMPL__ELSE_OPERAND: + return elseOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSImplImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntImpl.java new file mode 100644 index 00000000..5e6cf044 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Int'. + * + * + * @generated + */ +public class ALSIntImpl extends ALSTermImpl implements ALSInt +{ + /** + * + * + * @generated + */ + protected ALSIntImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_INT; + } + +} //ALSIntImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntScopeImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntScopeImpl.java new file mode 100644 index 00000000..4e6fd9d5 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntScopeImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Int Scope'. + * + * + * @generated + */ +public class ALSIntScopeImpl extends ALSTypeScopeImpl implements ALSIntScope +{ + /** + * + * + * @generated + */ + protected ALSIntScopeImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_INT_SCOPE; + } + +} //ALSIntScopeImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntersectionImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntersectionImpl.java new file mode 100644 index 00000000..31003505 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSIntersectionImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Intersection'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntersectionImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSIntersectionImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSIntersectionImpl extends ALSTermImpl implements ALSIntersection +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSIntersectionImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_INTERSECTION; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INTERSECTION__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_INTERSECTION__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSIntersectionImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSInverseRelationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSInverseRelationImpl.java new file mode 100644 index 00000000..06bdc39b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSInverseRelationImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Inverse Relation'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSInverseRelationImpl#getOperand Operand}
  • + *
+ * + * @generated + */ +public class ALSInverseRelationImpl extends ALSTermImpl implements ALSInverseRelation +{ + /** + * The cached value of the '{@link #getOperand() Operand}' containment reference. + * + * + * @see #getOperand() + * @generated + * @ordered + */ + protected ALSTerm operand; + + /** + * + * + * @generated + */ + protected ALSInverseRelationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_INVERSE_RELATION; + } + + /** + * + * + * @generated + */ + public ALSTerm getOperand() + { + return operand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetOperand(ALSTerm newOperand, NotificationChain msgs) + { + ALSTerm oldOperand = operand; + operand = newOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND, oldOperand, newOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setOperand(ALSTerm newOperand) + { + if (newOperand != operand) + { + NotificationChain msgs = null; + if (operand != null) + msgs = ((InternalEObject)operand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND, null, msgs); + if (newOperand != null) + msgs = ((InternalEObject)newOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND, null, msgs); + msgs = basicSetOperand(newOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND, newOperand, newOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND: + return basicSetOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND: + return getOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND: + setOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND: + setOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_INVERSE_RELATION__OPERAND: + return operand != null; + } + return super.eIsSet(featureID); + } + +} //ALSInverseRelationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSJoinImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSJoinImpl.java new file mode 100644 index 00000000..d640651b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSJoinImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Join'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSJoinImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSJoinImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSJoinImpl extends ALSTermImpl implements ALSJoin +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSJoinImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_JOIN; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_JOIN__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_JOIN__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSJoinImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLeqImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLeqImpl.java new file mode 100644 index 00000000..92162fd6 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLeqImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Leq'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLeqImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLeqImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSLeqImpl extends ALSTermImpl implements ALSLeq +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSLeqImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_LEQ; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LEQ__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_LEQ__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSLeqImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLessImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLessImpl.java new file mode 100644 index 00000000..5e1f3c42 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSLessImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Less'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLessImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSLessImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSLessImpl extends ALSTermImpl implements ALSLess +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSLessImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_LESS; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_LESS__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_LESS__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSLessImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMeqImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMeqImpl.java new file mode 100644 index 00000000..bb21bc9b --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMeqImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Meq'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMeqImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMeqImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSMeqImpl extends ALSTermImpl implements ALSMeq +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSMeqImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_MEQ; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MEQ__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_MEQ__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSMeqImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMinusImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMinusImpl.java new file mode 100644 index 00000000..b516a309 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMinusImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Minus'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMinusImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMinusImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSMinusImpl extends ALSTermImpl implements ALSMinus +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSMinusImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_MINUS; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MINUS__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_MINUS__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSMinusImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMoreImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMoreImpl.java new file mode 100644 index 00000000..b37bbb1f --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSMoreImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS More'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMoreImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSMoreImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSMoreImpl extends ALSTermImpl implements ALSMore +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSMoreImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_MORE; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_MORE__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_MORE__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSMoreImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNoneImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNoneImpl.java new file mode 100644 index 00000000..3e58d2ef --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNoneImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS None'. + * + * + * @generated + */ +public class ALSNoneImpl extends ALSTermImpl implements ALSNone +{ + /** + * + * + * @generated + */ + protected ALSNoneImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_NONE; + } + +} //ALSNoneImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotEqualsImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotEqualsImpl.java new file mode 100644 index 00000000..58960928 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotEqualsImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Not Equals'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotEqualsImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotEqualsImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSNotEqualsImpl extends ALSTermImpl implements ALSNotEquals +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSNotEqualsImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_NOT_EQUALS; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT_EQUALS__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_NOT_EQUALS__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSNotEqualsImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotImpl.java new file mode 100644 index 00000000..80c6d887 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNotImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Not'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNotImpl#getOperand Operand}
  • + *
+ * + * @generated + */ +public class ALSNotImpl extends ALSTermImpl implements ALSNot +{ + /** + * The cached value of the '{@link #getOperand() Operand}' containment reference. + * + * + * @see #getOperand() + * @generated + * @ordered + */ + protected ALSTerm operand; + + /** + * + * + * @generated + */ + protected ALSNotImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_NOT; + } + + /** + * + * + * @generated + */ + public ALSTerm getOperand() + { + return operand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetOperand(ALSTerm newOperand, NotificationChain msgs) + { + ALSTerm oldOperand = operand; + operand = newOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NOT__OPERAND, oldOperand, newOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setOperand(ALSTerm newOperand) + { + if (newOperand != operand) + { + NotificationChain msgs = null; + if (operand != null) + msgs = ((InternalEObject)operand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_NOT__OPERAND, null, msgs); + if (newOperand != null) + msgs = ((InternalEObject)newOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_NOT__OPERAND, null, msgs); + msgs = basicSetOperand(newOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NOT__OPERAND, newOperand, newOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT__OPERAND: + return basicSetOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT__OPERAND: + return getOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT__OPERAND: + setOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT__OPERAND: + setOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NOT__OPERAND: + return operand != null; + } + return super.eIsSet(featureID); + } + +} //ALSNotImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNumberLiteralImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNumberLiteralImpl.java new file mode 100644 index 00000000..b0ae95f1 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSNumberLiteralImpl.java @@ -0,0 +1,176 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Number Literal'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSNumberLiteralImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class ALSNumberLiteralImpl extends ALSTermImpl implements ALSNumberLiteral +{ + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final int VALUE_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected int value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected ALSNumberLiteralImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_NUMBER_LITERAL; + } + + /** + * + * + * @generated + */ + public int getValue() + { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(int newValue) + { + int oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_NUMBER_LITERAL__VALUE, oldValue, value)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NUMBER_LITERAL__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NUMBER_LITERAL__VALUE: + setValue((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NUMBER_LITERAL__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_NUMBER_LITERAL__VALUE: + return value != VALUE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //ALSNumberLiteralImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOrImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOrImpl.java new file mode 100644 index 00000000..0c6556e4 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOrImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Or'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOrImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOrImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSOrImpl extends ALSTermImpl implements ALSOr +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSOrImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_OR; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OR__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OR__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OR__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OR__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OR__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OR__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OR__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OR__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OR__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_OR__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSOrImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOverrideImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOverrideImpl.java new file mode 100644 index 00000000..11f8f6b4 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSOverrideImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Override'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOverrideImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSOverrideImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSOverrideImpl extends ALSTermImpl implements ALSOverride +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSOverrideImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_OVERRIDE; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_OVERRIDE__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_OVERRIDE__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSOverrideImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSPlusImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSPlusImpl.java new file mode 100644 index 00000000..5cd4f229 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSPlusImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Plus'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSPlusImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSPlusImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSPlusImpl extends ALSTermImpl implements ALSPlus +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSPlusImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_PLUS; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_PLUS__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_PLUS__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSPlusImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSQuantifiedExImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSQuantifiedExImpl.java new file mode 100644 index 00000000..120f07fa --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSQuantifiedExImpl.java @@ -0,0 +1,368 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Quantified Ex'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl#getType Type}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl#isDisj Disj}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl#getVariables Variables}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSQuantifiedExImpl#getExpression Expression}
  • + *
+ * + * @generated + */ +public class ALSQuantifiedExImpl extends ALSTermImpl implements ALSQuantifiedEx +{ + /** + * The default value of the '{@link #getType() Type}' attribute. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected static final ALSMultiplicity TYPE_EDEFAULT = ALSMultiplicity.ALL; + + /** + * The cached value of the '{@link #getType() Type}' attribute. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected ALSMultiplicity type = TYPE_EDEFAULT; + + /** + * The default value of the '{@link #isDisj() Disj}' attribute. + * + * + * @see #isDisj() + * @generated + * @ordered + */ + protected static final boolean DISJ_EDEFAULT = false; + + /** + * The cached value of the '{@link #isDisj() Disj}' attribute. + * + * + * @see #isDisj() + * @generated + * @ordered + */ + protected boolean disj = DISJ_EDEFAULT; + + /** + * The cached value of the '{@link #getVariables() Variables}' containment reference list. + * + * + * @see #getVariables() + * @generated + * @ordered + */ + protected EList variables; + + /** + * The cached value of the '{@link #getExpression() Expression}' containment reference. + * + * + * @see #getExpression() + * @generated + * @ordered + */ + protected ALSTerm expression; + + /** + * + * + * @generated + */ + protected ALSQuantifiedExImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_QUANTIFIED_EX; + } + + /** + * + * + * @generated + */ + public ALSMultiplicity getType() + { + return type; + } + + /** + * + * + * @generated + */ + public void setType(ALSMultiplicity newType) + { + ALSMultiplicity oldType = type; + type = newType == null ? TYPE_EDEFAULT : newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_QUANTIFIED_EX__TYPE, oldType, type)); + } + + /** + * + * + * @generated + */ + public boolean isDisj() + { + return disj; + } + + /** + * + * + * @generated + */ + public void setDisj(boolean newDisj) + { + boolean oldDisj = disj; + disj = newDisj; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_QUANTIFIED_EX__DISJ, oldDisj, disj)); + } + + /** + * + * + * @generated + */ + public EList getVariables() + { + if (variables == null) + { + variables = new EObjectContainmentEList(ALSVariableDeclaration.class, this, AlloyLanguagePackage.ALS_QUANTIFIED_EX__VARIABLES); + } + return variables; + } + + /** + * + * + * @generated + */ + public ALSTerm getExpression() + { + return expression; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetExpression(ALSTerm newExpression, NotificationChain msgs) + { + ALSTerm oldExpression = expression; + expression = newExpression; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION, oldExpression, newExpression); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setExpression(ALSTerm newExpression) + { + if (newExpression != expression) + { + NotificationChain msgs = null; + if (expression != null) + msgs = ((InternalEObject)expression).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION, null, msgs); + if (newExpression != null) + msgs = ((InternalEObject)newExpression).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION, null, msgs); + msgs = basicSetExpression(newExpression, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION, newExpression, newExpression)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__VARIABLES: + return ((InternalEList)getVariables()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION: + return basicSetExpression(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__TYPE: + return getType(); + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__DISJ: + return isDisj(); + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__VARIABLES: + return getVariables(); + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION: + return getExpression(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__TYPE: + setType((ALSMultiplicity)newValue); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__DISJ: + setDisj((Boolean)newValue); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__VARIABLES: + getVariables().clear(); + getVariables().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION: + setExpression((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__TYPE: + setType(TYPE_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__DISJ: + setDisj(DISJ_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__VARIABLES: + getVariables().clear(); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION: + setExpression((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__TYPE: + return type != TYPE_EDEFAULT; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__DISJ: + return disj != DISJ_EDEFAULT; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__VARIABLES: + return variables != null && !variables.isEmpty(); + case AlloyLanguagePackage.ALS_QUANTIFIED_EX__EXPRESSION: + return expression != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (type: "); + result.append(type); + result.append(", disj: "); + result.append(disj); + result.append(')'); + return result.toString(); + } + +} //ALSQuantifiedExImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionLeftImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionLeftImpl.java new file mode 100644 index 00000000..7530740d --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionLeftImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Range Restriction Left'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionLeftImpl#getFilter Filter}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionLeftImpl#getRelation Relation}
  • + *
+ * + * @generated + */ +public class ALSRangeRestrictionLeftImpl extends ALSTermImpl implements ALSRangeRestrictionLeft +{ + /** + * The cached value of the '{@link #getFilter() Filter}' containment reference. + * + * + * @see #getFilter() + * @generated + * @ordered + */ + protected ALSTerm filter; + + /** + * The cached value of the '{@link #getRelation() Relation}' containment reference. + * + * + * @see #getRelation() + * @generated + * @ordered + */ + protected ALSTerm relation; + + /** + * + * + * @generated + */ + protected ALSRangeRestrictionLeftImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_LEFT; + } + + /** + * + * + * @generated + */ + public ALSTerm getFilter() + { + return filter; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFilter(ALSTerm newFilter, NotificationChain msgs) + { + ALSTerm oldFilter = filter; + filter = newFilter; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER, oldFilter, newFilter); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setFilter(ALSTerm newFilter) + { + if (newFilter != filter) + { + NotificationChain msgs = null; + if (filter != null) + msgs = ((InternalEObject)filter).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER, null, msgs); + if (newFilter != null) + msgs = ((InternalEObject)newFilter).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER, null, msgs); + msgs = basicSetFilter(newFilter, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER, newFilter, newFilter)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRelation() + { + return relation; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRelation(ALSTerm newRelation, NotificationChain msgs) + { + ALSTerm oldRelation = relation; + relation = newRelation; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION, oldRelation, newRelation); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRelation(ALSTerm newRelation) + { + if (newRelation != relation) + { + NotificationChain msgs = null; + if (relation != null) + msgs = ((InternalEObject)relation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION, null, msgs); + if (newRelation != null) + msgs = ((InternalEObject)newRelation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION, null, msgs); + msgs = basicSetRelation(newRelation, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION, newRelation, newRelation)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER: + return basicSetFilter(null, msgs); + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION: + return basicSetRelation(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER: + return getFilter(); + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION: + return getRelation(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER: + setFilter((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION: + setRelation((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER: + setFilter((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION: + setRelation((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__FILTER: + return filter != null; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT__RELATION: + return relation != null; + } + return super.eIsSet(featureID); + } + +} //ALSRangeRestrictionLeftImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionRightImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionRightImpl.java new file mode 100644 index 00000000..e1c746c6 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRangeRestrictionRightImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Range Restriction Right'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionRightImpl#getRelation Relation}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRangeRestrictionRightImpl#getFilter Filter}
  • + *
+ * + * @generated + */ +public class ALSRangeRestrictionRightImpl extends ALSTermImpl implements ALSRangeRestrictionRight +{ + /** + * The cached value of the '{@link #getRelation() Relation}' containment reference. + * + * + * @see #getRelation() + * @generated + * @ordered + */ + protected ALSTerm relation; + + /** + * The cached value of the '{@link #getFilter() Filter}' containment reference. + * + * + * @see #getFilter() + * @generated + * @ordered + */ + protected ALSTerm filter; + + /** + * + * + * @generated + */ + protected ALSRangeRestrictionRightImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_RIGHT; + } + + /** + * + * + * @generated + */ + public ALSTerm getRelation() + { + return relation; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRelation(ALSTerm newRelation, NotificationChain msgs) + { + ALSTerm oldRelation = relation; + relation = newRelation; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION, oldRelation, newRelation); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRelation(ALSTerm newRelation) + { + if (newRelation != relation) + { + NotificationChain msgs = null; + if (relation != null) + msgs = ((InternalEObject)relation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION, null, msgs); + if (newRelation != null) + msgs = ((InternalEObject)newRelation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION, null, msgs); + msgs = basicSetRelation(newRelation, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION, newRelation, newRelation)); + } + + /** + * + * + * @generated + */ + public ALSTerm getFilter() + { + return filter; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFilter(ALSTerm newFilter, NotificationChain msgs) + { + ALSTerm oldFilter = filter; + filter = newFilter; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER, oldFilter, newFilter); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setFilter(ALSTerm newFilter) + { + if (newFilter != filter) + { + NotificationChain msgs = null; + if (filter != null) + msgs = ((InternalEObject)filter).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER, null, msgs); + if (newFilter != null) + msgs = ((InternalEObject)newFilter).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER, null, msgs); + msgs = basicSetFilter(newFilter, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER, newFilter, newFilter)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION: + return basicSetRelation(null, msgs); + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER: + return basicSetFilter(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION: + return getRelation(); + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER: + return getFilter(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION: + setRelation((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER: + setFilter((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION: + setRelation((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER: + setFilter((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__RELATION: + return relation != null; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT__FILTER: + return filter != null; + } + return super.eIsSet(featureID); + } + +} //ALSRangeRestrictionRightImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReferenceImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReferenceImpl.java new file mode 100644 index 00000000..95da5c87 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReferenceImpl.java @@ -0,0 +1,172 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Reference'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReferenceImpl#getReferred Referred}
  • + *
+ * + * @generated + */ +public class ALSReferenceImpl extends ALSTermImpl implements ALSReference +{ + /** + * The cached value of the '{@link #getReferred() Referred}' reference. + * + * + * @see #getReferred() + * @generated + * @ordered + */ + protected ALSRelationDeclaration referred; + + /** + * + * + * @generated + */ + protected ALSReferenceImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_REFERENCE; + } + + /** + * + * + * @generated + */ + public ALSRelationDeclaration getReferred() + { + if (referred != null && referred.eIsProxy()) + { + InternalEObject oldReferred = (InternalEObject)referred; + referred = (ALSRelationDeclaration)eResolveProxy(oldReferred); + if (referred != oldReferred) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, AlloyLanguagePackage.ALS_REFERENCE__REFERRED, oldReferred, referred)); + } + } + return referred; + } + + /** + * + * + * @generated + */ + public ALSRelationDeclaration basicGetReferred() + { + return referred; + } + + /** + * + * + * @generated + */ + public void setReferred(ALSRelationDeclaration newReferred) + { + ALSRelationDeclaration oldReferred = referred; + referred = newReferred; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_REFERENCE__REFERRED, oldReferred, referred)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFERENCE__REFERRED: + if (resolve) return getReferred(); + return basicGetReferred(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFERENCE__REFERRED: + setReferred((ALSRelationDeclaration)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFERENCE__REFERRED: + setReferred((ALSRelationDeclaration)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFERENCE__REFERRED: + return referred != null; + } + return super.eIsSet(featureID); + } + +} //ALSReferenceImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReflectiveTransitiveClosureImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReflectiveTransitiveClosureImpl.java new file mode 100644 index 00000000..70744faa --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSReflectiveTransitiveClosureImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Reflective Transitive Closure'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSReflectiveTransitiveClosureImpl#getOperand Operand}
  • + *
+ * + * @generated + */ +public class ALSReflectiveTransitiveClosureImpl extends ALSTermImpl implements ALSReflectiveTransitiveClosure +{ + /** + * The cached value of the '{@link #getOperand() Operand}' containment reference. + * + * + * @see #getOperand() + * @generated + * @ordered + */ + protected ALSTerm operand; + + /** + * + * + * @generated + */ + protected ALSReflectiveTransitiveClosureImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_REFLECTIVE_TRANSITIVE_CLOSURE; + } + + /** + * + * + * @generated + */ + public ALSTerm getOperand() + { + return operand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetOperand(ALSTerm newOperand, NotificationChain msgs) + { + ALSTerm oldOperand = operand; + operand = newOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND, oldOperand, newOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setOperand(ALSTerm newOperand) + { + if (newOperand != operand) + { + NotificationChain msgs = null; + if (operand != null) + msgs = ((InternalEObject)operand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND, null, msgs); + if (newOperand != null) + msgs = ((InternalEObject)newOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND, null, msgs); + msgs = basicSetOperand(newOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND, newOperand, newOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND: + return basicSetOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND: + return getOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND: + setOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND: + setOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND: + return operand != null; + } + return super.eIsSet(featureID); + } + +} //ALSReflectiveTransitiveClosureImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDeclarationImpl.java new file mode 100644 index 00000000..27401d30 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDeclarationImpl.java @@ -0,0 +1,177 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'ALS Relation Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRelationDeclarationImpl#getName Name}
  • + *
+ * + * @generated + */ +public class ALSRelationDeclarationImpl extends MinimalEObjectImpl.Container implements ALSRelationDeclaration +{ + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected ALSRelationDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION; + } + + /** + * + * + * @generated + */ + public String getName() + { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) + { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_RELATION_DECLARATION__NAME, oldName, name)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RELATION_DECLARATION__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RELATION_DECLARATION__NAME: + setName((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RELATION_DECLARATION__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RELATION_DECLARATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ALSRelationDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDefinitionImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDefinitionImpl.java new file mode 100644 index 00000000..8e185c08 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRelationDefinitionImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Relation Definition'. + * + * + * @generated + */ +public class ALSRelationDefinitionImpl extends ALSDefinitionImpl implements ALSRelationDefinition +{ + /** + * + * + * @generated + */ + protected ALSRelationDefinitionImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_RELATION_DEFINITION; + } + +} //ALSRelationDefinitionImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRunCommandImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRunCommandImpl.java new file mode 100644 index 00000000..8dd3bbd1 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSRunCommandImpl.java @@ -0,0 +1,167 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Run Command'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSRunCommandImpl#getTypeScopes Type Scopes}
  • + *
+ * + * @generated + */ +public class ALSRunCommandImpl extends MinimalEObjectImpl.Container implements ALSRunCommand +{ + /** + * The cached value of the '{@link #getTypeScopes() Type Scopes}' containment reference list. + * + * + * @see #getTypeScopes() + * @generated + * @ordered + */ + protected EList typeScopes; + + /** + * + * + * @generated + */ + protected ALSRunCommandImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_RUN_COMMAND; + } + + /** + * + * + * @generated + */ + public EList getTypeScopes() + { + if (typeScopes == null) + { + typeScopes = new EObjectContainmentEList(ALSTypeScope.class, this, AlloyLanguagePackage.ALS_RUN_COMMAND__TYPE_SCOPES); + } + return typeScopes; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RUN_COMMAND__TYPE_SCOPES: + return ((InternalEList)getTypeScopes()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RUN_COMMAND__TYPE_SCOPES: + return getTypeScopes(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RUN_COMMAND__TYPE_SCOPES: + getTypeScopes().clear(); + getTypeScopes().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RUN_COMMAND__TYPE_SCOPES: + getTypeScopes().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_RUN_COMMAND__TYPE_SCOPES: + return typeScopes != null && !typeScopes.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ALSRunCommandImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSigScopeImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSigScopeImpl.java new file mode 100644 index 00000000..0866ba79 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSigScopeImpl.java @@ -0,0 +1,243 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Sig Scope'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSigScopeImpl#isExactly Exactly}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSigScopeImpl#getType Type}
  • + *
+ * + * @generated + */ +public class ALSSigScopeImpl extends ALSTypeScopeImpl implements ALSSigScope +{ + /** + * The default value of the '{@link #isExactly() Exactly}' attribute. + * + * + * @see #isExactly() + * @generated + * @ordered + */ + protected static final boolean EXACTLY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isExactly() Exactly}' attribute. + * + * + * @see #isExactly() + * @generated + * @ordered + */ + protected boolean exactly = EXACTLY_EDEFAULT; + + /** + * The cached value of the '{@link #getType() Type}' reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected ALSSignatureDeclaration type; + + /** + * + * + * @generated + */ + protected ALSSigScopeImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_SIG_SCOPE; + } + + /** + * + * + * @generated + */ + public boolean isExactly() + { + return exactly; + } + + /** + * + * + * @generated + */ + public void setExactly(boolean newExactly) + { + boolean oldExactly = exactly; + exactly = newExactly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SIG_SCOPE__EXACTLY, oldExactly, exactly)); + } + + /** + * + * + * @generated + */ + public ALSSignatureDeclaration getType() + { + if (type != null && type.eIsProxy()) + { + InternalEObject oldType = (InternalEObject)type; + type = (ALSSignatureDeclaration)eResolveProxy(oldType); + if (type != oldType) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, AlloyLanguagePackage.ALS_SIG_SCOPE__TYPE, oldType, type)); + } + } + return type; + } + + /** + * + * + * @generated + */ + public ALSSignatureDeclaration basicGetType() + { + return type; + } + + /** + * + * + * @generated + */ + public void setType(ALSSignatureDeclaration newType) + { + ALSSignatureDeclaration oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SIG_SCOPE__TYPE, oldType, type)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIG_SCOPE__EXACTLY: + return isExactly(); + case AlloyLanguagePackage.ALS_SIG_SCOPE__TYPE: + if (resolve) return getType(); + return basicGetType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIG_SCOPE__EXACTLY: + setExactly((Boolean)newValue); + return; + case AlloyLanguagePackage.ALS_SIG_SCOPE__TYPE: + setType((ALSSignatureDeclaration)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIG_SCOPE__EXACTLY: + setExactly(EXACTLY_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_SIG_SCOPE__TYPE: + setType((ALSSignatureDeclaration)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIG_SCOPE__EXACTLY: + return exactly != EXACTLY_EDEFAULT; + case AlloyLanguagePackage.ALS_SIG_SCOPE__TYPE: + return type != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (exactly: "); + result.append(exactly); + result.append(')'); + return result.toString(); + } + +} //ALSSigScopeImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureBodyImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureBodyImpl.java new file mode 100644 index 00000000..1b51668e --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureBodyImpl.java @@ -0,0 +1,438 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EObjectResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Signature Body'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl#getMultiplicity Multiplicity}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl#isAbstract Abstract}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl#getDeclarations Declarations}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl#getSupertype Supertype}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl#getSuperset Superset}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSignatureBodyImpl#getFields Fields}
  • + *
+ * + * @generated + */ +public class ALSSignatureBodyImpl extends MinimalEObjectImpl.Container implements ALSSignatureBody +{ + /** + * The default value of the '{@link #getMultiplicity() Multiplicity}' attribute. + * + * + * @see #getMultiplicity() + * @generated + * @ordered + */ + protected static final ALSMultiplicity MULTIPLICITY_EDEFAULT = ALSMultiplicity.ALL; + + /** + * The cached value of the '{@link #getMultiplicity() Multiplicity}' attribute. + * + * + * @see #getMultiplicity() + * @generated + * @ordered + */ + protected ALSMultiplicity multiplicity = MULTIPLICITY_EDEFAULT; + + /** + * The default value of the '{@link #isAbstract() Abstract}' attribute. + * + * + * @see #isAbstract() + * @generated + * @ordered + */ + protected static final boolean ABSTRACT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isAbstract() Abstract}' attribute. + * + * + * @see #isAbstract() + * @generated + * @ordered + */ + protected boolean abstract_ = ABSTRACT_EDEFAULT; + + /** + * The cached value of the '{@link #getDeclarations() Declarations}' containment reference list. + * + * + * @see #getDeclarations() + * @generated + * @ordered + */ + protected EList declarations; + + /** + * The cached value of the '{@link #getSupertype() Supertype}' reference. + * + * + * @see #getSupertype() + * @generated + * @ordered + */ + protected ALSSignatureDeclaration supertype; + + /** + * The cached value of the '{@link #getSuperset() Superset}' reference list. + * + * + * @see #getSuperset() + * @generated + * @ordered + */ + protected EList superset; + + /** + * The cached value of the '{@link #getFields() Fields}' containment reference list. + * + * + * @see #getFields() + * @generated + * @ordered + */ + protected EList fields; + + /** + * + * + * @generated + */ + protected ALSSignatureBodyImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_SIGNATURE_BODY; + } + + /** + * + * + * @generated + */ + public ALSMultiplicity getMultiplicity() + { + return multiplicity; + } + + /** + * + * + * @generated + */ + public void setMultiplicity(ALSMultiplicity newMultiplicity) + { + ALSMultiplicity oldMultiplicity = multiplicity; + multiplicity = newMultiplicity == null ? MULTIPLICITY_EDEFAULT : newMultiplicity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SIGNATURE_BODY__MULTIPLICITY, oldMultiplicity, multiplicity)); + } + + /** + * + * + * @generated + */ + public boolean isAbstract() + { + return abstract_; + } + + /** + * + * + * @generated + */ + public void setAbstract(boolean newAbstract) + { + boolean oldAbstract = abstract_; + abstract_ = newAbstract; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SIGNATURE_BODY__ABSTRACT, oldAbstract, abstract_)); + } + + /** + * + * + * @generated + */ + public EList getDeclarations() + { + if (declarations == null) + { + declarations = new EObjectContainmentEList(ALSSignatureDeclaration.class, this, AlloyLanguagePackage.ALS_SIGNATURE_BODY__DECLARATIONS); + } + return declarations; + } + + /** + * + * + * @generated + */ + public ALSSignatureDeclaration getSupertype() + { + if (supertype != null && supertype.eIsProxy()) + { + InternalEObject oldSupertype = (InternalEObject)supertype; + supertype = (ALSSignatureDeclaration)eResolveProxy(oldSupertype); + if (supertype != oldSupertype) + { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERTYPE, oldSupertype, supertype)); + } + } + return supertype; + } + + /** + * + * + * @generated + */ + public ALSSignatureDeclaration basicGetSupertype() + { + return supertype; + } + + /** + * + * + * @generated + */ + public void setSupertype(ALSSignatureDeclaration newSupertype) + { + ALSSignatureDeclaration oldSupertype = supertype; + supertype = newSupertype; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERTYPE, oldSupertype, supertype)); + } + + /** + * + * + * @generated + */ + public EList getSuperset() + { + if (superset == null) + { + superset = new EObjectResolvingEList(ALSSignatureDeclaration.class, this, AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERSET); + } + return superset; + } + + /** + * + * + * @generated + */ + public EList getFields() + { + if (fields == null) + { + fields = new EObjectContainmentEList(ALSFieldDeclaration.class, this, AlloyLanguagePackage.ALS_SIGNATURE_BODY__FIELDS); + } + return fields; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__DECLARATIONS: + return ((InternalEList)getDeclarations()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__FIELDS: + return ((InternalEList)getFields()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__MULTIPLICITY: + return getMultiplicity(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__ABSTRACT: + return isAbstract(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__DECLARATIONS: + return getDeclarations(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERTYPE: + if (resolve) return getSupertype(); + return basicGetSupertype(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERSET: + return getSuperset(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__FIELDS: + return getFields(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__MULTIPLICITY: + setMultiplicity((ALSMultiplicity)newValue); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__ABSTRACT: + setAbstract((Boolean)newValue); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__DECLARATIONS: + getDeclarations().clear(); + getDeclarations().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERTYPE: + setSupertype((ALSSignatureDeclaration)newValue); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERSET: + getSuperset().clear(); + getSuperset().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__FIELDS: + getFields().clear(); + getFields().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__MULTIPLICITY: + setMultiplicity(MULTIPLICITY_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__ABSTRACT: + setAbstract(ABSTRACT_EDEFAULT); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__DECLARATIONS: + getDeclarations().clear(); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERTYPE: + setSupertype((ALSSignatureDeclaration)null); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERSET: + getSuperset().clear(); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__FIELDS: + getFields().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__MULTIPLICITY: + return multiplicity != MULTIPLICITY_EDEFAULT; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__ABSTRACT: + return abstract_ != ABSTRACT_EDEFAULT; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__DECLARATIONS: + return declarations != null && !declarations.isEmpty(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERTYPE: + return supertype != null; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__SUPERSET: + return superset != null && !superset.isEmpty(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY__FIELDS: + return fields != null && !fields.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (multiplicity: "); + result.append(multiplicity); + result.append(", abstract: "); + result.append(abstract_); + result.append(')'); + return result.toString(); + } + +} //ALSSignatureBodyImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureDeclarationImpl.java new file mode 100644 index 00000000..4c58a4ee --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSignatureDeclarationImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Signature Declaration'. + * + * + * @generated + */ +public class ALSSignatureDeclarationImpl extends ALSTypeDeclarationImpl implements ALSSignatureDeclaration +{ + /** + * + * + * @generated + */ + protected ALSSignatureDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_SIGNATURE_DECLARATION; + } + +} //ALSSignatureDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSubsetImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSubsetImpl.java new file mode 100644 index 00000000..de9b1246 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSubsetImpl.java @@ -0,0 +1,264 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Subset'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSubsetImpl#getLeftOperand Left Operand}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSubsetImpl#getRightOperand Right Operand}
  • + *
+ * + * @generated + */ +public class ALSSubsetImpl extends ALSTermImpl implements ALSSubset +{ + /** + * The cached value of the '{@link #getLeftOperand() Left Operand}' containment reference. + * + * + * @see #getLeftOperand() + * @generated + * @ordered + */ + protected ALSTerm leftOperand; + + /** + * The cached value of the '{@link #getRightOperand() Right Operand}' containment reference. + * + * + * @see #getRightOperand() + * @generated + * @ordered + */ + protected ALSTerm rightOperand; + + /** + * + * + * @generated + */ + protected ALSSubsetImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_SUBSET; + } + + /** + * + * + * @generated + */ + public ALSTerm getLeftOperand() + { + return leftOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeftOperand(ALSTerm newLeftOperand, NotificationChain msgs) + { + ALSTerm oldLeftOperand = leftOperand; + leftOperand = newLeftOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND, oldLeftOperand, newLeftOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeftOperand(ALSTerm newLeftOperand) + { + if (newLeftOperand != leftOperand) + { + NotificationChain msgs = null; + if (leftOperand != null) + msgs = ((InternalEObject)leftOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND, null, msgs); + if (newLeftOperand != null) + msgs = ((InternalEObject)newLeftOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND, null, msgs); + msgs = basicSetLeftOperand(newLeftOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND, newLeftOperand, newLeftOperand)); + } + + /** + * + * + * @generated + */ + public ALSTerm getRightOperand() + { + return rightOperand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRightOperand(ALSTerm newRightOperand, NotificationChain msgs) + { + ALSTerm oldRightOperand = rightOperand; + rightOperand = newRightOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND, oldRightOperand, newRightOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRightOperand(ALSTerm newRightOperand) + { + if (newRightOperand != rightOperand) + { + NotificationChain msgs = null; + if (rightOperand != null) + msgs = ((InternalEObject)rightOperand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND, null, msgs); + if (newRightOperand != null) + msgs = ((InternalEObject)newRightOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND, null, msgs); + msgs = basicSetRightOperand(newRightOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND, newRightOperand, newRightOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND: + return basicSetLeftOperand(null, msgs); + case AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND: + return basicSetRightOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND: + return getLeftOperand(); + case AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND: + return getRightOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND: + setLeftOperand((ALSTerm)newValue); + return; + case AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND: + setRightOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND: + setLeftOperand((ALSTerm)null); + return; + case AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND: + setRightOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUBSET__LEFT_OPERAND: + return leftOperand != null; + case AlloyLanguagePackage.ALS_SUBSET__RIGHT_OPERAND: + return rightOperand != null; + } + return super.eIsSet(featureID); + } + +} //ALSSubsetImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSumImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSumImpl.java new file mode 100644 index 00000000..61503806 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSSumImpl.java @@ -0,0 +1,240 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'ALS Sum'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSumImpl#getVariables Variables}
  • + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSSumImpl#getExpression Expression}
  • + *
+ * + * @generated + */ +public class ALSSumImpl extends ALSTermImpl implements ALSSum +{ + /** + * The cached value of the '{@link #getVariables() Variables}' containment reference list. + * + * + * @see #getVariables() + * @generated + * @ordered + */ + protected EList variables; + + /** + * The cached value of the '{@link #getExpression() Expression}' containment reference. + * + * + * @see #getExpression() + * @generated + * @ordered + */ + protected ALSTerm expression; + + /** + * + * + * @generated + */ + protected ALSSumImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_SUM; + } + + /** + * + * + * @generated + */ + public EList getVariables() + { + if (variables == null) + { + variables = new EObjectContainmentEList(ALSVariableDeclaration.class, this, AlloyLanguagePackage.ALS_SUM__VARIABLES); + } + return variables; + } + + /** + * + * + * @generated + */ + public ALSTerm getExpression() + { + return expression; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetExpression(ALSTerm newExpression, NotificationChain msgs) + { + ALSTerm oldExpression = expression; + expression = newExpression; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SUM__EXPRESSION, oldExpression, newExpression); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setExpression(ALSTerm newExpression) + { + if (newExpression != expression) + { + NotificationChain msgs = null; + if (expression != null) + msgs = ((InternalEObject)expression).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_SUM__EXPRESSION, null, msgs); + if (newExpression != null) + msgs = ((InternalEObject)newExpression).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_SUM__EXPRESSION, null, msgs); + msgs = basicSetExpression(newExpression, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_SUM__EXPRESSION, newExpression, newExpression)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUM__VARIABLES: + return ((InternalEList)getVariables()).basicRemove(otherEnd, msgs); + case AlloyLanguagePackage.ALS_SUM__EXPRESSION: + return basicSetExpression(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUM__VARIABLES: + return getVariables(); + case AlloyLanguagePackage.ALS_SUM__EXPRESSION: + return getExpression(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUM__VARIABLES: + getVariables().clear(); + getVariables().addAll((Collection)newValue); + return; + case AlloyLanguagePackage.ALS_SUM__EXPRESSION: + setExpression((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUM__VARIABLES: + getVariables().clear(); + return; + case AlloyLanguagePackage.ALS_SUM__EXPRESSION: + setExpression((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_SUM__VARIABLES: + return variables != null && !variables.isEmpty(); + case AlloyLanguagePackage.ALS_SUM__EXPRESSION: + return expression != null; + } + return super.eIsSet(featureID); + } + +} //ALSSumImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTermImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTermImpl.java new file mode 100644 index 00000000..06a720d4 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTermImpl.java @@ -0,0 +1,42 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'ALS Term'. + * + * + * @generated + */ +public class ALSTermImpl extends MinimalEObjectImpl.Container implements ALSTerm +{ + /** + * + * + * @generated + */ + protected ALSTermImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_TERM; + } + +} //ALSTermImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeDeclarationImpl.java new file mode 100644 index 00000000..83d836bf --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeDeclarationImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Type Declaration'. + * + * + * @generated + */ +public class ALSTypeDeclarationImpl extends ALSRelationDeclarationImpl implements ALSTypeDeclaration +{ + /** + * + * + * @generated + */ + protected ALSTypeDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_TYPE_DECLARATION; + } + +} //ALSTypeDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeScopeImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeScopeImpl.java new file mode 100644 index 00000000..e60dc917 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSTypeScopeImpl.java @@ -0,0 +1,177 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'ALS Type Scope'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSTypeScopeImpl#getNumber Number}
  • + *
+ * + * @generated + */ +public class ALSTypeScopeImpl extends MinimalEObjectImpl.Container implements ALSTypeScope +{ + /** + * The default value of the '{@link #getNumber() Number}' attribute. + * + * + * @see #getNumber() + * @generated + * @ordered + */ + protected static final int NUMBER_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getNumber() Number}' attribute. + * + * + * @see #getNumber() + * @generated + * @ordered + */ + protected int number = NUMBER_EDEFAULT; + + /** + * + * + * @generated + */ + protected ALSTypeScopeImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_TYPE_SCOPE; + } + + /** + * + * + * @generated + */ + public int getNumber() + { + return number; + } + + /** + * + * + * @generated + */ + public void setNumber(int newNumber) + { + int oldNumber = number; + number = newNumber; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_TYPE_SCOPE__NUMBER, oldNumber, number)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_TYPE_SCOPE__NUMBER: + return getNumber(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_TYPE_SCOPE__NUMBER: + setNumber((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_TYPE_SCOPE__NUMBER: + setNumber(NUMBER_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_TYPE_SCOPE__NUMBER: + return number != NUMBER_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() + { + if (eIsProxy()) return super.toString(); + + StringBuffer result = new StringBuffer(super.toString()); + result.append(" (number: "); + result.append(number); + result.append(')'); + return result.toString(); + } + +} //ALSTypeScopeImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnaryMinusImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnaryMinusImpl.java new file mode 100644 index 00000000..e4e33969 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnaryMinusImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Unary Minus'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSUnaryMinusImpl#getOperand Operand}
  • + *
+ * + * @generated + */ +public class ALSUnaryMinusImpl extends ALSTermImpl implements ALSUnaryMinus +{ + /** + * The cached value of the '{@link #getOperand() Operand}' containment reference. + * + * + * @see #getOperand() + * @generated + * @ordered + */ + protected ALSTerm operand; + + /** + * + * + * @generated + */ + protected ALSUnaryMinusImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_UNARY_MINUS; + } + + /** + * + * + * @generated + */ + public ALSTerm getOperand() + { + return operand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetOperand(ALSTerm newOperand, NotificationChain msgs) + { + ALSTerm oldOperand = operand; + operand = newOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND, oldOperand, newOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setOperand(ALSTerm newOperand) + { + if (newOperand != operand) + { + NotificationChain msgs = null; + if (operand != null) + msgs = ((InternalEObject)operand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND, null, msgs); + if (newOperand != null) + msgs = ((InternalEObject)newOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND, null, msgs); + msgs = basicSetOperand(newOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND, newOperand, newOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND: + return basicSetOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND: + return getOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND: + setOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND: + setOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_UNARY_MINUS__OPERAND: + return operand != null; + } + return super.eIsSet(featureID); + } + +} //ALSUnaryMinusImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnivImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnivImpl.java new file mode 100644 index 00000000..f7696943 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSUnivImpl.java @@ -0,0 +1,40 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'ALS Univ'. + * + * + * @generated + */ +public class ALSUnivImpl extends ALSTermImpl implements ALSUniv +{ + /** + * + * + * @generated + */ + protected ALSUnivImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_UNIV; + } + +} //ALSUnivImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSVariableDeclarationImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSVariableDeclarationImpl.java new file mode 100644 index 00000000..de26d088 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/ALSVariableDeclarationImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'ALS Variable Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.ALSVariableDeclarationImpl#getRange Range}
  • + *
+ * + * @generated + */ +public class ALSVariableDeclarationImpl extends ALSRelationDeclarationImpl implements ALSVariableDeclaration +{ + /** + * The cached value of the '{@link #getRange() Range}' containment reference. + * + * + * @see #getRange() + * @generated + * @ordered + */ + protected ALSTerm range; + + /** + * + * + * @generated + */ + protected ALSVariableDeclarationImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.ALS_VARIABLE_DECLARATION; + } + + /** + * + * + * @generated + */ + public ALSTerm getRange() + { + return range; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRange(ALSTerm newRange, NotificationChain msgs) + { + ALSTerm oldRange = range; + range = newRange; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE, oldRange, newRange); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRange(ALSTerm newRange) + { + if (newRange != range) + { + NotificationChain msgs = null; + if (range != null) + msgs = ((InternalEObject)range).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE, null, msgs); + if (newRange != null) + msgs = ((InternalEObject)newRange).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE, null, msgs); + msgs = basicSetRange(newRange, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE, newRange, newRange)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE: + return basicSetRange(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE: + return getRange(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE: + setRange((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE: + setRange((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION__RANGE: + return range != null; + } + return super.eIsSet(featureID); + } + +} //ALSVariableDeclarationImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlSTransitiveClosureImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlSTransitiveClosureImpl.java new file mode 100644 index 00000000..fdacf84e --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlSTransitiveClosureImpl.java @@ -0,0 +1,193 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Al STransitive Closure'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link hu.bme.mit.inf.dslreasoner.alloyLanguage.impl.AlSTransitiveClosureImpl#getOperand Operand}
  • + *
+ * + * @generated + */ +public class AlSTransitiveClosureImpl extends ALSTermImpl implements AlSTransitiveClosure +{ + /** + * The cached value of the '{@link #getOperand() Operand}' containment reference. + * + * + * @see #getOperand() + * @generated + * @ordered + */ + protected ALSTerm operand; + + /** + * + * + * @generated + */ + protected AlSTransitiveClosureImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() + { + return AlloyLanguagePackage.Literals.AL_STRANSITIVE_CLOSURE; + } + + /** + * + * + * @generated + */ + public ALSTerm getOperand() + { + return operand; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetOperand(ALSTerm newOperand, NotificationChain msgs) + { + ALSTerm oldOperand = operand; + operand = newOperand; + if (eNotificationRequired()) + { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND, oldOperand, newOperand); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setOperand(ALSTerm newOperand) + { + if (newOperand != operand) + { + NotificationChain msgs = null; + if (operand != null) + msgs = ((InternalEObject)operand).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND, null, msgs); + if (newOperand != null) + msgs = ((InternalEObject)newOperand).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND, null, msgs); + msgs = basicSetOperand(newOperand, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND, newOperand, newOperand)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) + { + switch (featureID) + { + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND: + return basicSetOperand(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) + { + switch (featureID) + { + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND: + return getOperand(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) + { + switch (featureID) + { + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND: + setOperand((ALSTerm)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND: + setOperand((ALSTerm)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) + { + switch (featureID) + { + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE__OPERAND: + return operand != null; + } + return super.eIsSet(featureID); + } + +} //AlSTransitiveClosureImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguageFactoryImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguageFactoryImpl.java new file mode 100644 index 00000000..45d92dca --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguageFactoryImpl.java @@ -0,0 +1,801 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * + * An implementation of the model Factory. + * + * @generated + */ +public class AlloyLanguageFactoryImpl extends EFactoryImpl implements AlloyLanguageFactory +{ + /** + * Creates the default factory implementation. + * + * + * @generated + */ + public static AlloyLanguageFactory init() + { + try + { + AlloyLanguageFactory theAlloyLanguageFactory = (AlloyLanguageFactory)EPackage.Registry.INSTANCE.getEFactory(AlloyLanguagePackage.eNS_URI); + if (theAlloyLanguageFactory != null) + { + return theAlloyLanguageFactory; + } + } + catch (Exception exception) + { + EcorePlugin.INSTANCE.log(exception); + } + return new AlloyLanguageFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * + * + * @generated + */ + public AlloyLanguageFactoryImpl() + { + super(); + } + + /** + * + * + * @generated + */ + @Override + public EObject create(EClass eClass) + { + switch (eClass.getClassifierID()) + { + case AlloyLanguagePackage.ALS_DOCUMENT: return createALSDocument(); + case AlloyLanguagePackage.ALS_RELATION_DECLARATION: return createALSRelationDeclaration(); + case AlloyLanguagePackage.ALS_TYPE_DECLARATION: return createALSTypeDeclaration(); + case AlloyLanguagePackage.ALS_ENUM_DECLARATION: return createALSEnumDeclaration(); + case AlloyLanguagePackage.ALS_ENUM_LITERAL: return createALSEnumLiteral(); + case AlloyLanguagePackage.ALS_SIGNATURE_DECLARATION: return createALSSignatureDeclaration(); + case AlloyLanguagePackage.ALS_SIGNATURE_BODY: return createALSSignatureBody(); + case AlloyLanguagePackage.ALS_FIELD_DECLARATION: return createALSFieldDeclaration(); + case AlloyLanguagePackage.ALS_DEFINITION: return createALSDefinition(); + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION: return createALSFunctionDefinition(); + case AlloyLanguagePackage.ALS_RELATION_DEFINITION: return createALSRelationDefinition(); + case AlloyLanguagePackage.ALS_FACT_DECLARATION: return createALSFactDeclaration(); + case AlloyLanguagePackage.ALS_TERM: return createALSTerm(); + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION: return createALSVariableDeclaration(); + case AlloyLanguagePackage.ALS_RUN_COMMAND: return createALSRunCommand(); + case AlloyLanguagePackage.ALS_TYPE_SCOPE: return createALSTypeScope(); + case AlloyLanguagePackage.ALS_SIG_SCOPE: return createALSSigScope(); + case AlloyLanguagePackage.ALS_INT_SCOPE: return createALSIntScope(); + case AlloyLanguagePackage.ALS_QUANTIFIED_EX: return createALSQuantifiedEx(); + case AlloyLanguagePackage.ALS_OR: return createALSOr(); + case AlloyLanguagePackage.ALS_IFF: return createALSIff(); + case AlloyLanguagePackage.ALS_IMPL: return createALSImpl(); + case AlloyLanguagePackage.ALS_AND: return createALSAnd(); + case AlloyLanguagePackage.ALS_EQUALS: return createALSEquals(); + case AlloyLanguagePackage.ALS_NOT_EQUALS: return createALSNotEquals(); + case AlloyLanguagePackage.ALS_SUBSET: return createALSSubset(); + case AlloyLanguagePackage.ALS_LESS: return createALSLess(); + case AlloyLanguagePackage.ALS_LEQ: return createALSLeq(); + case AlloyLanguagePackage.ALS_MORE: return createALSMore(); + case AlloyLanguagePackage.ALS_MEQ: return createALSMeq(); + case AlloyLanguagePackage.ALS_OVERRIDE: return createALSOverride(); + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT: return createALSRangeRestrictionRight(); + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT: return createALSRangeRestrictionLeft(); + case AlloyLanguagePackage.ALS_JOIN: return createALSJoin(); + case AlloyLanguagePackage.ALS_MINUS: return createALSMinus(); + case AlloyLanguagePackage.ALS_PLUS: return createALSPlus(); + case AlloyLanguagePackage.ALS_INTERSECTION: return createALSIntersection(); + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT: return createALSDirectProduct(); + case AlloyLanguagePackage.ALS_NOT: return createALSNot(); + case AlloyLanguagePackage.ALS_INVERSE_RELATION: return createALSInverseRelation(); + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE: return createAlSTransitiveClosure(); + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE: return createALSReflectiveTransitiveClosure(); + case AlloyLanguagePackage.ALS_CARDINALITY: return createALSCardinality(); + case AlloyLanguagePackage.ALS_UNARY_MINUS: return createALSUnaryMinus(); + case AlloyLanguagePackage.ALS_SUM: return createALSSum(); + case AlloyLanguagePackage.ALS_FUNCTION_CALL: return createALSFunctionCall(); + case AlloyLanguagePackage.ALS_NONE: return createALSNone(); + case AlloyLanguagePackage.ALS_IDEN: return createALSIden(); + case AlloyLanguagePackage.ALS_UNIV: return createALSUniv(); + case AlloyLanguagePackage.ALS_INT: return createALSInt(); + case AlloyLanguagePackage.ALS_REFERENCE: return createALSReference(); + case AlloyLanguagePackage.ALS_NUMBER_LITERAL: return createALSNumberLiteral(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) + { + switch (eDataType.getClassifierID()) + { + case AlloyLanguagePackage.ALS_MULTIPLICITY: + return createALSMultiplicityFromString(eDataType, initialValue); + case AlloyLanguagePackage.ALS_NUMERIC_OPERATOR: + return createALSNumericOperatorFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) + { + switch (eDataType.getClassifierID()) + { + case AlloyLanguagePackage.ALS_MULTIPLICITY: + return convertALSMultiplicityToString(eDataType, instanceValue); + case AlloyLanguagePackage.ALS_NUMERIC_OPERATOR: + return convertALSNumericOperatorToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + public ALSDocument createALSDocument() + { + ALSDocumentImpl alsDocument = new ALSDocumentImpl(); + return alsDocument; + } + + /** + * + * + * @generated + */ + public ALSRelationDeclaration createALSRelationDeclaration() + { + ALSRelationDeclarationImpl alsRelationDeclaration = new ALSRelationDeclarationImpl(); + return alsRelationDeclaration; + } + + /** + * + * + * @generated + */ + public ALSTypeDeclaration createALSTypeDeclaration() + { + ALSTypeDeclarationImpl alsTypeDeclaration = new ALSTypeDeclarationImpl(); + return alsTypeDeclaration; + } + + /** + * + * + * @generated + */ + public ALSEnumDeclaration createALSEnumDeclaration() + { + ALSEnumDeclarationImpl alsEnumDeclaration = new ALSEnumDeclarationImpl(); + return alsEnumDeclaration; + } + + /** + * + * + * @generated + */ + public ALSEnumLiteral createALSEnumLiteral() + { + ALSEnumLiteralImpl alsEnumLiteral = new ALSEnumLiteralImpl(); + return alsEnumLiteral; + } + + /** + * + * + * @generated + */ + public ALSSignatureDeclaration createALSSignatureDeclaration() + { + ALSSignatureDeclarationImpl alsSignatureDeclaration = new ALSSignatureDeclarationImpl(); + return alsSignatureDeclaration; + } + + /** + * + * + * @generated + */ + public ALSSignatureBody createALSSignatureBody() + { + ALSSignatureBodyImpl alsSignatureBody = new ALSSignatureBodyImpl(); + return alsSignatureBody; + } + + /** + * + * + * @generated + */ + public ALSFieldDeclaration createALSFieldDeclaration() + { + ALSFieldDeclarationImpl alsFieldDeclaration = new ALSFieldDeclarationImpl(); + return alsFieldDeclaration; + } + + /** + * + * + * @generated + */ + public ALSDefinition createALSDefinition() + { + ALSDefinitionImpl alsDefinition = new ALSDefinitionImpl(); + return alsDefinition; + } + + /** + * + * + * @generated + */ + public ALSFunctionDefinition createALSFunctionDefinition() + { + ALSFunctionDefinitionImpl alsFunctionDefinition = new ALSFunctionDefinitionImpl(); + return alsFunctionDefinition; + } + + /** + * + * + * @generated + */ + public ALSRelationDefinition createALSRelationDefinition() + { + ALSRelationDefinitionImpl alsRelationDefinition = new ALSRelationDefinitionImpl(); + return alsRelationDefinition; + } + + /** + * + * + * @generated + */ + public ALSFactDeclaration createALSFactDeclaration() + { + ALSFactDeclarationImpl alsFactDeclaration = new ALSFactDeclarationImpl(); + return alsFactDeclaration; + } + + /** + * + * + * @generated + */ + public ALSTerm createALSTerm() + { + ALSTermImpl alsTerm = new ALSTermImpl(); + return alsTerm; + } + + /** + * + * + * @generated + */ + public ALSVariableDeclaration createALSVariableDeclaration() + { + ALSVariableDeclarationImpl alsVariableDeclaration = new ALSVariableDeclarationImpl(); + return alsVariableDeclaration; + } + + /** + * + * + * @generated + */ + public ALSRunCommand createALSRunCommand() + { + ALSRunCommandImpl alsRunCommand = new ALSRunCommandImpl(); + return alsRunCommand; + } + + /** + * + * + * @generated + */ + public ALSTypeScope createALSTypeScope() + { + ALSTypeScopeImpl alsTypeScope = new ALSTypeScopeImpl(); + return alsTypeScope; + } + + /** + * + * + * @generated + */ + public ALSSigScope createALSSigScope() + { + ALSSigScopeImpl alsSigScope = new ALSSigScopeImpl(); + return alsSigScope; + } + + /** + * + * + * @generated + */ + public ALSIntScope createALSIntScope() + { + ALSIntScopeImpl alsIntScope = new ALSIntScopeImpl(); + return alsIntScope; + } + + /** + * + * + * @generated + */ + public ALSQuantifiedEx createALSQuantifiedEx() + { + ALSQuantifiedExImpl alsQuantifiedEx = new ALSQuantifiedExImpl(); + return alsQuantifiedEx; + } + + /** + * + * + * @generated + */ + public ALSOr createALSOr() + { + ALSOrImpl alsOr = new ALSOrImpl(); + return alsOr; + } + + /** + * + * + * @generated + */ + public ALSIff createALSIff() + { + ALSIffImpl alsIff = new ALSIffImpl(); + return alsIff; + } + + /** + * + * + * @generated + */ + public ALSImpl createALSImpl() + { + ALSImplImpl alsImpl = new ALSImplImpl(); + return alsImpl; + } + + /** + * + * + * @generated + */ + public ALSAnd createALSAnd() + { + ALSAndImpl alsAnd = new ALSAndImpl(); + return alsAnd; + } + + /** + * + * + * @generated + */ + public ALSEquals createALSEquals() + { + ALSEqualsImpl alsEquals = new ALSEqualsImpl(); + return alsEquals; + } + + /** + * + * + * @generated + */ + public ALSNotEquals createALSNotEquals() + { + ALSNotEqualsImpl alsNotEquals = new ALSNotEqualsImpl(); + return alsNotEquals; + } + + /** + * + * + * @generated + */ + public ALSSubset createALSSubset() + { + ALSSubsetImpl alsSubset = new ALSSubsetImpl(); + return alsSubset; + } + + /** + * + * + * @generated + */ + public ALSLess createALSLess() + { + ALSLessImpl alsLess = new ALSLessImpl(); + return alsLess; + } + + /** + * + * + * @generated + */ + public ALSLeq createALSLeq() + { + ALSLeqImpl alsLeq = new ALSLeqImpl(); + return alsLeq; + } + + /** + * + * + * @generated + */ + public ALSMore createALSMore() + { + ALSMoreImpl alsMore = new ALSMoreImpl(); + return alsMore; + } + + /** + * + * + * @generated + */ + public ALSMeq createALSMeq() + { + ALSMeqImpl alsMeq = new ALSMeqImpl(); + return alsMeq; + } + + /** + * + * + * @generated + */ + public ALSOverride createALSOverride() + { + ALSOverrideImpl alsOverride = new ALSOverrideImpl(); + return alsOverride; + } + + /** + * + * + * @generated + */ + public ALSRangeRestrictionRight createALSRangeRestrictionRight() + { + ALSRangeRestrictionRightImpl alsRangeRestrictionRight = new ALSRangeRestrictionRightImpl(); + return alsRangeRestrictionRight; + } + + /** + * + * + * @generated + */ + public ALSRangeRestrictionLeft createALSRangeRestrictionLeft() + { + ALSRangeRestrictionLeftImpl alsRangeRestrictionLeft = new ALSRangeRestrictionLeftImpl(); + return alsRangeRestrictionLeft; + } + + /** + * + * + * @generated + */ + public ALSJoin createALSJoin() + { + ALSJoinImpl alsJoin = new ALSJoinImpl(); + return alsJoin; + } + + /** + * + * + * @generated + */ + public ALSMinus createALSMinus() + { + ALSMinusImpl alsMinus = new ALSMinusImpl(); + return alsMinus; + } + + /** + * + * + * @generated + */ + public ALSPlus createALSPlus() + { + ALSPlusImpl alsPlus = new ALSPlusImpl(); + return alsPlus; + } + + /** + * + * + * @generated + */ + public ALSIntersection createALSIntersection() + { + ALSIntersectionImpl alsIntersection = new ALSIntersectionImpl(); + return alsIntersection; + } + + /** + * + * + * @generated + */ + public ALSDirectProduct createALSDirectProduct() + { + ALSDirectProductImpl alsDirectProduct = new ALSDirectProductImpl(); + return alsDirectProduct; + } + + /** + * + * + * @generated + */ + public ALSNot createALSNot() + { + ALSNotImpl alsNot = new ALSNotImpl(); + return alsNot; + } + + /** + * + * + * @generated + */ + public ALSInverseRelation createALSInverseRelation() + { + ALSInverseRelationImpl alsInverseRelation = new ALSInverseRelationImpl(); + return alsInverseRelation; + } + + /** + * + * + * @generated + */ + public AlSTransitiveClosure createAlSTransitiveClosure() + { + AlSTransitiveClosureImpl alSTransitiveClosure = new AlSTransitiveClosureImpl(); + return alSTransitiveClosure; + } + + /** + * + * + * @generated + */ + public ALSReflectiveTransitiveClosure createALSReflectiveTransitiveClosure() + { + ALSReflectiveTransitiveClosureImpl alsReflectiveTransitiveClosure = new ALSReflectiveTransitiveClosureImpl(); + return alsReflectiveTransitiveClosure; + } + + /** + * + * + * @generated + */ + public ALSCardinality createALSCardinality() + { + ALSCardinalityImpl alsCardinality = new ALSCardinalityImpl(); + return alsCardinality; + } + + /** + * + * + * @generated + */ + public ALSUnaryMinus createALSUnaryMinus() + { + ALSUnaryMinusImpl alsUnaryMinus = new ALSUnaryMinusImpl(); + return alsUnaryMinus; + } + + /** + * + * + * @generated + */ + public ALSSum createALSSum() + { + ALSSumImpl alsSum = new ALSSumImpl(); + return alsSum; + } + + /** + * + * + * @generated + */ + public ALSFunctionCall createALSFunctionCall() + { + ALSFunctionCallImpl alsFunctionCall = new ALSFunctionCallImpl(); + return alsFunctionCall; + } + + /** + * + * + * @generated + */ + public ALSNone createALSNone() + { + ALSNoneImpl alsNone = new ALSNoneImpl(); + return alsNone; + } + + /** + * + * + * @generated + */ + public ALSIden createALSIden() + { + ALSIdenImpl alsIden = new ALSIdenImpl(); + return alsIden; + } + + /** + * + * + * @generated + */ + public ALSUniv createALSUniv() + { + ALSUnivImpl alsUniv = new ALSUnivImpl(); + return alsUniv; + } + + /** + * + * + * @generated + */ + public ALSInt createALSInt() + { + ALSIntImpl alsInt = new ALSIntImpl(); + return alsInt; + } + + /** + * + * + * @generated + */ + public ALSReference createALSReference() + { + ALSReferenceImpl alsReference = new ALSReferenceImpl(); + return alsReference; + } + + /** + * + * + * @generated + */ + public ALSNumberLiteral createALSNumberLiteral() + { + ALSNumberLiteralImpl alsNumberLiteral = new ALSNumberLiteralImpl(); + return alsNumberLiteral; + } + + /** + * + * + * @generated + */ + public ALSMultiplicity createALSMultiplicityFromString(EDataType eDataType, String initialValue) + { + ALSMultiplicity result = ALSMultiplicity.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertALSMultiplicityToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public ALSNumericOperator createALSNumericOperatorFromString(EDataType eDataType, String initialValue) + { + ALSNumericOperator result = ALSNumericOperator.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertALSNumericOperatorToString(EDataType eDataType, Object instanceValue) + { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public AlloyLanguagePackage getAlloyLanguagePackage() + { + return (AlloyLanguagePackage)getEPackage(); + } + + /** + * + * + * @deprecated + * @generated + */ + @Deprecated + public static AlloyLanguagePackage getPackage() + { + return AlloyLanguagePackage.eINSTANCE; + } + +} //AlloyLanguageFactoryImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguagePackageImpl.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguagePackageImpl.java new file mode 100644 index 00000000..1fd90aa9 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/impl/AlloyLanguagePackageImpl.java @@ -0,0 +1,2417 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.impl; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMultiplicity; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumericOperator; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguageFactory; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +/** + * + * An implementation of the model Package. + * + * @generated + */ +public class AlloyLanguagePackageImpl extends EPackageImpl implements AlloyLanguagePackage +{ + /** + * + * + * @generated + */ + private EClass alsDocumentEClass = null; + + /** + * + * + * @generated + */ + private EClass alsRelationDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsTypeDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsEnumDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsEnumLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass alsSignatureDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsSignatureBodyEClass = null; + + /** + * + * + * @generated + */ + private EClass alsFieldDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsDefinitionEClass = null; + + /** + * + * + * @generated + */ + private EClass alsFunctionDefinitionEClass = null; + + /** + * + * + * @generated + */ + private EClass alsRelationDefinitionEClass = null; + + /** + * + * + * @generated + */ + private EClass alsFactDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsTermEClass = null; + + /** + * + * + * @generated + */ + private EClass alsVariableDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass alsRunCommandEClass = null; + + /** + * + * + * @generated + */ + private EClass alsTypeScopeEClass = null; + + /** + * + * + * @generated + */ + private EClass alsSigScopeEClass = null; + + /** + * + * + * @generated + */ + private EClass alsIntScopeEClass = null; + + /** + * + * + * @generated + */ + private EClass alsQuantifiedExEClass = null; + + /** + * + * + * @generated + */ + private EClass alsOrEClass = null; + + /** + * + * + * @generated + */ + private EClass alsIffEClass = null; + + /** + * + * + * @generated + */ + private EClass alsImplEClass = null; + + /** + * + * + * @generated + */ + private EClass alsAndEClass = null; + + /** + * + * + * @generated + */ + private EClass alsEqualsEClass = null; + + /** + * + * + * @generated + */ + private EClass alsNotEqualsEClass = null; + + /** + * + * + * @generated + */ + private EClass alsSubsetEClass = null; + + /** + * + * + * @generated + */ + private EClass alsLessEClass = null; + + /** + * + * + * @generated + */ + private EClass alsLeqEClass = null; + + /** + * + * + * @generated + */ + private EClass alsMoreEClass = null; + + /** + * + * + * @generated + */ + private EClass alsMeqEClass = null; + + /** + * + * + * @generated + */ + private EClass alsOverrideEClass = null; + + /** + * + * + * @generated + */ + private EClass alsRangeRestrictionRightEClass = null; + + /** + * + * + * @generated + */ + private EClass alsRangeRestrictionLeftEClass = null; + + /** + * + * + * @generated + */ + private EClass alsJoinEClass = null; + + /** + * + * + * @generated + */ + private EClass alsMinusEClass = null; + + /** + * + * + * @generated + */ + private EClass alsPlusEClass = null; + + /** + * + * + * @generated + */ + private EClass alsIntersectionEClass = null; + + /** + * + * + * @generated + */ + private EClass alsDirectProductEClass = null; + + /** + * + * + * @generated + */ + private EClass alsNotEClass = null; + + /** + * + * + * @generated + */ + private EClass alsInverseRelationEClass = null; + + /** + * + * + * @generated + */ + private EClass alSTransitiveClosureEClass = null; + + /** + * + * + * @generated + */ + private EClass alsReflectiveTransitiveClosureEClass = null; + + /** + * + * + * @generated + */ + private EClass alsCardinalityEClass = null; + + /** + * + * + * @generated + */ + private EClass alsUnaryMinusEClass = null; + + /** + * + * + * @generated + */ + private EClass alsSumEClass = null; + + /** + * + * + * @generated + */ + private EClass alsFunctionCallEClass = null; + + /** + * + * + * @generated + */ + private EClass alsNoneEClass = null; + + /** + * + * + * @generated + */ + private EClass alsIdenEClass = null; + + /** + * + * + * @generated + */ + private EClass alsUnivEClass = null; + + /** + * + * + * @generated + */ + private EClass alsIntEClass = null; + + /** + * + * + * @generated + */ + private EClass alsReferenceEClass = null; + + /** + * + * + * @generated + */ + private EClass alsNumberLiteralEClass = null; + + /** + * + * + * @generated + */ + private EEnum alsMultiplicityEEnum = null; + + /** + * + * + * @generated + */ + private EEnum alsNumericOperatorEEnum = null; + + /** + * Creates an instance of the model Package, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + *

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

This method is used to initialize {@link AlloyLanguagePackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * + * + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static AlloyLanguagePackage init() + { + if (isInited) return (AlloyLanguagePackage)EPackage.Registry.INSTANCE.getEPackage(AlloyLanguagePackage.eNS_URI); + + // Obtain or create and register package + AlloyLanguagePackageImpl theAlloyLanguagePackage = (AlloyLanguagePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AlloyLanguagePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AlloyLanguagePackageImpl()); + + isInited = true; + + // Create package meta-data objects + theAlloyLanguagePackage.createPackageContents(); + + // Initialize created meta-data + theAlloyLanguagePackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theAlloyLanguagePackage.freeze(); + + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(AlloyLanguagePackage.eNS_URI, theAlloyLanguagePackage); + return theAlloyLanguagePackage; + } + + /** + * + * + * @generated + */ + public EClass getALSDocument() + { + return alsDocumentEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSDocument_EnumDeclarations() + { + return (EReference)alsDocumentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSDocument_SignatureBodies() + { + return (EReference)alsDocumentEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getALSDocument_FunctionDefinitions() + { + return (EReference)alsDocumentEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getALSDocument_RelationDefinitions() + { + return (EReference)alsDocumentEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EReference getALSDocument_FactDeclarations() + { + return (EReference)alsDocumentEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + public EReference getALSDocument_RunCommand() + { + return (EReference)alsDocumentEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + public EClass getALSRelationDeclaration() + { + return alsRelationDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSRelationDeclaration_Name() + { + return (EAttribute)alsRelationDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSTypeDeclaration() + { + return alsTypeDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSEnumDeclaration() + { + return alsEnumDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSEnumDeclaration_Literal() + { + return (EReference)alsEnumDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSEnumLiteral() + { + return alsEnumLiteralEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSSignatureDeclaration() + { + return alsSignatureDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSSignatureBody() + { + return alsSignatureBodyEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSSignatureBody_Multiplicity() + { + return (EAttribute)alsSignatureBodyEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getALSSignatureBody_Abstract() + { + return (EAttribute)alsSignatureBodyEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getALSSignatureBody_Declarations() + { + return (EReference)alsSignatureBodyEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getALSSignatureBody_Supertype() + { + return (EReference)alsSignatureBodyEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EReference getALSSignatureBody_Superset() + { + return (EReference)alsSignatureBodyEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + public EReference getALSSignatureBody_Fields() + { + return (EReference)alsSignatureBodyEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + public EClass getALSFieldDeclaration() + { + return alsFieldDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSFieldDeclaration_Multiplicity() + { + return (EAttribute)alsFieldDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSFieldDeclaration_Type() + { + return (EReference)alsFieldDeclarationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSDefinition() + { + return alsDefinitionEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSDefinition_Name() + { + return (EAttribute)alsDefinitionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSDefinition_Variables() + { + return (EReference)alsDefinitionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getALSDefinition_Value() + { + return (EReference)alsDefinitionEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EClass getALSFunctionDefinition() + { + return alsFunctionDefinitionEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSFunctionDefinition_Type() + { + return (EReference)alsFunctionDefinitionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSRelationDefinition() + { + return alsRelationDefinitionEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSFactDeclaration() + { + return alsFactDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSFactDeclaration_Name() + { + return (EAttribute)alsFactDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSFactDeclaration_Term() + { + return (EReference)alsFactDeclarationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSTerm() + { + return alsTermEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSVariableDeclaration() + { + return alsVariableDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSVariableDeclaration_Range() + { + return (EReference)alsVariableDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSRunCommand() + { + return alsRunCommandEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSRunCommand_TypeScopes() + { + return (EReference)alsRunCommandEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSTypeScope() + { + return alsTypeScopeEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSTypeScope_Number() + { + return (EAttribute)alsTypeScopeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSSigScope() + { + return alsSigScopeEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSSigScope_Exactly() + { + return (EAttribute)alsSigScopeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSSigScope_Type() + { + return (EReference)alsSigScopeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSIntScope() + { + return alsIntScopeEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSQuantifiedEx() + { + return alsQuantifiedExEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSQuantifiedEx_Type() + { + return (EAttribute)alsQuantifiedExEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getALSQuantifiedEx_Disj() + { + return (EAttribute)alsQuantifiedExEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getALSQuantifiedEx_Variables() + { + return (EReference)alsQuantifiedExEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getALSQuantifiedEx_Expression() + { + return (EReference)alsQuantifiedExEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EClass getALSOr() + { + return alsOrEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSOr_LeftOperand() + { + return (EReference)alsOrEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSOr_RightOperand() + { + return (EReference)alsOrEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSIff() + { + return alsIffEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSIff_LeftOperand() + { + return (EReference)alsIffEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSIff_RightOperand() + { + return (EReference)alsIffEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSImpl() + { + return alsImplEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSImpl_LeftOperand() + { + return (EReference)alsImplEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSImpl_RightOperand() + { + return (EReference)alsImplEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getALSImpl_ElseOperand() + { + return (EReference)alsImplEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EClass getALSAnd() + { + return alsAndEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSAnd_LeftOperand() + { + return (EReference)alsAndEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSAnd_RightOperand() + { + return (EReference)alsAndEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSEquals() + { + return alsEqualsEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSEquals_LeftOperand() + { + return (EReference)alsEqualsEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSEquals_RightOperand() + { + return (EReference)alsEqualsEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSNotEquals() + { + return alsNotEqualsEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSNotEquals_LeftOperand() + { + return (EReference)alsNotEqualsEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSNotEquals_RightOperand() + { + return (EReference)alsNotEqualsEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSSubset() + { + return alsSubsetEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSSubset_LeftOperand() + { + return (EReference)alsSubsetEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSSubset_RightOperand() + { + return (EReference)alsSubsetEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSLess() + { + return alsLessEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSLess_LeftOperand() + { + return (EReference)alsLessEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSLess_RightOperand() + { + return (EReference)alsLessEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSLeq() + { + return alsLeqEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSLeq_LeftOperand() + { + return (EReference)alsLeqEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSLeq_RightOperand() + { + return (EReference)alsLeqEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSMore() + { + return alsMoreEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSMore_LeftOperand() + { + return (EReference)alsMoreEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSMore_RightOperand() + { + return (EReference)alsMoreEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSMeq() + { + return alsMeqEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSMeq_LeftOperand() + { + return (EReference)alsMeqEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSMeq_RightOperand() + { + return (EReference)alsMeqEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSOverride() + { + return alsOverrideEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSOverride_LeftOperand() + { + return (EReference)alsOverrideEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSOverride_RightOperand() + { + return (EReference)alsOverrideEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSRangeRestrictionRight() + { + return alsRangeRestrictionRightEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSRangeRestrictionRight_Relation() + { + return (EReference)alsRangeRestrictionRightEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSRangeRestrictionRight_Filter() + { + return (EReference)alsRangeRestrictionRightEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSRangeRestrictionLeft() + { + return alsRangeRestrictionLeftEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSRangeRestrictionLeft_Filter() + { + return (EReference)alsRangeRestrictionLeftEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSRangeRestrictionLeft_Relation() + { + return (EReference)alsRangeRestrictionLeftEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSJoin() + { + return alsJoinEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSJoin_LeftOperand() + { + return (EReference)alsJoinEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSJoin_RightOperand() + { + return (EReference)alsJoinEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSMinus() + { + return alsMinusEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSMinus_LeftOperand() + { + return (EReference)alsMinusEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSMinus_RightOperand() + { + return (EReference)alsMinusEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSPlus() + { + return alsPlusEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSPlus_LeftOperand() + { + return (EReference)alsPlusEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSPlus_RightOperand() + { + return (EReference)alsPlusEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSIntersection() + { + return alsIntersectionEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSIntersection_LeftOperand() + { + return (EReference)alsIntersectionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSIntersection_RightOperand() + { + return (EReference)alsIntersectionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSDirectProduct() + { + return alsDirectProductEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSDirectProduct_LeftOperand() + { + return (EReference)alsDirectProductEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getALSDirectProduct_LeftMultiplicit() + { + return (EAttribute)alsDirectProductEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EAttribute getALSDirectProduct_RightMultiplicit() + { + return (EAttribute)alsDirectProductEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getALSDirectProduct_RightOperand() + { + return (EReference)alsDirectProductEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EClass getALSNot() + { + return alsNotEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSNot_Operand() + { + return (EReference)alsNotEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSInverseRelation() + { + return alsInverseRelationEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSInverseRelation_Operand() + { + return (EReference)alsInverseRelationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getAlSTransitiveClosure() + { + return alSTransitiveClosureEClass; + } + + /** + * + * + * @generated + */ + public EReference getAlSTransitiveClosure_Operand() + { + return (EReference)alSTransitiveClosureEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSReflectiveTransitiveClosure() + { + return alsReflectiveTransitiveClosureEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSReflectiveTransitiveClosure_Operand() + { + return (EReference)alsReflectiveTransitiveClosureEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSCardinality() + { + return alsCardinalityEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSCardinality_Operand() + { + return (EReference)alsCardinalityEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSUnaryMinus() + { + return alsUnaryMinusEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSUnaryMinus_Operand() + { + return (EReference)alsUnaryMinusEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSSum() + { + return alsSumEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSSum_Variables() + { + return (EReference)alsSumEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getALSSum_Expression() + { + return (EReference)alsSumEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getALSFunctionCall() + { + return alsFunctionCallEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSFunctionCall_ReferredDefinition() + { + return (EReference)alsFunctionCallEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getALSFunctionCall_ReferredNumericOperator() + { + return (EAttribute)alsFunctionCallEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getALSFunctionCall_Params() + { + return (EReference)alsFunctionCallEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EClass getALSNone() + { + return alsNoneEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSIden() + { + return alsIdenEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSUniv() + { + return alsUnivEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSInt() + { + return alsIntEClass; + } + + /** + * + * + * @generated + */ + public EClass getALSReference() + { + return alsReferenceEClass; + } + + /** + * + * + * @generated + */ + public EReference getALSReference_Referred() + { + return (EReference)alsReferenceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getALSNumberLiteral() + { + return alsNumberLiteralEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getALSNumberLiteral_Value() + { + return (EAttribute)alsNumberLiteralEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EEnum getALSMultiplicity() + { + return alsMultiplicityEEnum; + } + + /** + * + * + * @generated + */ + public EEnum getALSNumericOperator() + { + return alsNumericOperatorEEnum; + } + + /** + * + * + * @generated + */ + public AlloyLanguageFactory getAlloyLanguageFactory() + { + return (AlloyLanguageFactory)getEFactoryInstance(); + } + + /** + * + * + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void createPackageContents() + { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + alsDocumentEClass = createEClass(ALS_DOCUMENT); + createEReference(alsDocumentEClass, ALS_DOCUMENT__ENUM_DECLARATIONS); + createEReference(alsDocumentEClass, ALS_DOCUMENT__SIGNATURE_BODIES); + createEReference(alsDocumentEClass, ALS_DOCUMENT__FUNCTION_DEFINITIONS); + createEReference(alsDocumentEClass, ALS_DOCUMENT__RELATION_DEFINITIONS); + createEReference(alsDocumentEClass, ALS_DOCUMENT__FACT_DECLARATIONS); + createEReference(alsDocumentEClass, ALS_DOCUMENT__RUN_COMMAND); + + alsRelationDeclarationEClass = createEClass(ALS_RELATION_DECLARATION); + createEAttribute(alsRelationDeclarationEClass, ALS_RELATION_DECLARATION__NAME); + + alsTypeDeclarationEClass = createEClass(ALS_TYPE_DECLARATION); + + alsEnumDeclarationEClass = createEClass(ALS_ENUM_DECLARATION); + createEReference(alsEnumDeclarationEClass, ALS_ENUM_DECLARATION__LITERAL); + + alsEnumLiteralEClass = createEClass(ALS_ENUM_LITERAL); + + alsSignatureDeclarationEClass = createEClass(ALS_SIGNATURE_DECLARATION); + + alsSignatureBodyEClass = createEClass(ALS_SIGNATURE_BODY); + createEAttribute(alsSignatureBodyEClass, ALS_SIGNATURE_BODY__MULTIPLICITY); + createEAttribute(alsSignatureBodyEClass, ALS_SIGNATURE_BODY__ABSTRACT); + createEReference(alsSignatureBodyEClass, ALS_SIGNATURE_BODY__DECLARATIONS); + createEReference(alsSignatureBodyEClass, ALS_SIGNATURE_BODY__SUPERTYPE); + createEReference(alsSignatureBodyEClass, ALS_SIGNATURE_BODY__SUPERSET); + createEReference(alsSignatureBodyEClass, ALS_SIGNATURE_BODY__FIELDS); + + alsFieldDeclarationEClass = createEClass(ALS_FIELD_DECLARATION); + createEAttribute(alsFieldDeclarationEClass, ALS_FIELD_DECLARATION__MULTIPLICITY); + createEReference(alsFieldDeclarationEClass, ALS_FIELD_DECLARATION__TYPE); + + alsDefinitionEClass = createEClass(ALS_DEFINITION); + createEAttribute(alsDefinitionEClass, ALS_DEFINITION__NAME); + createEReference(alsDefinitionEClass, ALS_DEFINITION__VARIABLES); + createEReference(alsDefinitionEClass, ALS_DEFINITION__VALUE); + + alsFunctionDefinitionEClass = createEClass(ALS_FUNCTION_DEFINITION); + createEReference(alsFunctionDefinitionEClass, ALS_FUNCTION_DEFINITION__TYPE); + + alsRelationDefinitionEClass = createEClass(ALS_RELATION_DEFINITION); + + alsFactDeclarationEClass = createEClass(ALS_FACT_DECLARATION); + createEAttribute(alsFactDeclarationEClass, ALS_FACT_DECLARATION__NAME); + createEReference(alsFactDeclarationEClass, ALS_FACT_DECLARATION__TERM); + + alsTermEClass = createEClass(ALS_TERM); + + alsVariableDeclarationEClass = createEClass(ALS_VARIABLE_DECLARATION); + createEReference(alsVariableDeclarationEClass, ALS_VARIABLE_DECLARATION__RANGE); + + alsRunCommandEClass = createEClass(ALS_RUN_COMMAND); + createEReference(alsRunCommandEClass, ALS_RUN_COMMAND__TYPE_SCOPES); + + alsTypeScopeEClass = createEClass(ALS_TYPE_SCOPE); + createEAttribute(alsTypeScopeEClass, ALS_TYPE_SCOPE__NUMBER); + + alsSigScopeEClass = createEClass(ALS_SIG_SCOPE); + createEAttribute(alsSigScopeEClass, ALS_SIG_SCOPE__EXACTLY); + createEReference(alsSigScopeEClass, ALS_SIG_SCOPE__TYPE); + + alsIntScopeEClass = createEClass(ALS_INT_SCOPE); + + alsQuantifiedExEClass = createEClass(ALS_QUANTIFIED_EX); + createEAttribute(alsQuantifiedExEClass, ALS_QUANTIFIED_EX__TYPE); + createEAttribute(alsQuantifiedExEClass, ALS_QUANTIFIED_EX__DISJ); + createEReference(alsQuantifiedExEClass, ALS_QUANTIFIED_EX__VARIABLES); + createEReference(alsQuantifiedExEClass, ALS_QUANTIFIED_EX__EXPRESSION); + + alsOrEClass = createEClass(ALS_OR); + createEReference(alsOrEClass, ALS_OR__LEFT_OPERAND); + createEReference(alsOrEClass, ALS_OR__RIGHT_OPERAND); + + alsIffEClass = createEClass(ALS_IFF); + createEReference(alsIffEClass, ALS_IFF__LEFT_OPERAND); + createEReference(alsIffEClass, ALS_IFF__RIGHT_OPERAND); + + alsImplEClass = createEClass(ALS_IMPL); + createEReference(alsImplEClass, ALS_IMPL__LEFT_OPERAND); + createEReference(alsImplEClass, ALS_IMPL__RIGHT_OPERAND); + createEReference(alsImplEClass, ALS_IMPL__ELSE_OPERAND); + + alsAndEClass = createEClass(ALS_AND); + createEReference(alsAndEClass, ALS_AND__LEFT_OPERAND); + createEReference(alsAndEClass, ALS_AND__RIGHT_OPERAND); + + alsEqualsEClass = createEClass(ALS_EQUALS); + createEReference(alsEqualsEClass, ALS_EQUALS__LEFT_OPERAND); + createEReference(alsEqualsEClass, ALS_EQUALS__RIGHT_OPERAND); + + alsNotEqualsEClass = createEClass(ALS_NOT_EQUALS); + createEReference(alsNotEqualsEClass, ALS_NOT_EQUALS__LEFT_OPERAND); + createEReference(alsNotEqualsEClass, ALS_NOT_EQUALS__RIGHT_OPERAND); + + alsSubsetEClass = createEClass(ALS_SUBSET); + createEReference(alsSubsetEClass, ALS_SUBSET__LEFT_OPERAND); + createEReference(alsSubsetEClass, ALS_SUBSET__RIGHT_OPERAND); + + alsLessEClass = createEClass(ALS_LESS); + createEReference(alsLessEClass, ALS_LESS__LEFT_OPERAND); + createEReference(alsLessEClass, ALS_LESS__RIGHT_OPERAND); + + alsLeqEClass = createEClass(ALS_LEQ); + createEReference(alsLeqEClass, ALS_LEQ__LEFT_OPERAND); + createEReference(alsLeqEClass, ALS_LEQ__RIGHT_OPERAND); + + alsMoreEClass = createEClass(ALS_MORE); + createEReference(alsMoreEClass, ALS_MORE__LEFT_OPERAND); + createEReference(alsMoreEClass, ALS_MORE__RIGHT_OPERAND); + + alsMeqEClass = createEClass(ALS_MEQ); + createEReference(alsMeqEClass, ALS_MEQ__LEFT_OPERAND); + createEReference(alsMeqEClass, ALS_MEQ__RIGHT_OPERAND); + + alsOverrideEClass = createEClass(ALS_OVERRIDE); + createEReference(alsOverrideEClass, ALS_OVERRIDE__LEFT_OPERAND); + createEReference(alsOverrideEClass, ALS_OVERRIDE__RIGHT_OPERAND); + + alsRangeRestrictionRightEClass = createEClass(ALS_RANGE_RESTRICTION_RIGHT); + createEReference(alsRangeRestrictionRightEClass, ALS_RANGE_RESTRICTION_RIGHT__RELATION); + createEReference(alsRangeRestrictionRightEClass, ALS_RANGE_RESTRICTION_RIGHT__FILTER); + + alsRangeRestrictionLeftEClass = createEClass(ALS_RANGE_RESTRICTION_LEFT); + createEReference(alsRangeRestrictionLeftEClass, ALS_RANGE_RESTRICTION_LEFT__FILTER); + createEReference(alsRangeRestrictionLeftEClass, ALS_RANGE_RESTRICTION_LEFT__RELATION); + + alsJoinEClass = createEClass(ALS_JOIN); + createEReference(alsJoinEClass, ALS_JOIN__LEFT_OPERAND); + createEReference(alsJoinEClass, ALS_JOIN__RIGHT_OPERAND); + + alsMinusEClass = createEClass(ALS_MINUS); + createEReference(alsMinusEClass, ALS_MINUS__LEFT_OPERAND); + createEReference(alsMinusEClass, ALS_MINUS__RIGHT_OPERAND); + + alsPlusEClass = createEClass(ALS_PLUS); + createEReference(alsPlusEClass, ALS_PLUS__LEFT_OPERAND); + createEReference(alsPlusEClass, ALS_PLUS__RIGHT_OPERAND); + + alsIntersectionEClass = createEClass(ALS_INTERSECTION); + createEReference(alsIntersectionEClass, ALS_INTERSECTION__LEFT_OPERAND); + createEReference(alsIntersectionEClass, ALS_INTERSECTION__RIGHT_OPERAND); + + alsDirectProductEClass = createEClass(ALS_DIRECT_PRODUCT); + createEReference(alsDirectProductEClass, ALS_DIRECT_PRODUCT__LEFT_OPERAND); + createEAttribute(alsDirectProductEClass, ALS_DIRECT_PRODUCT__LEFT_MULTIPLICIT); + createEAttribute(alsDirectProductEClass, ALS_DIRECT_PRODUCT__RIGHT_MULTIPLICIT); + createEReference(alsDirectProductEClass, ALS_DIRECT_PRODUCT__RIGHT_OPERAND); + + alsNotEClass = createEClass(ALS_NOT); + createEReference(alsNotEClass, ALS_NOT__OPERAND); + + alsInverseRelationEClass = createEClass(ALS_INVERSE_RELATION); + createEReference(alsInverseRelationEClass, ALS_INVERSE_RELATION__OPERAND); + + alSTransitiveClosureEClass = createEClass(AL_STRANSITIVE_CLOSURE); + createEReference(alSTransitiveClosureEClass, AL_STRANSITIVE_CLOSURE__OPERAND); + + alsReflectiveTransitiveClosureEClass = createEClass(ALS_REFLECTIVE_TRANSITIVE_CLOSURE); + createEReference(alsReflectiveTransitiveClosureEClass, ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND); + + alsCardinalityEClass = createEClass(ALS_CARDINALITY); + createEReference(alsCardinalityEClass, ALS_CARDINALITY__OPERAND); + + alsUnaryMinusEClass = createEClass(ALS_UNARY_MINUS); + createEReference(alsUnaryMinusEClass, ALS_UNARY_MINUS__OPERAND); + + alsSumEClass = createEClass(ALS_SUM); + createEReference(alsSumEClass, ALS_SUM__VARIABLES); + createEReference(alsSumEClass, ALS_SUM__EXPRESSION); + + alsFunctionCallEClass = createEClass(ALS_FUNCTION_CALL); + createEReference(alsFunctionCallEClass, ALS_FUNCTION_CALL__REFERRED_DEFINITION); + createEAttribute(alsFunctionCallEClass, ALS_FUNCTION_CALL__REFERRED_NUMERIC_OPERATOR); + createEReference(alsFunctionCallEClass, ALS_FUNCTION_CALL__PARAMS); + + alsNoneEClass = createEClass(ALS_NONE); + + alsIdenEClass = createEClass(ALS_IDEN); + + alsUnivEClass = createEClass(ALS_UNIV); + + alsIntEClass = createEClass(ALS_INT); + + alsReferenceEClass = createEClass(ALS_REFERENCE); + createEReference(alsReferenceEClass, ALS_REFERENCE__REFERRED); + + alsNumberLiteralEClass = createEClass(ALS_NUMBER_LITERAL); + createEAttribute(alsNumberLiteralEClass, ALS_NUMBER_LITERAL__VALUE); + + // Create enums + alsMultiplicityEEnum = createEEnum(ALS_MULTIPLICITY); + alsNumericOperatorEEnum = createEEnum(ALS_NUMERIC_OPERATOR); + } + + /** + * + * + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void initializePackageContents() + { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + alsTypeDeclarationEClass.getESuperTypes().add(this.getALSRelationDeclaration()); + alsEnumDeclarationEClass.getESuperTypes().add(this.getALSTypeDeclaration()); + alsEnumLiteralEClass.getESuperTypes().add(this.getALSRelationDeclaration()); + alsSignatureDeclarationEClass.getESuperTypes().add(this.getALSTypeDeclaration()); + alsFieldDeclarationEClass.getESuperTypes().add(this.getALSRelationDeclaration()); + alsFunctionDefinitionEClass.getESuperTypes().add(this.getALSDefinition()); + alsRelationDefinitionEClass.getESuperTypes().add(this.getALSDefinition()); + alsVariableDeclarationEClass.getESuperTypes().add(this.getALSRelationDeclaration()); + alsSigScopeEClass.getESuperTypes().add(this.getALSTypeScope()); + alsIntScopeEClass.getESuperTypes().add(this.getALSTypeScope()); + alsQuantifiedExEClass.getESuperTypes().add(this.getALSTerm()); + alsOrEClass.getESuperTypes().add(this.getALSTerm()); + alsIffEClass.getESuperTypes().add(this.getALSTerm()); + alsImplEClass.getESuperTypes().add(this.getALSTerm()); + alsAndEClass.getESuperTypes().add(this.getALSTerm()); + alsEqualsEClass.getESuperTypes().add(this.getALSTerm()); + alsNotEqualsEClass.getESuperTypes().add(this.getALSTerm()); + alsSubsetEClass.getESuperTypes().add(this.getALSTerm()); + alsLessEClass.getESuperTypes().add(this.getALSTerm()); + alsLeqEClass.getESuperTypes().add(this.getALSTerm()); + alsMoreEClass.getESuperTypes().add(this.getALSTerm()); + alsMeqEClass.getESuperTypes().add(this.getALSTerm()); + alsOverrideEClass.getESuperTypes().add(this.getALSTerm()); + alsRangeRestrictionRightEClass.getESuperTypes().add(this.getALSTerm()); + alsRangeRestrictionLeftEClass.getESuperTypes().add(this.getALSTerm()); + alsJoinEClass.getESuperTypes().add(this.getALSTerm()); + alsMinusEClass.getESuperTypes().add(this.getALSTerm()); + alsPlusEClass.getESuperTypes().add(this.getALSTerm()); + alsIntersectionEClass.getESuperTypes().add(this.getALSTerm()); + alsDirectProductEClass.getESuperTypes().add(this.getALSTerm()); + alsNotEClass.getESuperTypes().add(this.getALSTerm()); + alsInverseRelationEClass.getESuperTypes().add(this.getALSTerm()); + alSTransitiveClosureEClass.getESuperTypes().add(this.getALSTerm()); + alsReflectiveTransitiveClosureEClass.getESuperTypes().add(this.getALSTerm()); + alsCardinalityEClass.getESuperTypes().add(this.getALSTerm()); + alsUnaryMinusEClass.getESuperTypes().add(this.getALSTerm()); + alsSumEClass.getESuperTypes().add(this.getALSTerm()); + alsFunctionCallEClass.getESuperTypes().add(this.getALSTerm()); + alsNoneEClass.getESuperTypes().add(this.getALSTerm()); + alsIdenEClass.getESuperTypes().add(this.getALSTerm()); + alsUnivEClass.getESuperTypes().add(this.getALSTerm()); + alsIntEClass.getESuperTypes().add(this.getALSTerm()); + alsReferenceEClass.getESuperTypes().add(this.getALSTerm()); + alsNumberLiteralEClass.getESuperTypes().add(this.getALSTerm()); + + // Initialize classes and features; add operations and parameters + initEClass(alsDocumentEClass, ALSDocument.class, "ALSDocument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSDocument_EnumDeclarations(), this.getALSEnumDeclaration(), null, "enumDeclarations", null, 0, -1, ALSDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDocument_SignatureBodies(), this.getALSSignatureBody(), null, "signatureBodies", null, 0, -1, ALSDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDocument_FunctionDefinitions(), this.getALSFunctionDefinition(), null, "functionDefinitions", null, 0, -1, ALSDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDocument_RelationDefinitions(), this.getALSRelationDefinition(), null, "relationDefinitions", null, 0, -1, ALSDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDocument_FactDeclarations(), this.getALSFactDeclaration(), null, "factDeclarations", null, 0, -1, ALSDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDocument_RunCommand(), this.getALSRunCommand(), null, "runCommand", null, 0, 1, ALSDocument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsRelationDeclarationEClass, ALSRelationDeclaration.class, "ALSRelationDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSRelationDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, ALSRelationDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsTypeDeclarationEClass, ALSTypeDeclaration.class, "ALSTypeDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsEnumDeclarationEClass, ALSEnumDeclaration.class, "ALSEnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSEnumDeclaration_Literal(), this.getALSEnumLiteral(), null, "literal", null, 0, -1, ALSEnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsEnumLiteralEClass, ALSEnumLiteral.class, "ALSEnumLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsSignatureDeclarationEClass, ALSSignatureDeclaration.class, "ALSSignatureDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsSignatureBodyEClass, ALSSignatureBody.class, "ALSSignatureBody", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSSignatureBody_Multiplicity(), this.getALSMultiplicity(), "multiplicity", null, 0, 1, ALSSignatureBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getALSSignatureBody_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1, ALSSignatureBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSignatureBody_Declarations(), this.getALSSignatureDeclaration(), null, "declarations", null, 0, -1, ALSSignatureBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSignatureBody_Supertype(), this.getALSSignatureDeclaration(), null, "supertype", null, 0, 1, ALSSignatureBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSignatureBody_Superset(), this.getALSSignatureDeclaration(), null, "superset", null, 0, -1, ALSSignatureBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSignatureBody_Fields(), this.getALSFieldDeclaration(), null, "fields", null, 0, -1, ALSSignatureBody.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsFieldDeclarationEClass, ALSFieldDeclaration.class, "ALSFieldDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSFieldDeclaration_Multiplicity(), this.getALSMultiplicity(), "multiplicity", null, 0, 1, ALSFieldDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSFieldDeclaration_Type(), this.getALSTerm(), null, "type", null, 0, 1, ALSFieldDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsDefinitionEClass, ALSDefinition.class, "ALSDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ALSDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDefinition_Variables(), this.getALSVariableDeclaration(), null, "variables", null, 0, -1, ALSDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDefinition_Value(), this.getALSTerm(), null, "value", null, 0, 1, ALSDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsFunctionDefinitionEClass, ALSFunctionDefinition.class, "ALSFunctionDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSFunctionDefinition_Type(), this.getALSTerm(), null, "type", null, 0, 1, ALSFunctionDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsRelationDefinitionEClass, ALSRelationDefinition.class, "ALSRelationDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsFactDeclarationEClass, ALSFactDeclaration.class, "ALSFactDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSFactDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, ALSFactDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSFactDeclaration_Term(), this.getALSTerm(), null, "term", null, 0, 1, ALSFactDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsTermEClass, ALSTerm.class, "ALSTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsVariableDeclarationEClass, ALSVariableDeclaration.class, "ALSVariableDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSVariableDeclaration_Range(), this.getALSTerm(), null, "range", null, 0, 1, ALSVariableDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsRunCommandEClass, ALSRunCommand.class, "ALSRunCommand", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSRunCommand_TypeScopes(), this.getALSTypeScope(), null, "typeScopes", null, 0, -1, ALSRunCommand.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsTypeScopeEClass, ALSTypeScope.class, "ALSTypeScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSTypeScope_Number(), ecorePackage.getEInt(), "number", null, 0, 1, ALSTypeScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsSigScopeEClass, ALSSigScope.class, "ALSSigScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSSigScope_Exactly(), ecorePackage.getEBoolean(), "exactly", null, 0, 1, ALSSigScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSigScope_Type(), this.getALSSignatureDeclaration(), null, "type", null, 0, 1, ALSSigScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsIntScopeEClass, ALSIntScope.class, "ALSIntScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsQuantifiedExEClass, ALSQuantifiedEx.class, "ALSQuantifiedEx", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSQuantifiedEx_Type(), this.getALSMultiplicity(), "type", null, 0, 1, ALSQuantifiedEx.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getALSQuantifiedEx_Disj(), ecorePackage.getEBoolean(), "disj", null, 0, 1, ALSQuantifiedEx.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSQuantifiedEx_Variables(), this.getALSVariableDeclaration(), null, "variables", null, 0, -1, ALSQuantifiedEx.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSQuantifiedEx_Expression(), this.getALSTerm(), null, "expression", null, 0, 1, ALSQuantifiedEx.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsOrEClass, ALSOr.class, "ALSOr", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSOr_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSOr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSOr_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSOr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsIffEClass, ALSIff.class, "ALSIff", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSIff_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSIff.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSIff_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSIff.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsImplEClass, ALSImpl.class, "ALSImpl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSImpl_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSImpl.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSImpl_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSImpl.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSImpl_ElseOperand(), this.getALSTerm(), null, "elseOperand", null, 0, 1, ALSImpl.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsAndEClass, ALSAnd.class, "ALSAnd", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSAnd_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSAnd.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSAnd_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSAnd.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsEqualsEClass, ALSEquals.class, "ALSEquals", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSEquals_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSEquals.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSEquals_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSEquals.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsNotEqualsEClass, ALSNotEquals.class, "ALSNotEquals", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSNotEquals_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSNotEquals.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSNotEquals_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSNotEquals.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsSubsetEClass, ALSSubset.class, "ALSSubset", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSSubset_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSSubset.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSubset_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSSubset.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsLessEClass, ALSLess.class, "ALSLess", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSLess_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSLess.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSLess_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSLess.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsLeqEClass, ALSLeq.class, "ALSLeq", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSLeq_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSLeq.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSLeq_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSLeq.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsMoreEClass, ALSMore.class, "ALSMore", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSMore_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSMore.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSMore_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSMore.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsMeqEClass, ALSMeq.class, "ALSMeq", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSMeq_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSMeq.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSMeq_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSMeq.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsOverrideEClass, ALSOverride.class, "ALSOverride", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSOverride_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSOverride_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSOverride.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsRangeRestrictionRightEClass, ALSRangeRestrictionRight.class, "ALSRangeRestrictionRight", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSRangeRestrictionRight_Relation(), this.getALSTerm(), null, "relation", null, 0, 1, ALSRangeRestrictionRight.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSRangeRestrictionRight_Filter(), this.getALSTerm(), null, "filter", null, 0, 1, ALSRangeRestrictionRight.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsRangeRestrictionLeftEClass, ALSRangeRestrictionLeft.class, "ALSRangeRestrictionLeft", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSRangeRestrictionLeft_Filter(), this.getALSTerm(), null, "filter", null, 0, 1, ALSRangeRestrictionLeft.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSRangeRestrictionLeft_Relation(), this.getALSTerm(), null, "relation", null, 0, 1, ALSRangeRestrictionLeft.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsJoinEClass, ALSJoin.class, "ALSJoin", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSJoin_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSJoin.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSJoin_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSJoin.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsMinusEClass, ALSMinus.class, "ALSMinus", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSMinus_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSMinus.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSMinus_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSMinus.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsPlusEClass, ALSPlus.class, "ALSPlus", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSPlus_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSPlus.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSPlus_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSPlus.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsIntersectionEClass, ALSIntersection.class, "ALSIntersection", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSIntersection_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSIntersection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSIntersection_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSIntersection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsDirectProductEClass, ALSDirectProduct.class, "ALSDirectProduct", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSDirectProduct_LeftOperand(), this.getALSTerm(), null, "leftOperand", null, 0, 1, ALSDirectProduct.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getALSDirectProduct_LeftMultiplicit(), this.getALSMultiplicity(), "leftMultiplicit", null, 0, 1, ALSDirectProduct.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getALSDirectProduct_RightMultiplicit(), this.getALSMultiplicity(), "rightMultiplicit", null, 0, 1, ALSDirectProduct.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSDirectProduct_RightOperand(), this.getALSTerm(), null, "rightOperand", null, 0, 1, ALSDirectProduct.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsNotEClass, ALSNot.class, "ALSNot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSNot_Operand(), this.getALSTerm(), null, "operand", null, 0, 1, ALSNot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsInverseRelationEClass, ALSInverseRelation.class, "ALSInverseRelation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSInverseRelation_Operand(), this.getALSTerm(), null, "operand", null, 0, 1, ALSInverseRelation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alSTransitiveClosureEClass, AlSTransitiveClosure.class, "AlSTransitiveClosure", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getAlSTransitiveClosure_Operand(), this.getALSTerm(), null, "operand", null, 0, 1, AlSTransitiveClosure.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsReflectiveTransitiveClosureEClass, ALSReflectiveTransitiveClosure.class, "ALSReflectiveTransitiveClosure", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSReflectiveTransitiveClosure_Operand(), this.getALSTerm(), null, "operand", null, 0, 1, ALSReflectiveTransitiveClosure.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsCardinalityEClass, ALSCardinality.class, "ALSCardinality", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSCardinality_Operand(), this.getALSTerm(), null, "operand", null, 0, 1, ALSCardinality.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsUnaryMinusEClass, ALSUnaryMinus.class, "ALSUnaryMinus", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSUnaryMinus_Operand(), this.getALSTerm(), null, "operand", null, 0, 1, ALSUnaryMinus.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsSumEClass, ALSSum.class, "ALSSum", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSSum_Variables(), this.getALSVariableDeclaration(), null, "variables", null, 0, -1, ALSSum.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSSum_Expression(), this.getALSTerm(), null, "expression", null, 0, 1, ALSSum.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsFunctionCallEClass, ALSFunctionCall.class, "ALSFunctionCall", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSFunctionCall_ReferredDefinition(), this.getALSDefinition(), null, "referredDefinition", null, 0, 1, ALSFunctionCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getALSFunctionCall_ReferredNumericOperator(), this.getALSNumericOperator(), "referredNumericOperator", null, 0, 1, ALSFunctionCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getALSFunctionCall_Params(), this.getALSTerm(), null, "params", null, 0, -1, ALSFunctionCall.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsNoneEClass, ALSNone.class, "ALSNone", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsIdenEClass, ALSIden.class, "ALSIden", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsUnivEClass, ALSUniv.class, "ALSUniv", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsIntEClass, ALSInt.class, "ALSInt", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(alsReferenceEClass, ALSReference.class, "ALSReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getALSReference_Referred(), this.getALSRelationDeclaration(), null, "referred", null, 0, 1, ALSReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(alsNumberLiteralEClass, ALSNumberLiteral.class, "ALSNumberLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getALSNumberLiteral_Value(), ecorePackage.getEInt(), "value", null, 0, 1, ALSNumberLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + // Initialize enums and add enum literals + initEEnum(alsMultiplicityEEnum, ALSMultiplicity.class, "ALSMultiplicity"); + addEEnumLiteral(alsMultiplicityEEnum, ALSMultiplicity.ALL); + addEEnumLiteral(alsMultiplicityEEnum, ALSMultiplicity.NO); + addEEnumLiteral(alsMultiplicityEEnum, ALSMultiplicity.SOME); + addEEnumLiteral(alsMultiplicityEEnum, ALSMultiplicity.LONE); + addEEnumLiteral(alsMultiplicityEEnum, ALSMultiplicity.ONE); + addEEnumLiteral(alsMultiplicityEEnum, ALSMultiplicity.SET); + + initEEnum(alsNumericOperatorEEnum, ALSNumericOperator.class, "ALSNumericOperator"); + addEEnumLiteral(alsNumericOperatorEEnum, ALSNumericOperator.PLUS); + addEEnumLiteral(alsNumericOperatorEEnum, ALSNumericOperator.SUB); + addEEnumLiteral(alsNumericOperatorEEnum, ALSNumericOperator.MUL); + addEEnumLiteral(alsNumericOperatorEEnum, ALSNumericOperator.REM); + addEEnumLiteral(alsNumericOperatorEEnum, ALSNumericOperator.DIV); + + // Create resource + createResource(eNS_URI); + } + +} //AlloyLanguagePackageImpl diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageAdapterFactory.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageAdapterFactory.java new file mode 100644 index 00000000..d3d842af --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageAdapterFactory.java @@ -0,0 +1,1152 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.util; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * The Adapter Factory for the model. + * It provides an adapter createXXX method for each class of the model. + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage + * @generated + */ +public class AlloyLanguageAdapterFactory extends AdapterFactoryImpl +{ + /** + * The cached model package. + * + * + * @generated + */ + protected static AlloyLanguagePackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * + * + * @generated + */ + public AlloyLanguageAdapterFactory() + { + if (modelPackage == null) + { + modelPackage = AlloyLanguagePackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * + * This implementation returns true if the object is either the model's package or is an instance object of the model. + * + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) + { + if (object == modelPackage) + { + return true; + } + if (object instanceof EObject) + { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the createXXX methods. + * + * + * @generated + */ + protected AlloyLanguageSwitch modelSwitch = + new AlloyLanguageSwitch() + { + @Override + public Adapter caseALSDocument(ALSDocument object) + { + return createALSDocumentAdapter(); + } + @Override + public Adapter caseALSRelationDeclaration(ALSRelationDeclaration object) + { + return createALSRelationDeclarationAdapter(); + } + @Override + public Adapter caseALSTypeDeclaration(ALSTypeDeclaration object) + { + return createALSTypeDeclarationAdapter(); + } + @Override + public Adapter caseALSEnumDeclaration(ALSEnumDeclaration object) + { + return createALSEnumDeclarationAdapter(); + } + @Override + public Adapter caseALSEnumLiteral(ALSEnumLiteral object) + { + return createALSEnumLiteralAdapter(); + } + @Override + public Adapter caseALSSignatureDeclaration(ALSSignatureDeclaration object) + { + return createALSSignatureDeclarationAdapter(); + } + @Override + public Adapter caseALSSignatureBody(ALSSignatureBody object) + { + return createALSSignatureBodyAdapter(); + } + @Override + public Adapter caseALSFieldDeclaration(ALSFieldDeclaration object) + { + return createALSFieldDeclarationAdapter(); + } + @Override + public Adapter caseALSDefinition(ALSDefinition object) + { + return createALSDefinitionAdapter(); + } + @Override + public Adapter caseALSFunctionDefinition(ALSFunctionDefinition object) + { + return createALSFunctionDefinitionAdapter(); + } + @Override + public Adapter caseALSRelationDefinition(ALSRelationDefinition object) + { + return createALSRelationDefinitionAdapter(); + } + @Override + public Adapter caseALSFactDeclaration(ALSFactDeclaration object) + { + return createALSFactDeclarationAdapter(); + } + @Override + public Adapter caseALSTerm(ALSTerm object) + { + return createALSTermAdapter(); + } + @Override + public Adapter caseALSVariableDeclaration(ALSVariableDeclaration object) + { + return createALSVariableDeclarationAdapter(); + } + @Override + public Adapter caseALSRunCommand(ALSRunCommand object) + { + return createALSRunCommandAdapter(); + } + @Override + public Adapter caseALSTypeScope(ALSTypeScope object) + { + return createALSTypeScopeAdapter(); + } + @Override + public Adapter caseALSSigScope(ALSSigScope object) + { + return createALSSigScopeAdapter(); + } + @Override + public Adapter caseALSIntScope(ALSIntScope object) + { + return createALSIntScopeAdapter(); + } + @Override + public Adapter caseALSQuantifiedEx(ALSQuantifiedEx object) + { + return createALSQuantifiedExAdapter(); + } + @Override + public Adapter caseALSOr(ALSOr object) + { + return createALSOrAdapter(); + } + @Override + public Adapter caseALSIff(ALSIff object) + { + return createALSIffAdapter(); + } + @Override + public Adapter caseALSImpl(ALSImpl object) + { + return createALSImplAdapter(); + } + @Override + public Adapter caseALSAnd(ALSAnd object) + { + return createALSAndAdapter(); + } + @Override + public Adapter caseALSEquals(ALSEquals object) + { + return createALSEqualsAdapter(); + } + @Override + public Adapter caseALSNotEquals(ALSNotEquals object) + { + return createALSNotEqualsAdapter(); + } + @Override + public Adapter caseALSSubset(ALSSubset object) + { + return createALSSubsetAdapter(); + } + @Override + public Adapter caseALSLess(ALSLess object) + { + return createALSLessAdapter(); + } + @Override + public Adapter caseALSLeq(ALSLeq object) + { + return createALSLeqAdapter(); + } + @Override + public Adapter caseALSMore(ALSMore object) + { + return createALSMoreAdapter(); + } + @Override + public Adapter caseALSMeq(ALSMeq object) + { + return createALSMeqAdapter(); + } + @Override + public Adapter caseALSOverride(ALSOverride object) + { + return createALSOverrideAdapter(); + } + @Override + public Adapter caseALSRangeRestrictionRight(ALSRangeRestrictionRight object) + { + return createALSRangeRestrictionRightAdapter(); + } + @Override + public Adapter caseALSRangeRestrictionLeft(ALSRangeRestrictionLeft object) + { + return createALSRangeRestrictionLeftAdapter(); + } + @Override + public Adapter caseALSJoin(ALSJoin object) + { + return createALSJoinAdapter(); + } + @Override + public Adapter caseALSMinus(ALSMinus object) + { + return createALSMinusAdapter(); + } + @Override + public Adapter caseALSPlus(ALSPlus object) + { + return createALSPlusAdapter(); + } + @Override + public Adapter caseALSIntersection(ALSIntersection object) + { + return createALSIntersectionAdapter(); + } + @Override + public Adapter caseALSDirectProduct(ALSDirectProduct object) + { + return createALSDirectProductAdapter(); + } + @Override + public Adapter caseALSNot(ALSNot object) + { + return createALSNotAdapter(); + } + @Override + public Adapter caseALSInverseRelation(ALSInverseRelation object) + { + return createALSInverseRelationAdapter(); + } + @Override + public Adapter caseAlSTransitiveClosure(AlSTransitiveClosure object) + { + return createAlSTransitiveClosureAdapter(); + } + @Override + public Adapter caseALSReflectiveTransitiveClosure(ALSReflectiveTransitiveClosure object) + { + return createALSReflectiveTransitiveClosureAdapter(); + } + @Override + public Adapter caseALSCardinality(ALSCardinality object) + { + return createALSCardinalityAdapter(); + } + @Override + public Adapter caseALSUnaryMinus(ALSUnaryMinus object) + { + return createALSUnaryMinusAdapter(); + } + @Override + public Adapter caseALSSum(ALSSum object) + { + return createALSSumAdapter(); + } + @Override + public Adapter caseALSFunctionCall(ALSFunctionCall object) + { + return createALSFunctionCallAdapter(); + } + @Override + public Adapter caseALSNone(ALSNone object) + { + return createALSNoneAdapter(); + } + @Override + public Adapter caseALSIden(ALSIden object) + { + return createALSIdenAdapter(); + } + @Override + public Adapter caseALSUniv(ALSUniv object) + { + return createALSUnivAdapter(); + } + @Override + public Adapter caseALSInt(ALSInt object) + { + return createALSIntAdapter(); + } + @Override + public Adapter caseALSReference(ALSReference object) + { + return createALSReferenceAdapter(); + } + @Override + public Adapter caseALSNumberLiteral(ALSNumberLiteral object) + { + return createALSNumberLiteralAdapter(); + } + @Override + public Adapter defaultCase(EObject object) + { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the target. + * + * + * @param target the object to adapt. + * @return the adapter for the target. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) + { + return modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument ALS Document}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument + * @generated + */ + public Adapter createALSDocumentAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration ALS Relation Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDeclaration + * @generated + */ + public Adapter createALSRelationDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeDeclaration ALS Type Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeDeclaration + * @generated + */ + public Adapter createALSTypeDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration ALS Enum Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration + * @generated + */ + public Adapter createALSEnumDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral ALS Enum Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral + * @generated + */ + public Adapter createALSEnumLiteralAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration ALS Signature Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration + * @generated + */ + public Adapter createALSSignatureDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody ALS Signature Body}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody + * @generated + */ + public Adapter createALSSignatureBodyAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration ALS Field Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration + * @generated + */ + public Adapter createALSFieldDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition ALS Definition}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDefinition + * @generated + */ + public Adapter createALSDefinitionAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition ALS Function Definition}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition + * @generated + */ + public Adapter createALSFunctionDefinitionAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition ALS Relation Definition}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition + * @generated + */ + public Adapter createALSRelationDefinitionAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration ALS Fact Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration + * @generated + */ + public Adapter createALSFactDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm ALS Term}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTerm + * @generated + */ + public Adapter createALSTermAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration ALS Variable Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration + * @generated + */ + public Adapter createALSVariableDeclarationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand ALS Run Command}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand + * @generated + */ + public Adapter createALSRunCommandAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope ALS Type Scope}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSTypeScope + * @generated + */ + public Adapter createALSTypeScopeAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope ALS Sig Scope}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope + * @generated + */ + public Adapter createALSSigScopeAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope ALS Int Scope}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope + * @generated + */ + public Adapter createALSIntScopeAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx ALS Quantified Ex}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx + * @generated + */ + public Adapter createALSQuantifiedExAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr ALS Or}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr + * @generated + */ + public Adapter createALSOrAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff ALS Iff}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff + * @generated + */ + public Adapter createALSIffAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl ALS Impl}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl + * @generated + */ + public Adapter createALSImplAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd ALS And}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd + * @generated + */ + public Adapter createALSAndAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals ALS Equals}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals + * @generated + */ + public Adapter createALSEqualsAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals ALS Not Equals}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals + * @generated + */ + public Adapter createALSNotEqualsAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset ALS Subset}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset + * @generated + */ + public Adapter createALSSubsetAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess ALS Less}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess + * @generated + */ + public Adapter createALSLessAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq ALS Leq}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq + * @generated + */ + public Adapter createALSLeqAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore ALS More}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore + * @generated + */ + public Adapter createALSMoreAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq ALS Meq}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq + * @generated + */ + public Adapter createALSMeqAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride ALS Override}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride + * @generated + */ + public Adapter createALSOverrideAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight ALS Range Restriction Right}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight + * @generated + */ + public Adapter createALSRangeRestrictionRightAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft ALS Range Restriction Left}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft + * @generated + */ + public Adapter createALSRangeRestrictionLeftAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin ALS Join}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin + * @generated + */ + public Adapter createALSJoinAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus ALS Minus}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus + * @generated + */ + public Adapter createALSMinusAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus ALS Plus}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus + * @generated + */ + public Adapter createALSPlusAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection ALS Intersection}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection + * @generated + */ + public Adapter createALSIntersectionAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct ALS Direct Product}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct + * @generated + */ + public Adapter createALSDirectProductAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot ALS Not}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot + * @generated + */ + public Adapter createALSNotAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation ALS Inverse Relation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation + * @generated + */ + public Adapter createALSInverseRelationAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure Al STransitive Closure}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure + * @generated + */ + public Adapter createAlSTransitiveClosureAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure ALS Reflective Transitive Closure}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure + * @generated + */ + public Adapter createALSReflectiveTransitiveClosureAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality ALS Cardinality}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality + * @generated + */ + public Adapter createALSCardinalityAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus ALS Unary Minus}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus + * @generated + */ + public Adapter createALSUnaryMinusAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum ALS Sum}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum + * @generated + */ + public Adapter createALSSumAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall ALS Function Call}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall + * @generated + */ + public Adapter createALSFunctionCallAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone ALS None}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone + * @generated + */ + public Adapter createALSNoneAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden ALS Iden}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden + * @generated + */ + public Adapter createALSIdenAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv ALS Univ}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv + * @generated + */ + public Adapter createALSUnivAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt ALS Int}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt + * @generated + */ + public Adapter createALSIntAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference ALS Reference}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference + * @generated + */ + public Adapter createALSReferenceAdapter() + { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral ALS Number Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral + * @generated + */ + public Adapter createALSNumberLiteralAdapter() + { + return null; + } + + /** + * Creates a new adapter for the default case. + * + * This default implementation returns null. + * + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() + { + return null; + } + +} //AlloyLanguageAdapterFactory diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageSwitch.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageSwitch.java new file mode 100644 index 00000000..91fa2086 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/alloyLanguage/util/AlloyLanguageSwitch.java @@ -0,0 +1,1338 @@ +/** + */ +package hu.bme.mit.inf.dslreasoner.alloyLanguage.util; + +import hu.bme.mit.inf.dslreasoner.alloyLanguage.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * + * The Switch for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the caseXXX method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * + * @see hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage + * @generated + */ +public class AlloyLanguageSwitch extends Switch +{ + /** + * The cached model package + * + * + * @generated + */ + protected static AlloyLanguagePackage modelPackage; + + /** + * Creates an instance of the switch. + * + * + * @generated + */ + public AlloyLanguageSwitch() + { + if (modelPackage == null) + { + modelPackage = AlloyLanguagePackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * + * + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) + { + return ePackage == modelPackage; + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) + { + switch (classifierID) + { + case AlloyLanguagePackage.ALS_DOCUMENT: + { + ALSDocument alsDocument = (ALSDocument)theEObject; + T result = caseALSDocument(alsDocument); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_RELATION_DECLARATION: + { + ALSRelationDeclaration alsRelationDeclaration = (ALSRelationDeclaration)theEObject; + T result = caseALSRelationDeclaration(alsRelationDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_TYPE_DECLARATION: + { + ALSTypeDeclaration alsTypeDeclaration = (ALSTypeDeclaration)theEObject; + T result = caseALSTypeDeclaration(alsTypeDeclaration); + if (result == null) result = caseALSRelationDeclaration(alsTypeDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_ENUM_DECLARATION: + { + ALSEnumDeclaration alsEnumDeclaration = (ALSEnumDeclaration)theEObject; + T result = caseALSEnumDeclaration(alsEnumDeclaration); + if (result == null) result = caseALSTypeDeclaration(alsEnumDeclaration); + if (result == null) result = caseALSRelationDeclaration(alsEnumDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_ENUM_LITERAL: + { + ALSEnumLiteral alsEnumLiteral = (ALSEnumLiteral)theEObject; + T result = caseALSEnumLiteral(alsEnumLiteral); + if (result == null) result = caseALSRelationDeclaration(alsEnumLiteral); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_SIGNATURE_DECLARATION: + { + ALSSignatureDeclaration alsSignatureDeclaration = (ALSSignatureDeclaration)theEObject; + T result = caseALSSignatureDeclaration(alsSignatureDeclaration); + if (result == null) result = caseALSTypeDeclaration(alsSignatureDeclaration); + if (result == null) result = caseALSRelationDeclaration(alsSignatureDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_SIGNATURE_BODY: + { + ALSSignatureBody alsSignatureBody = (ALSSignatureBody)theEObject; + T result = caseALSSignatureBody(alsSignatureBody); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_FIELD_DECLARATION: + { + ALSFieldDeclaration alsFieldDeclaration = (ALSFieldDeclaration)theEObject; + T result = caseALSFieldDeclaration(alsFieldDeclaration); + if (result == null) result = caseALSRelationDeclaration(alsFieldDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_DEFINITION: + { + ALSDefinition alsDefinition = (ALSDefinition)theEObject; + T result = caseALSDefinition(alsDefinition); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION: + { + ALSFunctionDefinition alsFunctionDefinition = (ALSFunctionDefinition)theEObject; + T result = caseALSFunctionDefinition(alsFunctionDefinition); + if (result == null) result = caseALSDefinition(alsFunctionDefinition); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_RELATION_DEFINITION: + { + ALSRelationDefinition alsRelationDefinition = (ALSRelationDefinition)theEObject; + T result = caseALSRelationDefinition(alsRelationDefinition); + if (result == null) result = caseALSDefinition(alsRelationDefinition); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_FACT_DECLARATION: + { + ALSFactDeclaration alsFactDeclaration = (ALSFactDeclaration)theEObject; + T result = caseALSFactDeclaration(alsFactDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_TERM: + { + ALSTerm alsTerm = (ALSTerm)theEObject; + T result = caseALSTerm(alsTerm); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION: + { + ALSVariableDeclaration alsVariableDeclaration = (ALSVariableDeclaration)theEObject; + T result = caseALSVariableDeclaration(alsVariableDeclaration); + if (result == null) result = caseALSRelationDeclaration(alsVariableDeclaration); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_RUN_COMMAND: + { + ALSRunCommand alsRunCommand = (ALSRunCommand)theEObject; + T result = caseALSRunCommand(alsRunCommand); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_TYPE_SCOPE: + { + ALSTypeScope alsTypeScope = (ALSTypeScope)theEObject; + T result = caseALSTypeScope(alsTypeScope); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_SIG_SCOPE: + { + ALSSigScope alsSigScope = (ALSSigScope)theEObject; + T result = caseALSSigScope(alsSigScope); + if (result == null) result = caseALSTypeScope(alsSigScope); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_INT_SCOPE: + { + ALSIntScope alsIntScope = (ALSIntScope)theEObject; + T result = caseALSIntScope(alsIntScope); + if (result == null) result = caseALSTypeScope(alsIntScope); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_QUANTIFIED_EX: + { + ALSQuantifiedEx alsQuantifiedEx = (ALSQuantifiedEx)theEObject; + T result = caseALSQuantifiedEx(alsQuantifiedEx); + if (result == null) result = caseALSTerm(alsQuantifiedEx); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_OR: + { + ALSOr alsOr = (ALSOr)theEObject; + T result = caseALSOr(alsOr); + if (result == null) result = caseALSTerm(alsOr); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_IFF: + { + ALSIff alsIff = (ALSIff)theEObject; + T result = caseALSIff(alsIff); + if (result == null) result = caseALSTerm(alsIff); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_IMPL: + { + ALSImpl alsImpl = (ALSImpl)theEObject; + T result = caseALSImpl(alsImpl); + if (result == null) result = caseALSTerm(alsImpl); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_AND: + { + ALSAnd alsAnd = (ALSAnd)theEObject; + T result = caseALSAnd(alsAnd); + if (result == null) result = caseALSTerm(alsAnd); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_EQUALS: + { + ALSEquals alsEquals = (ALSEquals)theEObject; + T result = caseALSEquals(alsEquals); + if (result == null) result = caseALSTerm(alsEquals); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_NOT_EQUALS: + { + ALSNotEquals alsNotEquals = (ALSNotEquals)theEObject; + T result = caseALSNotEquals(alsNotEquals); + if (result == null) result = caseALSTerm(alsNotEquals); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_SUBSET: + { + ALSSubset alsSubset = (ALSSubset)theEObject; + T result = caseALSSubset(alsSubset); + if (result == null) result = caseALSTerm(alsSubset); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_LESS: + { + ALSLess alsLess = (ALSLess)theEObject; + T result = caseALSLess(alsLess); + if (result == null) result = caseALSTerm(alsLess); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_LEQ: + { + ALSLeq alsLeq = (ALSLeq)theEObject; + T result = caseALSLeq(alsLeq); + if (result == null) result = caseALSTerm(alsLeq); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_MORE: + { + ALSMore alsMore = (ALSMore)theEObject; + T result = caseALSMore(alsMore); + if (result == null) result = caseALSTerm(alsMore); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_MEQ: + { + ALSMeq alsMeq = (ALSMeq)theEObject; + T result = caseALSMeq(alsMeq); + if (result == null) result = caseALSTerm(alsMeq); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_OVERRIDE: + { + ALSOverride alsOverride = (ALSOverride)theEObject; + T result = caseALSOverride(alsOverride); + if (result == null) result = caseALSTerm(alsOverride); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT: + { + ALSRangeRestrictionRight alsRangeRestrictionRight = (ALSRangeRestrictionRight)theEObject; + T result = caseALSRangeRestrictionRight(alsRangeRestrictionRight); + if (result == null) result = caseALSTerm(alsRangeRestrictionRight); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT: + { + ALSRangeRestrictionLeft alsRangeRestrictionLeft = (ALSRangeRestrictionLeft)theEObject; + T result = caseALSRangeRestrictionLeft(alsRangeRestrictionLeft); + if (result == null) result = caseALSTerm(alsRangeRestrictionLeft); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_JOIN: + { + ALSJoin alsJoin = (ALSJoin)theEObject; + T result = caseALSJoin(alsJoin); + if (result == null) result = caseALSTerm(alsJoin); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_MINUS: + { + ALSMinus alsMinus = (ALSMinus)theEObject; + T result = caseALSMinus(alsMinus); + if (result == null) result = caseALSTerm(alsMinus); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_PLUS: + { + ALSPlus alsPlus = (ALSPlus)theEObject; + T result = caseALSPlus(alsPlus); + if (result == null) result = caseALSTerm(alsPlus); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_INTERSECTION: + { + ALSIntersection alsIntersection = (ALSIntersection)theEObject; + T result = caseALSIntersection(alsIntersection); + if (result == null) result = caseALSTerm(alsIntersection); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT: + { + ALSDirectProduct alsDirectProduct = (ALSDirectProduct)theEObject; + T result = caseALSDirectProduct(alsDirectProduct); + if (result == null) result = caseALSTerm(alsDirectProduct); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_NOT: + { + ALSNot alsNot = (ALSNot)theEObject; + T result = caseALSNot(alsNot); + if (result == null) result = caseALSTerm(alsNot); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_INVERSE_RELATION: + { + ALSInverseRelation alsInverseRelation = (ALSInverseRelation)theEObject; + T result = caseALSInverseRelation(alsInverseRelation); + if (result == null) result = caseALSTerm(alsInverseRelation); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE: + { + AlSTransitiveClosure alSTransitiveClosure = (AlSTransitiveClosure)theEObject; + T result = caseAlSTransitiveClosure(alSTransitiveClosure); + if (result == null) result = caseALSTerm(alSTransitiveClosure); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE: + { + ALSReflectiveTransitiveClosure alsReflectiveTransitiveClosure = (ALSReflectiveTransitiveClosure)theEObject; + T result = caseALSReflectiveTransitiveClosure(alsReflectiveTransitiveClosure); + if (result == null) result = caseALSTerm(alsReflectiveTransitiveClosure); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_CARDINALITY: + { + ALSCardinality alsCardinality = (ALSCardinality)theEObject; + T result = caseALSCardinality(alsCardinality); + if (result == null) result = caseALSTerm(alsCardinality); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_UNARY_MINUS: + { + ALSUnaryMinus alsUnaryMinus = (ALSUnaryMinus)theEObject; + T result = caseALSUnaryMinus(alsUnaryMinus); + if (result == null) result = caseALSTerm(alsUnaryMinus); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_SUM: + { + ALSSum alsSum = (ALSSum)theEObject; + T result = caseALSSum(alsSum); + if (result == null) result = caseALSTerm(alsSum); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_FUNCTION_CALL: + { + ALSFunctionCall alsFunctionCall = (ALSFunctionCall)theEObject; + T result = caseALSFunctionCall(alsFunctionCall); + if (result == null) result = caseALSTerm(alsFunctionCall); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_NONE: + { + ALSNone alsNone = (ALSNone)theEObject; + T result = caseALSNone(alsNone); + if (result == null) result = caseALSTerm(alsNone); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_IDEN: + { + ALSIden alsIden = (ALSIden)theEObject; + T result = caseALSIden(alsIden); + if (result == null) result = caseALSTerm(alsIden); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_UNIV: + { + ALSUniv alsUniv = (ALSUniv)theEObject; + T result = caseALSUniv(alsUniv); + if (result == null) result = caseALSTerm(alsUniv); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_INT: + { + ALSInt alsInt = (ALSInt)theEObject; + T result = caseALSInt(alsInt); + if (result == null) result = caseALSTerm(alsInt); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_REFERENCE: + { + ALSReference alsReference = (ALSReference)theEObject; + T result = caseALSReference(alsReference); + if (result == null) result = caseALSTerm(alsReference); + if (result == null) result = defaultCase(theEObject); + return result; + } + case AlloyLanguagePackage.ALS_NUMBER_LITERAL: + { + ALSNumberLiteral alsNumberLiteral = (ALSNumberLiteral)theEObject; + T result = caseALSNumberLiteral(alsNumberLiteral); + if (result == null) result = caseALSTerm(alsNumberLiteral); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Document'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Document'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSDocument(ALSDocument object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Relation Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Relation Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSRelationDeclaration(ALSRelationDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Type Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Type Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSTypeDeclaration(ALSTypeDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Enum Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Enum Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSEnumDeclaration(ALSEnumDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Enum Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Enum Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSEnumLiteral(ALSEnumLiteral object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Signature Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Signature Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSSignatureDeclaration(ALSSignatureDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Signature Body'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Signature Body'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSSignatureBody(ALSSignatureBody object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Field Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Field Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSFieldDeclaration(ALSFieldDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Definition'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Definition'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSDefinition(ALSDefinition object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Function Definition'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Function Definition'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSFunctionDefinition(ALSFunctionDefinition object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Relation Definition'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Relation Definition'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSRelationDefinition(ALSRelationDefinition object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Fact Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Fact Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSFactDeclaration(ALSFactDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Term'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Term'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSTerm(ALSTerm object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Variable Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Variable Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSVariableDeclaration(ALSVariableDeclaration object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Run Command'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Run Command'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSRunCommand(ALSRunCommand object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Type Scope'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Type Scope'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSTypeScope(ALSTypeScope object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Sig Scope'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Sig Scope'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSSigScope(ALSSigScope object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Int Scope'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Int Scope'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSIntScope(ALSIntScope object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Quantified Ex'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Quantified Ex'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSQuantifiedEx(ALSQuantifiedEx object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Or'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Or'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSOr(ALSOr object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Iff'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Iff'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSIff(ALSIff object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Impl'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Impl'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSImpl(ALSImpl object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS And'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS And'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSAnd(ALSAnd object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Equals'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Equals'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSEquals(ALSEquals object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Not Equals'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Not Equals'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSNotEquals(ALSNotEquals object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Subset'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Subset'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSSubset(ALSSubset object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Less'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Less'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSLess(ALSLess object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Leq'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Leq'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSLeq(ALSLeq object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS More'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS More'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSMore(ALSMore object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Meq'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Meq'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSMeq(ALSMeq object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Override'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Override'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSOverride(ALSOverride object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Range Restriction Right'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Range Restriction Right'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSRangeRestrictionRight(ALSRangeRestrictionRight object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Range Restriction Left'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Range Restriction Left'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSRangeRestrictionLeft(ALSRangeRestrictionLeft object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Join'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Join'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSJoin(ALSJoin object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Minus'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Minus'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSMinus(ALSMinus object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Plus'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Plus'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSPlus(ALSPlus object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Intersection'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Intersection'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSIntersection(ALSIntersection object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Direct Product'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Direct Product'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSDirectProduct(ALSDirectProduct object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Not'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Not'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSNot(ALSNot object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Inverse Relation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Inverse Relation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSInverseRelation(ALSInverseRelation object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Al STransitive Closure'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Al STransitive Closure'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAlSTransitiveClosure(AlSTransitiveClosure object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Reflective Transitive Closure'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Reflective Transitive Closure'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSReflectiveTransitiveClosure(ALSReflectiveTransitiveClosure object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Cardinality'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Cardinality'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSCardinality(ALSCardinality object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Unary Minus'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Unary Minus'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSUnaryMinus(ALSUnaryMinus object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Sum'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Sum'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSSum(ALSSum object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Function Call'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Function Call'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSFunctionCall(ALSFunctionCall object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS None'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS None'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSNone(ALSNone object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Iden'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Iden'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSIden(ALSIden object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Univ'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Univ'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSUniv(ALSUniv object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Int'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Int'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSInt(ALSInt object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Reference'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Reference'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSReference(ALSReference object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'ALS Number Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'ALS Number Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseALSNumberLiteral(ALSNumberLiteral object) + { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'EObject'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'EObject'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) + { + return null; + } + +} //AlloyLanguageSwitch diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageAntlrTokenFileProvider.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageAntlrTokenFileProvider.java new file mode 100644 index 00000000..935f6869 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageAntlrTokenFileProvider.java @@ -0,0 +1,16 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner.parser.antlr; + +import java.io.InputStream; +import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; + +public class AlloyLanguageAntlrTokenFileProvider implements IAntlrTokenFileProvider { + + @Override + public InputStream getAntlrTokenFile() { + ClassLoader classLoader = getClass().getClassLoader(); + return classLoader.getResourceAsStream("hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.tokens"); + } +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageParser.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageParser.java new file mode 100644 index 00000000..4d86e4da --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/AlloyLanguageParser.java @@ -0,0 +1,39 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner.parser.antlr; + +import com.google.inject.Inject; + +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import hu.bme.mit.inf.dslreasoner.services.AlloyLanguageGrammarAccess; + +public class AlloyLanguageParser extends org.eclipse.xtext.parser.antlr.AbstractAntlrParser { + + @Inject + private AlloyLanguageGrammarAccess grammarAccess; + + @Override + protected void setInitialHiddenTokens(XtextTokenStream tokenStream) { + tokenStream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); + } + + @Override + protected hu.bme.mit.inf.dslreasoner.parser.antlr.internal.InternalAlloyLanguageParser createParser(XtextTokenStream stream) { + return new hu.bme.mit.inf.dslreasoner.parser.antlr.internal.InternalAlloyLanguageParser(stream, getGrammarAccess()); + } + + @Override + protected String getDefaultRuleName() { + return "ALSDocument"; + } + + public AlloyLanguageGrammarAccess getGrammarAccess() { + return this.grammarAccess; + } + + public void setGrammarAccess(AlloyLanguageGrammarAccess grammarAccess) { + this.grammarAccess = grammarAccess; + } + +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.g b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.g new file mode 100644 index 00000000..25558250 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.g @@ -0,0 +1,3046 @@ +/* + * generated by Xtext + */ +grammar InternalAlloyLanguage; + +options { + superClass=AbstractInternalAntlrParser; + +} + +@lexer::header { +package hu.bme.mit.inf.dslreasoner.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; +} + +@parser::header { +package hu.bme.mit.inf.dslreasoner.parser.antlr.internal; + +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.common.util.Enumerator; +import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; +import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; +import hu.bme.mit.inf.dslreasoner.services.AlloyLanguageGrammarAccess; + +} + +@parser::members { + + private AlloyLanguageGrammarAccess grammarAccess; + + public InternalAlloyLanguageParser(TokenStream input, AlloyLanguageGrammarAccess grammarAccess) { + this(input); + this.grammarAccess = grammarAccess; + registerRules(grammarAccess.getGrammar()); + } + + @Override + protected String getFirstRuleName() { + return "ALSDocument"; + } + + @Override + protected AlloyLanguageGrammarAccess getGrammarAccess() { + return grammarAccess; + } +} + +@rulecatch { + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } +} + + + + +// Entry rule entryRuleALSDocument +entryRuleALSDocument returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSDocumentRule()); } + iv_ruleALSDocument=ruleALSDocument + { $current=$iv_ruleALSDocument.current; } + EOF +; + +// Rule ALSDocument +ruleALSDocument returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +((( +( + { + newCompositeNode(grammarAccess.getALSDocumentAccess().getEnumDeclarationsALSEnumDeclarationParserRuleCall_0_0_0()); + } + lv_enumDeclarations_0_0=ruleALSEnumDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + $current, + "enumDeclarations", + lv_enumDeclarations_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +) + |( +( + { + newCompositeNode(grammarAccess.getALSDocumentAccess().getSignatureBodiesALSSignatureBodyParserRuleCall_0_1_0()); + } + lv_signatureBodies_1_0=ruleALSSignatureBody { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + $current, + "signatureBodies", + lv_signatureBodies_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureBody"); + afterParserOrEnumRuleCall(); + } + +) +) + |( +( + { + newCompositeNode(grammarAccess.getALSDocumentAccess().getFunctionDefinitionsALSFunctionDefinitionParserRuleCall_0_2_0()); + } + lv_functionDefinitions_2_0=ruleALSFunctionDefinition { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + $current, + "functionDefinitions", + lv_functionDefinitions_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFunctionDefinition"); + afterParserOrEnumRuleCall(); + } + +) +) + |( +( + { + newCompositeNode(grammarAccess.getALSDocumentAccess().getRelationDefinitionsALSRelationDefinitionParserRuleCall_0_3_0()); + } + lv_relationDefinitions_3_0=ruleALSRelationDefinition { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + $current, + "relationDefinitions", + lv_relationDefinitions_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRelationDefinition"); + afterParserOrEnumRuleCall(); + } + +) +) + |( +( + { + newCompositeNode(grammarAccess.getALSDocumentAccess().getFactDeclarationsALSFactDeclarationParserRuleCall_0_4_0()); + } + lv_factDeclarations_4_0=ruleALSFactDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + $current, + "factDeclarations", + lv_factDeclarations_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFactDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))+( +( + { + newCompositeNode(grammarAccess.getALSDocumentAccess().getRunCommandALSRunCommandParserRuleCall_1_0()); + } + lv_runCommand_5_0=ruleALSRunCommand { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + set( + $current, + "runCommand", + lv_runCommand_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRunCommand"); + afterParserOrEnumRuleCall(); + } + +) +)) +; + + + + + +// Entry rule entryRuleALSID +entryRuleALSID returns [String current=null] + : + { newCompositeNode(grammarAccess.getALSIDRule()); } + iv_ruleALSID=ruleALSID + { $current=$iv_ruleALSID.current.getText(); } + EOF +; + +// Rule ALSID +ruleALSID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] + @init { enterRule(); + } + @after { leaveRule(); }: + this_ID_0=RULE_ID { + $current.merge(this_ID_0); + } + + { + newLeafNode(this_ID_0, grammarAccess.getALSIDAccess().getIDTerminalRuleCall()); + } + + ; + + + + + + + +// Entry rule entryRuleALSTypeDeclaration +entryRuleALSTypeDeclaration returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSTypeDeclarationRule()); } + iv_ruleALSTypeDeclaration=ruleALSTypeDeclaration + { $current=$iv_ruleALSTypeDeclaration.current; } + EOF +; + +// Rule ALSTypeDeclaration +ruleALSTypeDeclaration returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSTypeDeclarationAccess().getALSEnumDeclarationParserRuleCall_0()); + } + this_ALSEnumDeclaration_0=ruleALSEnumDeclaration + { + $current = $this_ALSEnumDeclaration_0.current; + afterParserOrEnumRuleCall(); + } + + | + { + newCompositeNode(grammarAccess.getALSTypeDeclarationAccess().getALSSignatureDeclarationParserRuleCall_1()); + } + this_ALSSignatureDeclaration_1=ruleALSSignatureDeclaration + { + $current = $this_ALSSignatureDeclaration_1.current; + afterParserOrEnumRuleCall(); + } +) +; + + + + + +// Entry rule entryRuleALSEnumDeclaration +entryRuleALSEnumDeclaration returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSEnumDeclarationRule()); } + iv_ruleALSEnumDeclaration=ruleALSEnumDeclaration + { $current=$iv_ruleALSEnumDeclaration.current; } + EOF +; + +// Rule ALSEnumDeclaration +ruleALSEnumDeclaration returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( otherlv_0='enum' + { + newLeafNode(otherlv_0, grammarAccess.getALSEnumDeclarationAccess().getEnumKeyword_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSEnumDeclarationAccess().getNameALSIDParserRuleCall_1_0()); + } + lv_name_1_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSEnumDeclarationRule()); + } + set( + $current, + "name", + lv_name_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_2='{' + { + newLeafNode(otherlv_2, grammarAccess.getALSEnumDeclarationAccess().getLeftCurlyBracketKeyword_2()); + } +( +( + { + newCompositeNode(grammarAccess.getALSEnumDeclarationAccess().getLiteralALSEnumLiteralParserRuleCall_3_0()); + } + lv_literal_3_0=ruleALSEnumLiteral { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSEnumDeclarationRule()); + } + add( + $current, + "literal", + lv_literal_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumLiteral"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_4=',' + { + newLeafNode(otherlv_4, grammarAccess.getALSEnumDeclarationAccess().getCommaKeyword_4_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSEnumDeclarationAccess().getLiteralALSEnumLiteralParserRuleCall_4_1_0()); + } + lv_literal_5_0=ruleALSEnumLiteral { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSEnumDeclarationRule()); + } + add( + $current, + "literal", + lv_literal_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumLiteral"); + afterParserOrEnumRuleCall(); + } + +) +))* otherlv_6='}' + { + newLeafNode(otherlv_6, grammarAccess.getALSEnumDeclarationAccess().getRightCurlyBracketKeyword_5()); + } +) +; + + + + + +// Entry rule entryRuleALSEnumLiteral +entryRuleALSEnumLiteral returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSEnumLiteralRule()); } + iv_ruleALSEnumLiteral=ruleALSEnumLiteral + { $current=$iv_ruleALSEnumLiteral.current; } + EOF +; + +// Rule ALSEnumLiteral +ruleALSEnumLiteral returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( +( + { + newCompositeNode(grammarAccess.getALSEnumLiteralAccess().getNameALSIDParserRuleCall_0()); + } + lv_name_0_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSEnumLiteralRule()); + } + set( + $current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) +; + + + + + +// Entry rule entryRuleALSSignatureDeclaration +entryRuleALSSignatureDeclaration returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSSignatureDeclarationRule()); } + iv_ruleALSSignatureDeclaration=ruleALSSignatureDeclaration + { $current=$iv_ruleALSSignatureDeclaration.current; } + EOF +; + +// Rule ALSSignatureDeclaration +ruleALSSignatureDeclaration returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( +( + { + newCompositeNode(grammarAccess.getALSSignatureDeclarationAccess().getNameALSIDParserRuleCall_0()); + } + lv_name_0_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSSignatureDeclarationRule()); + } + set( + $current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) +; + + + + + +// Entry rule entryRuleALSSignatureBody +entryRuleALSSignatureBody returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSSignatureBodyRule()); } + iv_ruleALSSignatureBody=ruleALSSignatureBody + { $current=$iv_ruleALSSignatureBody.current; } + EOF +; + +// Rule ALSSignatureBody +ruleALSSignatureBody returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( + +( + { + getUnorderedGroupHelper().enter(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + } + ( + ( + + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0); + } + ({true}?=>( +( + { + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getMultiplicityALSMultiplicityEnumRuleCall_0_0_0()); + } + lv_multiplicity_1_0=ruleALSMultiplicity { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + set( + $current, + "multiplicity", + lv_multiplicity_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + } + +) +)) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + } + ) + ) | + + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1); + } + ({true}?=>( +( + lv_abstract_2_0= 'abstract' + { + newLeafNode(lv_abstract_2_0, grammarAccess.getALSSignatureBodyAccess().getAbstractAbstractKeyword_0_1_0()); + } + + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + setWithLastConsumed($current, "abstract", true, "abstract"); + } + +) +)) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + } + ) + ) + + )* + ) +) + { + getUnorderedGroupHelper().leave(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + } + +) otherlv_3='sig' + { + newLeafNode(otherlv_3, grammarAccess.getALSSignatureBodyAccess().getSigKeyword_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getDeclarationsALSSignatureDeclarationParserRuleCall_2_0()); + } + lv_declarations_4_0=ruleALSSignatureDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + $current, + "declarations", + lv_declarations_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_5=',' + { + newLeafNode(otherlv_5, grammarAccess.getALSSignatureBodyAccess().getCommaKeyword_3_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getDeclarationsALSSignatureDeclarationParserRuleCall_3_1_0()); + } + lv_declarations_6_0=ruleALSSignatureDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + $current, + "declarations", + lv_declarations_6_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))*(( otherlv_7='extends' + { + newLeafNode(otherlv_7, grammarAccess.getALSSignatureBodyAccess().getExtendsKeyword_4_0_0()); + } +( +( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + } + otherlv_8=RULE_ID + { + newLeafNode(otherlv_8, grammarAccess.getALSSignatureBodyAccess().getSupertypeALSSignatureDeclarationCrossReference_4_0_1_0()); + } + +) +)) + |( otherlv_9='in' + { + newLeafNode(otherlv_9, grammarAccess.getALSSignatureBodyAccess().getInKeyword_4_1_0()); + } +( +( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + } + otherlv_10=RULE_ID + { + newLeafNode(otherlv_10, grammarAccess.getALSSignatureBodyAccess().getSupersetALSSignatureDeclarationCrossReference_4_1_1_0()); + } + +) +)( otherlv_11='+' + { + newLeafNode(otherlv_11, grammarAccess.getALSSignatureBodyAccess().getPlusSignKeyword_4_1_2_0()); + } +( +( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + } + otherlv_12=RULE_ID + { + newLeafNode(otherlv_12, grammarAccess.getALSSignatureBodyAccess().getSupersetALSSignatureDeclarationCrossReference_4_1_2_1_0()); + } + +) +))*))? otherlv_13='{' + { + newLeafNode(otherlv_13, grammarAccess.getALSSignatureBodyAccess().getLeftCurlyBracketKeyword_5()); + } +(( +( + { + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getFieldsALSFieldDeclarationParserRuleCall_6_0_0()); + } + lv_fields_14_0=ruleALSFieldDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + $current, + "fields", + lv_fields_14_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFieldDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_15=',' + { + newLeafNode(otherlv_15, grammarAccess.getALSSignatureBodyAccess().getCommaKeyword_6_1_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getFieldsALSFieldDeclarationParserRuleCall_6_1_1_0()); + } + lv_fields_16_0=ruleALSFieldDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + $current, + "fields", + lv_fields_16_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFieldDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))*)? otherlv_17='}' + { + newLeafNode(otherlv_17, grammarAccess.getALSSignatureBodyAccess().getRightCurlyBracketKeyword_7()); + } +) +; + + + + + +// Entry rule entryRuleALSFieldDeclaration +entryRuleALSFieldDeclaration returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSFieldDeclarationRule()); } + iv_ruleALSFieldDeclaration=ruleALSFieldDeclaration + { $current=$iv_ruleALSFieldDeclaration.current; } + EOF +; + +// Rule ALSFieldDeclaration +ruleALSFieldDeclaration returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( +( + { + newCompositeNode(grammarAccess.getALSFieldDeclarationAccess().getNameALSIDParserRuleCall_0_0()); + } + lv_name_0_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFieldDeclarationRule()); + } + set( + $current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_1=':' + { + newLeafNode(otherlv_1, grammarAccess.getALSFieldDeclarationAccess().getColonKeyword_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFieldDeclarationAccess().getMultiplicityALSMultiplicityEnumRuleCall_2_0()); + } + lv_multiplicity_2_0=ruleALSMultiplicity { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFieldDeclarationRule()); + } + set( + $current, + "multiplicity", + lv_multiplicity_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + } + +) +)?( +( + { + newCompositeNode(grammarAccess.getALSFieldDeclarationAccess().getTypeALSTermParserRuleCall_3_0()); + } + lv_type_3_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFieldDeclarationRule()); + } + set( + $current, + "type", + lv_type_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) +; + + + + + + + +// Entry rule entryRuleALSFunctionDefinition +entryRuleALSFunctionDefinition returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSFunctionDefinitionRule()); } + iv_ruleALSFunctionDefinition=ruleALSFunctionDefinition + { $current=$iv_ruleALSFunctionDefinition.current; } + EOF +; + +// Rule ALSFunctionDefinition +ruleALSFunctionDefinition returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( otherlv_0='fun' + { + newLeafNode(otherlv_0, grammarAccess.getALSFunctionDefinitionAccess().getFunKeyword_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getNameALSIDParserRuleCall_1_0()); + } + lv_name_1_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + set( + $current, + "name", + lv_name_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_2='[' + { + newLeafNode(otherlv_2, grammarAccess.getALSFunctionDefinitionAccess().getLeftSquareBracketKeyword_2()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_3_0()); + } + lv_variables_3_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + add( + $current, + "variables", + lv_variables_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_4=',' + { + newLeafNode(otherlv_4, grammarAccess.getALSFunctionDefinitionAccess().getCommaKeyword_4_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_4_1_0()); + } + lv_variables_5_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + add( + $current, + "variables", + lv_variables_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))* otherlv_6=']' + { + newLeafNode(otherlv_6, grammarAccess.getALSFunctionDefinitionAccess().getRightSquareBracketKeyword_5()); + } + otherlv_7=':' + { + newLeafNode(otherlv_7, grammarAccess.getALSFunctionDefinitionAccess().getColonKeyword_6()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getTypeALSTermParserRuleCall_7_0()); + } + lv_type_8_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + set( + $current, + "type", + lv_type_8_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_9='{' + { + newLeafNode(otherlv_9, grammarAccess.getALSFunctionDefinitionAccess().getLeftCurlyBracketKeyword_8()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getValueALSTermParserRuleCall_9_0()); + } + lv_value_10_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + set( + $current, + "value", + lv_value_10_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_11='}' + { + newLeafNode(otherlv_11, grammarAccess.getALSFunctionDefinitionAccess().getRightCurlyBracketKeyword_10()); + } +) +; + + + + + +// Entry rule entryRuleALSRelationDefinition +entryRuleALSRelationDefinition returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSRelationDefinitionRule()); } + iv_ruleALSRelationDefinition=ruleALSRelationDefinition + { $current=$iv_ruleALSRelationDefinition.current; } + EOF +; + +// Rule ALSRelationDefinition +ruleALSRelationDefinition returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( otherlv_0='pred' + { + newLeafNode(otherlv_0, grammarAccess.getALSRelationDefinitionAccess().getPredKeyword_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getNameALSIDParserRuleCall_1_0()); + } + lv_name_1_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + set( + $current, + "name", + lv_name_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_2='[' + { + newLeafNode(otherlv_2, grammarAccess.getALSRelationDefinitionAccess().getLeftSquareBracketKeyword_2()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_3_0()); + } + lv_variables_3_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + add( + $current, + "variables", + lv_variables_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_4=',' + { + newLeafNode(otherlv_4, grammarAccess.getALSRelationDefinitionAccess().getCommaKeyword_4_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_4_1_0()); + } + lv_variables_5_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + add( + $current, + "variables", + lv_variables_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))* otherlv_6=']' + { + newLeafNode(otherlv_6, grammarAccess.getALSRelationDefinitionAccess().getRightSquareBracketKeyword_5()); + } + otherlv_7='{' + { + newLeafNode(otherlv_7, grammarAccess.getALSRelationDefinitionAccess().getLeftCurlyBracketKeyword_6()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getValueALSTermParserRuleCall_7_0()); + } + lv_value_8_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + set( + $current, + "value", + lv_value_8_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_9='}' + { + newLeafNode(otherlv_9, grammarAccess.getALSRelationDefinitionAccess().getRightCurlyBracketKeyword_8()); + } +) +; + + + + + +// Entry rule entryRuleALSFactDeclaration +entryRuleALSFactDeclaration returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSFactDeclarationRule()); } + iv_ruleALSFactDeclaration=ruleALSFactDeclaration + { $current=$iv_ruleALSFactDeclaration.current; } + EOF +; + +// Rule ALSFactDeclaration +ruleALSFactDeclaration returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( + { + $current = forceCreateModelElement( + grammarAccess.getALSFactDeclarationAccess().getALSFactDeclarationAction_0(), + $current); + } +) otherlv_1='fact' + { + newLeafNode(otherlv_1, grammarAccess.getALSFactDeclarationAccess().getFactKeyword_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFactDeclarationAccess().getNameALSIDParserRuleCall_2_0()); + } + lv_name_2_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFactDeclarationRule()); + } + set( + $current, + "name", + lv_name_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +)? otherlv_3='{' + { + newLeafNode(otherlv_3, grammarAccess.getALSFactDeclarationAccess().getLeftCurlyBracketKeyword_3()); + } +( +( + { + newCompositeNode(grammarAccess.getALSFactDeclarationAccess().getTermALSTermParserRuleCall_4_0()); + } + lv_term_4_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSFactDeclarationRule()); + } + set( + $current, + "term", + lv_term_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_5='}' + { + newLeafNode(otherlv_5, grammarAccess.getALSFactDeclarationAccess().getRightCurlyBracketKeyword_5()); + } +) +; + + + + + +// Entry rule entryRuleALSTerm +entryRuleALSTerm returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSTermRule()); } + iv_ruleALSTerm=ruleALSTerm + { $current=$iv_ruleALSTerm.current; } + EOF +; + +// Rule ALSTerm +ruleALSTerm returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: + + { + newCompositeNode(grammarAccess.getALSTermAccess().getALSQuantifiedParserRuleCall()); + } + this_ALSQuantified_0=ruleALSQuantified + { + $current = $this_ALSQuantified_0.current; + afterParserOrEnumRuleCall(); + } + +; + + + + + +// Entry rule entryRuleALSQuantified +entryRuleALSQuantified returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSQuantifiedRule()); } + iv_ruleALSQuantified=ruleALSQuantified + { $current=$iv_ruleALSQuantified.current; } + EOF +; + +// Rule ALSQuantified +ruleALSQuantified returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +((( + { + $current = forceCreateModelElement( + grammarAccess.getALSQuantifiedAccess().getALSQuantifiedExAction_0_0(), + $current); + } +)( +( + { + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getTypeALSMultiplicityEnumRuleCall_0_1_0()); + } + lv_type_1_0=ruleALSMultiplicity { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + set( + $current, + "type", + lv_type_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + } + +) +)( +( + lv_disj_2_0= 'disj' + { + newLeafNode(lv_disj_2_0, grammarAccess.getALSQuantifiedAccess().getDisjDisjKeyword_0_2_0()); + } + + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSQuantifiedRule()); + } + setWithLastConsumed($current, "disj", true, "disj"); + } + +) +)?( +( + { + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getVariablesALSVariableDeclarationParserRuleCall_0_3_0()); + } + lv_variables_3_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + add( + $current, + "variables", + lv_variables_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_4=',' + { + newLeafNode(otherlv_4, grammarAccess.getALSQuantifiedAccess().getCommaKeyword_0_4_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getVariablesALSVariableDeclarationParserRuleCall_0_4_1_0()); + } + lv_variables_5_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + add( + $current, + "variables", + lv_variables_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))* otherlv_6='{' + { + newLeafNode(otherlv_6, grammarAccess.getALSQuantifiedAccess().getLeftCurlyBracketKeyword_0_5()); + } +( +( + { + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getExpressionALSTermParserRuleCall_0_6_0()); + } + lv_expression_7_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + set( + $current, + "expression", + lv_expression_7_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_8='}' + { + newLeafNode(otherlv_8, grammarAccess.getALSQuantifiedAccess().getRightCurlyBracketKeyword_0_7()); + } +) + | + { + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getALSOrParserRuleCall_1()); + } + this_ALSOr_9=ruleALSOr + { + $current = $this_ALSOr_9.current; + afterParserOrEnumRuleCall(); + } +) +; + + + + + +// Entry rule entryRuleALSOr +entryRuleALSOr returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSOrRule()); } + iv_ruleALSOr=ruleALSOr + { $current=$iv_ruleALSOr.current; } + EOF +; + +// Rule ALSOr +ruleALSOr returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSOrAccess().getALSIffParserRuleCall_0()); + } + this_ALSIff_0=ruleALSIff + { + $current = $this_ALSIff_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSOrAccess().getALSOrLeftOperandAction_1_0(), + $current); + } +)( otherlv_2='||' + { + newLeafNode(otherlv_2, grammarAccess.getALSOrAccess().getVerticalLineVerticalLineKeyword_1_1_0()); + } + + | otherlv_3='or' + { + newLeafNode(otherlv_3, grammarAccess.getALSOrAccess().getOrKeyword_1_1_1()); + } +)( +( + { + newCompositeNode(grammarAccess.getALSOrAccess().getRightOperandALSIffParserRuleCall_1_2_0()); + } + lv_rightOperand_4_0=ruleALSIff { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSOrRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIff"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSIff +entryRuleALSIff returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSIffRule()); } + iv_ruleALSIff=ruleALSIff + { $current=$iv_ruleALSIff.current; } + EOF +; + +// Rule ALSIff +ruleALSIff returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSIffAccess().getALSImplParserRuleCall_0()); + } + this_ALSImpl_0=ruleALSImpl + { + $current = $this_ALSImpl_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSIffAccess().getALSIffLeftOperandAction_1_0(), + $current); + } +)( otherlv_2='<=>' + { + newLeafNode(otherlv_2, grammarAccess.getALSIffAccess().getLessThanSignEqualsSignGreaterThanSignKeyword_1_1_0()); + } + + | otherlv_3='iff' + { + newLeafNode(otherlv_3, grammarAccess.getALSIffAccess().getIffKeyword_1_1_1()); + } +)( +( + { + newCompositeNode(grammarAccess.getALSIffAccess().getRightOperandALSImplParserRuleCall_1_2_0()); + } + lv_rightOperand_4_0=ruleALSImpl { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSIffRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSImpl"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSImpl +entryRuleALSImpl returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSImplRule()); } + iv_ruleALSImpl=ruleALSImpl + { $current=$iv_ruleALSImpl.current; } + EOF +; + +// Rule ALSImpl +ruleALSImpl returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSImplAccess().getALSAndParserRuleCall_0()); + } + this_ALSAnd_0=ruleALSAnd + { + $current = $this_ALSAnd_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSImplAccess().getALSImplLeftOperandAction_1_0(), + $current); + } +)( otherlv_2='=>' + { + newLeafNode(otherlv_2, grammarAccess.getALSImplAccess().getEqualsSignGreaterThanSignKeyword_1_1_0()); + } + + | otherlv_3='implies' + { + newLeafNode(otherlv_3, grammarAccess.getALSImplAccess().getImpliesKeyword_1_1_1()); + } +)( +( + { + newCompositeNode(grammarAccess.getALSImplAccess().getRightOperandALSAndParserRuleCall_1_2_0()); + } + lv_rightOperand_4_0=ruleALSAnd { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSImplRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSAnd"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_5='else' + { + newLeafNode(otherlv_5, grammarAccess.getALSImplAccess().getElseKeyword_1_3_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSImplAccess().getElseOperandALSAndParserRuleCall_1_3_1_0()); + } + lv_elseOperand_6_0=ruleALSAnd { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSImplRule()); + } + set( + $current, + "elseOperand", + lv_elseOperand_6_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSAnd"); + afterParserOrEnumRuleCall(); + } + +) +))?)?) +; + + + + + +// Entry rule entryRuleALSAnd +entryRuleALSAnd returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSAndRule()); } + iv_ruleALSAnd=ruleALSAnd + { $current=$iv_ruleALSAnd.current; } + EOF +; + +// Rule ALSAnd +ruleALSAnd returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSAndAccess().getALSComparisonParserRuleCall_0()); + } + this_ALSComparison_0=ruleALSComparison + { + $current = $this_ALSComparison_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSAndAccess().getALSAndLeftOperandAction_1_0(), + $current); + } +)( otherlv_2='&&' + { + newLeafNode(otherlv_2, grammarAccess.getALSAndAccess().getAmpersandAmpersandKeyword_1_1_0()); + } + + | otherlv_3='and' + { + newLeafNode(otherlv_3, grammarAccess.getALSAndAccess().getAndKeyword_1_1_1()); + } +)( +( + { + newCompositeNode(grammarAccess.getALSAndAccess().getRightOperandALSComparisonParserRuleCall_1_2_0()); + } + lv_rightOperand_4_0=ruleALSComparison { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSAndRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSComparison"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSComparison +entryRuleALSComparison returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSComparisonRule()); } + iv_ruleALSComparison=ruleALSComparison + { $current=$iv_ruleALSComparison.current; } + EOF +; + +// Rule ALSComparison +ruleALSComparison returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSComparisonAccess().getALSOverrideParserRuleCall_0()); + } + this_ALSOverride_0=ruleALSOverride + { + $current = $this_ALSOverride_0.current; + afterParserOrEnumRuleCall(); + } +(((( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSEqualsLeftOperandAction_1_0_0_0(), + $current); + } +) otherlv_2='=' + { + newLeafNode(otherlv_2, grammarAccess.getALSComparisonAccess().getEqualsSignKeyword_1_0_0_1()); + } +) + |(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSNotEqualsLeftOperandAction_1_0_1_0(), + $current); + } +) otherlv_4='!=' + { + newLeafNode(otherlv_4, grammarAccess.getALSComparisonAccess().getExclamationMarkEqualsSignKeyword_1_0_1_1()); + } +) + |(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSSubsetLeftOperandAction_1_0_2_0(), + $current); + } +) otherlv_6='in' + { + newLeafNode(otherlv_6, grammarAccess.getALSComparisonAccess().getInKeyword_1_0_2_1()); + } +) + |(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSLessLeftOperandAction_1_0_3_0(), + $current); + } +) otherlv_8='>' + { + newLeafNode(otherlv_8, grammarAccess.getALSComparisonAccess().getGreaterThanSignKeyword_1_0_3_1()); + } +) + |(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSLeqLeftOperandAction_1_0_4_0(), + $current); + } +) otherlv_10='>=' + { + newLeafNode(otherlv_10, grammarAccess.getALSComparisonAccess().getGreaterThanSignEqualsSignKeyword_1_0_4_1()); + } +) + |(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSMoreLeftOperandAction_1_0_5_0(), + $current); + } +) otherlv_12='<' + { + newLeafNode(otherlv_12, grammarAccess.getALSComparisonAccess().getLessThanSignKeyword_1_0_5_1()); + } +) + |(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSMeqLeftOperandAction_1_0_6_0(), + $current); + } +) otherlv_14='<=' + { + newLeafNode(otherlv_14, grammarAccess.getALSComparisonAccess().getLessThanSignEqualsSignKeyword_1_0_6_1()); + } +))( +( + { + newCompositeNode(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0()); + } + lv_rightOperand_15_0=ruleALSOverride { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSComparisonRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_15_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSOverride"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSOverride +entryRuleALSOverride returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSOverrideRule()); } + iv_ruleALSOverride=ruleALSOverride + { $current=$iv_ruleALSOverride.current; } + EOF +; + +// Rule ALSOverride +ruleALSOverride returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSOverrideAccess().getALSRangeRestrictionRightParserRuleCall_0()); + } + this_ALSRangeRestrictionRight_0=ruleALSRangeRestrictionRight + { + $current = $this_ALSRangeRestrictionRight_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSOverrideAccess().getALSOverrideLeftOperandAction_1_0(), + $current); + } +) otherlv_2='++' + { + newLeafNode(otherlv_2, grammarAccess.getALSOverrideAccess().getPlusSignPlusSignKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSOverrideAccess().getRightOperandALSRangeRestrictionRightParserRuleCall_1_2_0()); + } + lv_rightOperand_3_0=ruleALSRangeRestrictionRight { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSOverrideRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRangeRestrictionRight"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSRangeRestrictionRight +entryRuleALSRangeRestrictionRight returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSRangeRestrictionRightRule()); } + iv_ruleALSRangeRestrictionRight=ruleALSRangeRestrictionRight + { $current=$iv_ruleALSRangeRestrictionRight.current; } + EOF +; + +// Rule ALSRangeRestrictionRight +ruleALSRangeRestrictionRight returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSRangeRestrictionRightAccess().getALSRangeRestrictionLeftParserRuleCall_0()); + } + this_ALSRangeRestrictionLeft_0=ruleALSRangeRestrictionLeft + { + $current = $this_ALSRangeRestrictionLeft_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSRangeRestrictionRightAccess().getALSRangeRestrictionRightRelationAction_1_0(), + $current); + } +) otherlv_2=':>' + { + newLeafNode(otherlv_2, grammarAccess.getALSRangeRestrictionRightAccess().getColonGreaterThanSignKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRangeRestrictionRightAccess().getFilterALSRangeRestrictionLeftParserRuleCall_1_2_0()); + } + lv_filter_3_0=ruleALSRangeRestrictionLeft { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRangeRestrictionRightRule()); + } + set( + $current, + "filter", + lv_filter_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRangeRestrictionLeft"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSRangeRestrictionLeft +entryRuleALSRangeRestrictionLeft returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSRangeRestrictionLeftRule()); } + iv_ruleALSRangeRestrictionLeft=ruleALSRangeRestrictionLeft + { $current=$iv_ruleALSRangeRestrictionLeft.current; } + EOF +; + +// Rule ALSRangeRestrictionLeft +ruleALSRangeRestrictionLeft returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSRangeRestrictionLeftAccess().getALSJoinParserRuleCall_0()); + } + this_ALSJoin_0=ruleALSJoin + { + $current = $this_ALSJoin_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSRangeRestrictionLeftAccess().getALSRangeRestrictionLeftFilterAction_1_0(), + $current); + } +) otherlv_2='<:' + { + newLeafNode(otherlv_2, grammarAccess.getALSRangeRestrictionLeftAccess().getLessThanSignColonKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRangeRestrictionLeftAccess().getRelationALSJoinParserRuleCall_1_2_0()); + } + lv_relation_3_0=ruleALSJoin { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRangeRestrictionLeftRule()); + } + set( + $current, + "relation", + lv_relation_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSJoin"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSJoin +entryRuleALSJoin returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSJoinRule()); } + iv_ruleALSJoin=ruleALSJoin + { $current=$iv_ruleALSJoin.current; } + EOF +; + +// Rule ALSJoin +ruleALSJoin returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSJoinAccess().getALSMinusParserRuleCall_0()); + } + this_ALSMinus_0=ruleALSMinus + { + $current = $this_ALSMinus_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSJoinAccess().getALSJoinLeftOperandAction_1_0(), + $current); + } +) otherlv_2='.' + { + newLeafNode(otherlv_2, grammarAccess.getALSJoinAccess().getFullStopKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSJoinAccess().getRightOperandALSMinusParserRuleCall_1_2_0()); + } + lv_rightOperand_3_0=ruleALSMinus { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSJoinRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMinus"); + afterParserOrEnumRuleCall(); + } + +) +))*) +; + + + + + +// Entry rule entryRuleALSMinus +entryRuleALSMinus returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSMinusRule()); } + iv_ruleALSMinus=ruleALSMinus + { $current=$iv_ruleALSMinus.current; } + EOF +; + +// Rule ALSMinus +ruleALSMinus returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSMinusAccess().getALSPlusParserRuleCall_0()); + } + this_ALSPlus_0=ruleALSPlus + { + $current = $this_ALSPlus_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSMinusAccess().getALSMinusLeftOperandAction_1_0(), + $current); + } +) otherlv_2='-' + { + newLeafNode(otherlv_2, grammarAccess.getALSMinusAccess().getHyphenMinusKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSMinusAccess().getRightOperandALSPlusParserRuleCall_1_2_0()); + } + lv_rightOperand_3_0=ruleALSPlus { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSMinusRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSPlus"); + afterParserOrEnumRuleCall(); + } + +) +))*) +; + + + + + +// Entry rule entryRuleALSPlus +entryRuleALSPlus returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSPlusRule()); } + iv_ruleALSPlus=ruleALSPlus + { $current=$iv_ruleALSPlus.current; } + EOF +; + +// Rule ALSPlus +ruleALSPlus returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSPlusAccess().getALSIntersectionParserRuleCall_0()); + } + this_ALSIntersection_0=ruleALSIntersection + { + $current = $this_ALSIntersection_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSPlusAccess().getALSPlusLeftOperandAction_1_0(), + $current); + } +) otherlv_2='+' + { + newLeafNode(otherlv_2, grammarAccess.getALSPlusAccess().getPlusSignKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPlusAccess().getRightOperandALSIntersectionParserRuleCall_1_2_0()); + } + lv_rightOperand_3_0=ruleALSIntersection { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPlusRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIntersection"); + afterParserOrEnumRuleCall(); + } + +) +))*) +; + + + + + +// Entry rule entryRuleALSIntersection +entryRuleALSIntersection returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSIntersectionRule()); } + iv_ruleALSIntersection=ruleALSIntersection + { $current=$iv_ruleALSIntersection.current; } + EOF +; + +// Rule ALSIntersection +ruleALSIntersection returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSIntersectionAccess().getALSDirectProductParserRuleCall_0()); + } + this_ALSDirectProduct_0=ruleALSDirectProduct + { + $current = $this_ALSDirectProduct_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSIntersectionAccess().getALSIntersectionLeftOperandAction_1_0(), + $current); + } +) otherlv_2='&' + { + newLeafNode(otherlv_2, grammarAccess.getALSIntersectionAccess().getAmpersandKeyword_1_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSIntersectionAccess().getRightOperandALSDirectProductParserRuleCall_1_2_0()); + } + lv_rightOperand_3_0=ruleALSDirectProduct { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSIntersectionRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSDirectProduct"); + afterParserOrEnumRuleCall(); + } + +) +))*) +; + + + + + +// Entry rule entryRuleALSDirectProduct +entryRuleALSDirectProduct returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSDirectProductRule()); } + iv_ruleALSDirectProduct=ruleALSDirectProduct + { $current=$iv_ruleALSDirectProduct.current; } + EOF +; + +// Rule ALSDirectProduct +ruleALSDirectProduct returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSDirectProductAccess().getALSPreficedParserRuleCall_0()); + } + this_ALSPreficed_0=ruleALSPreficed + { + $current = $this_ALSPreficed_0.current; + afterParserOrEnumRuleCall(); + } +(( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getALSDirectProductAccess().getALSDirectProductLeftOperandAction_1_0(), + $current); + } +)( +( + { + newCompositeNode(grammarAccess.getALSDirectProductAccess().getLeftMultiplicitALSMultiplicityEnumRuleCall_1_1_0()); + } + lv_leftMultiplicit_2_0=ruleALSMultiplicity { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDirectProductRule()); + } + set( + $current, + "leftMultiplicit", + lv_leftMultiplicit_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + } + +) +)? otherlv_3='->' + { + newLeafNode(otherlv_3, grammarAccess.getALSDirectProductAccess().getHyphenMinusGreaterThanSignKeyword_1_2()); + } +( +( + { + newCompositeNode(grammarAccess.getALSDirectProductAccess().getRightMultiplicitALSMultiplicityEnumRuleCall_1_3_0()); + } + lv_rightMultiplicit_4_0=ruleALSMultiplicity { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDirectProductRule()); + } + set( + $current, + "rightMultiplicit", + lv_rightMultiplicit_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + } + +) +)?( +( + { + newCompositeNode(grammarAccess.getALSDirectProductAccess().getRightOperandALSPreficedParserRuleCall_1_4_0()); + } + lv_rightOperand_5_0=ruleALSPreficed { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSDirectProductRule()); + } + set( + $current, + "rightOperand", + lv_rightOperand_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSPreficed"); + afterParserOrEnumRuleCall(); + } + +) +))?) +; + + + + + +// Entry rule entryRuleALSPreficed +entryRuleALSPreficed returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSPreficedRule()); } + iv_ruleALSPreficed=ruleALSPreficed + { $current=$iv_ruleALSPreficed.current; } + EOF +; + +// Rule ALSPreficed +ruleALSPreficed returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +((( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSNotAction_0_0(), + $current); + } +)((( '!' + + | 'not' +))=>( otherlv_1='!' + { + newLeafNode(otherlv_1, grammarAccess.getALSPreficedAccess().getExclamationMarkKeyword_0_1_0_0()); + } + + | otherlv_2='not' + { + newLeafNode(otherlv_2, grammarAccess.getALSPreficedAccess().getNotKeyword_0_1_0_1()); + } +))( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_0_2_0()); + } + lv_operand_3_0=ruleALSBasicRelationTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "operand", + lv_operand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSInverseRelationAction_1_0(), + $current); + } +)(( '~' +)=> otherlv_5='~' + { + newLeafNode(otherlv_5, grammarAccess.getALSPreficedAccess().getTildeKeyword_1_1()); + } +)( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_1_2_0()); + } + lv_operand_6_0=ruleALSBasicRelationTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "operand", + lv_operand_6_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getAlSTransitiveClosureAction_2_0(), + $current); + } +) otherlv_8='^' + { + newLeafNode(otherlv_8, grammarAccess.getALSPreficedAccess().getCircumflexAccentKeyword_2_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_2_2_0()); + } + lv_operand_9_0=ruleALSBasicRelationTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "operand", + lv_operand_9_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSReflectiveTransitiveClosureAction_3_0(), + $current); + } +) otherlv_11='*' + { + newLeafNode(otherlv_11, grammarAccess.getALSPreficedAccess().getAsteriskKeyword_3_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_3_2_0()); + } + lv_operand_12_0=ruleALSBasicRelationTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "operand", + lv_operand_12_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSCardinalityAction_4_0(), + $current); + } +) otherlv_14='#' + { + newLeafNode(otherlv_14, grammarAccess.getALSPreficedAccess().getNumberSignKeyword_4_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_4_2_0()); + } + lv_operand_15_0=ruleALSBasicRelationTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "operand", + lv_operand_15_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSUnaryMinusAction_5_0(), + $current); + } +)(( '-' +)=> otherlv_17='-' + { + newLeafNode(otherlv_17, grammarAccess.getALSPreficedAccess().getHyphenMinusKeyword_5_1()); + } +)( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_5_2_0()); + } + lv_operand_18_0=ruleALSBasicRelationTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "operand", + lv_operand_18_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSSumAction_6_0(), + $current); + } +) otherlv_20='sum' + { + newLeafNode(otherlv_20, grammarAccess.getALSPreficedAccess().getSumKeyword_6_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getVariablesALSVariableDeclarationParserRuleCall_6_2_0()); + } + lv_variables_21_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + $current, + "variables", + lv_variables_21_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_22=',' + { + newLeafNode(otherlv_22, grammarAccess.getALSPreficedAccess().getCommaKeyword_6_3_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getVariablesALSVariableDeclarationParserRuleCall_6_3_1_0()); + } + lv_variables_23_0=ruleALSVariableDeclaration { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + $current, + "variables", + lv_variables_23_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + } + +) +))* otherlv_24='{' + { + newLeafNode(otherlv_24, grammarAccess.getALSPreficedAccess().getLeftCurlyBracketKeyword_6_4()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getExpressionALSTermParserRuleCall_6_5_0()); + } + lv_expression_25_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "expression", + lv_expression_25_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_26='}' + { + newLeafNode(otherlv_26, grammarAccess.getALSPreficedAccess().getRightCurlyBracketKeyword_6_6()); + } +) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSFunctionCallAction_7_0(), + $current); + } +)(( +( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSPreficedRule()); + } + } + otherlv_28=RULE_ID + { + newLeafNode(otherlv_28, grammarAccess.getALSPreficedAccess().getReferredDefinitionALSDefinitionCrossReference_7_1_0_0()); + } + +) +) + |( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getReferredNumericOperatorALSNumericOperatorEnumRuleCall_7_1_1_0()); + } + lv_referredNumericOperator_29_0=ruleALSNumericOperator { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + $current, + "referredNumericOperator", + lv_referredNumericOperator_29_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSNumericOperator"); + afterParserOrEnumRuleCall(); + } + +) +)) otherlv_30='[' + { + newLeafNode(otherlv_30, grammarAccess.getALSPreficedAccess().getLeftSquareBracketKeyword_7_2()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getParamsALSTermParserRuleCall_7_3_0()); + } + lv_params_31_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + $current, + "params", + lv_params_31_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_32=',' + { + newLeafNode(otherlv_32, grammarAccess.getALSPreficedAccess().getCommaKeyword_7_4_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getParamsALSTermParserRuleCall_7_4_1_0()); + } + lv_params_33_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + $current, + "params", + lv_params_33_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +))* otherlv_34=']' + { + newLeafNode(otherlv_34, grammarAccess.getALSPreficedAccess().getRightSquareBracketKeyword_7_5()); + } +) + | + { + newCompositeNode(grammarAccess.getALSPreficedAccess().getALSBasicRelationTermParserRuleCall_8()); + } + this_ALSBasicRelationTerm_35=ruleALSBasicRelationTerm + { + $current = $this_ALSBasicRelationTerm_35.current; + afterParserOrEnumRuleCall(); + } +) +; + + + + + +// Entry rule entryRuleALSVariableDeclaration +entryRuleALSVariableDeclaration returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSVariableDeclarationRule()); } + iv_ruleALSVariableDeclaration=ruleALSVariableDeclaration + { $current=$iv_ruleALSVariableDeclaration.current; } + EOF +; + +// Rule ALSVariableDeclaration +ruleALSVariableDeclaration returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( +( + { + newCompositeNode(grammarAccess.getALSVariableDeclarationAccess().getNameALSIDParserRuleCall_0_0()); + } + lv_name_0_0=ruleALSID { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSVariableDeclarationRule()); + } + set( + $current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + } + +) +) otherlv_1=':' + { + newLeafNode(otherlv_1, grammarAccess.getALSVariableDeclarationAccess().getColonKeyword_1()); + } +( +( + { + newCompositeNode(grammarAccess.getALSVariableDeclarationAccess().getRangeALSTermParserRuleCall_2_0()); + } + lv_range_2_0=ruleALSTerm { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSVariableDeclarationRule()); + } + set( + $current, + "range", + lv_range_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + } + +) +)) +; + + + + + +// Entry rule entryRuleALSBasicRelationTerm +entryRuleALSBasicRelationTerm returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSBasicRelationTermRule()); } + iv_ruleALSBasicRelationTerm=ruleALSBasicRelationTerm + { $current=$iv_ruleALSBasicRelationTerm.current; } + EOF +; + +// Rule ALSBasicRelationTerm +ruleALSBasicRelationTerm returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +((( + { + $current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSNoneAction_0_0(), + $current); + } +) otherlv_1='none' + { + newLeafNode(otherlv_1, grammarAccess.getALSBasicRelationTermAccess().getNoneKeyword_0_1()); + } +) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSIdenAction_1_0(), + $current); + } +) otherlv_3='iden' + { + newLeafNode(otherlv_3, grammarAccess.getALSBasicRelationTermAccess().getIdenKeyword_1_1()); + } +) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSUnivAction_2_0(), + $current); + } +) otherlv_5='univ' + { + newLeafNode(otherlv_5, grammarAccess.getALSBasicRelationTermAccess().getUnivKeyword_2_1()); + } +) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSIntAction_3_0(), + $current); + } +) otherlv_7='Int' + { + newLeafNode(otherlv_7, grammarAccess.getALSBasicRelationTermAccess().getIntKeyword_3_1()); + } +) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSReferenceAction_4_0(), + $current); + } +)( +( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSBasicRelationTermRule()); + } + } + otherlv_9=RULE_ID + { + newLeafNode(otherlv_9, grammarAccess.getALSBasicRelationTermAccess().getReferredALSRelationDeclarationCrossReference_4_1_0()); + } + +) +)) + |(( + { + $current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSNumberLiteralAction_5_0(), + $current); + } +)( +( + lv_value_11_0=RULE_INT + { + newLeafNode(lv_value_11_0, grammarAccess.getALSBasicRelationTermAccess().getValueINTTerminalRuleCall_5_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSBasicRelationTermRule()); + } + setWithLastConsumed( + $current, + "value", + lv_value_11_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + +) +)) + |( otherlv_12='(' + { + newLeafNode(otherlv_12, grammarAccess.getALSBasicRelationTermAccess().getLeftParenthesisKeyword_6_0()); + } + + { + newCompositeNode(grammarAccess.getALSBasicRelationTermAccess().getALSTermParserRuleCall_6_1()); + } + this_ALSTerm_13=ruleALSTerm + { + $current = $this_ALSTerm_13.current; + afterParserOrEnumRuleCall(); + } + otherlv_14=')' + { + newLeafNode(otherlv_14, grammarAccess.getALSBasicRelationTermAccess().getRightParenthesisKeyword_6_2()); + } +)) +; + + + + + +// Entry rule entryRuleALSRunCommand +entryRuleALSRunCommand returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSRunCommandRule()); } + iv_ruleALSRunCommand=ruleALSRunCommand + { $current=$iv_ruleALSRunCommand.current; } + EOF +; + +// Rule ALSRunCommand +ruleALSRunCommand returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( + { + $current = forceCreateModelElement( + grammarAccess.getALSRunCommandAccess().getALSRunCommandAction_0(), + $current); + } +) otherlv_1='run' + { + newLeafNode(otherlv_1, grammarAccess.getALSRunCommandAccess().getRunKeyword_1()); + } + otherlv_2='{' + { + newLeafNode(otherlv_2, grammarAccess.getALSRunCommandAccess().getLeftCurlyBracketKeyword_2()); + } + otherlv_3='}' + { + newLeafNode(otherlv_3, grammarAccess.getALSRunCommandAccess().getRightCurlyBracketKeyword_3()); + } +( otherlv_4='for' + { + newLeafNode(otherlv_4, grammarAccess.getALSRunCommandAccess().getForKeyword_4_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRunCommandAccess().getTypeScopesALSTypeScopeParserRuleCall_4_1_0()); + } + lv_typeScopes_5_0=ruleALSTypeScope { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRunCommandRule()); + } + add( + $current, + "typeScopes", + lv_typeScopes_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTypeScope"); + afterParserOrEnumRuleCall(); + } + +) +)( otherlv_6=',' + { + newLeafNode(otherlv_6, grammarAccess.getALSRunCommandAccess().getCommaKeyword_4_2_0()); + } +( +( + { + newCompositeNode(grammarAccess.getALSRunCommandAccess().getTypeScopesALSTypeScopeParserRuleCall_4_2_1_0()); + } + lv_typeScopes_7_0=ruleALSTypeScope { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getALSRunCommandRule()); + } + add( + $current, + "typeScopes", + lv_typeScopes_7_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTypeScope"); + afterParserOrEnumRuleCall(); + } + +) +))*)?) +; + + + + + +// Entry rule entryRuleALSTypeScope +entryRuleALSTypeScope returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSTypeScopeRule()); } + iv_ruleALSTypeScope=ruleALSTypeScope + { $current=$iv_ruleALSTypeScope.current; } + EOF +; + +// Rule ALSTypeScope +ruleALSTypeScope returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +( + { + newCompositeNode(grammarAccess.getALSTypeScopeAccess().getALSSigScopeParserRuleCall_0()); + } + this_ALSSigScope_0=ruleALSSigScope + { + $current = $this_ALSSigScope_0.current; + afterParserOrEnumRuleCall(); + } + + | + { + newCompositeNode(grammarAccess.getALSTypeScopeAccess().getALSIntScopeParserRuleCall_1()); + } + this_ALSIntScope_1=ruleALSIntScope + { + $current = $this_ALSIntScope_1.current; + afterParserOrEnumRuleCall(); + } +) +; + + + + + +// Entry rule entryRuleALSSigScope +entryRuleALSSigScope returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSSigScopeRule()); } + iv_ruleALSSigScope=ruleALSSigScope + { $current=$iv_ruleALSSigScope.current; } + EOF +; + +// Rule ALSSigScope +ruleALSSigScope returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( +( + lv_exactly_0_0= 'exactly' + { + newLeafNode(lv_exactly_0_0, grammarAccess.getALSSigScopeAccess().getExactlyExactlyKeyword_0_0()); + } + + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSigScopeRule()); + } + setWithLastConsumed($current, "exactly", true, "exactly"); + } + +) +)?( +( + lv_number_1_0=RULE_INT + { + newLeafNode(lv_number_1_0, grammarAccess.getALSSigScopeAccess().getNumberINTTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSigScopeRule()); + } + setWithLastConsumed( + $current, + "number", + lv_number_1_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + +) +)( +( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSSigScopeRule()); + } + } + otherlv_2=RULE_ID + { + newLeafNode(otherlv_2, grammarAccess.getALSSigScopeAccess().getTypeALSSignatureDeclarationCrossReference_2_0()); + } + +) +)) +; + + + + + +// Entry rule entryRuleALSIntScope +entryRuleALSIntScope returns [EObject current=null] + : + { newCompositeNode(grammarAccess.getALSIntScopeRule()); } + iv_ruleALSIntScope=ruleALSIntScope + { $current=$iv_ruleALSIntScope.current; } + EOF +; + +// Rule ALSIntScope +ruleALSIntScope returns [EObject current=null] + @init { enterRule(); + } + @after { leaveRule(); }: +(( +( + lv_number_0_0=RULE_INT + { + newLeafNode(lv_number_0_0, grammarAccess.getALSIntScopeAccess().getNumberINTTerminalRuleCall_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getALSIntScopeRule()); + } + setWithLastConsumed( + $current, + "number", + lv_number_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + +) +) otherlv_1='Int' + { + newLeafNode(otherlv_1, grammarAccess.getALSIntScopeAccess().getIntKeyword_1()); + } +) +; + + + + + +// Rule ALSMultiplicity +ruleALSMultiplicity returns [Enumerator current=null] + @init { enterRule(); } + @after { leaveRule(); }: +(( enumLiteral_0='all' + { + $current = grammarAccess.getALSMultiplicityAccess().getAllEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getALSMultiplicityAccess().getAllEnumLiteralDeclaration_0()); + } +) + |( enumLiteral_1='no' + { + $current = grammarAccess.getALSMultiplicityAccess().getNoEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getALSMultiplicityAccess().getNoEnumLiteralDeclaration_1()); + } +) + |( enumLiteral_2='some' + { + $current = grammarAccess.getALSMultiplicityAccess().getSomeEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getALSMultiplicityAccess().getSomeEnumLiteralDeclaration_2()); + } +) + |( enumLiteral_3='lone' + { + $current = grammarAccess.getALSMultiplicityAccess().getLoneEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getALSMultiplicityAccess().getLoneEnumLiteralDeclaration_3()); + } +) + |( enumLiteral_4='one' + { + $current = grammarAccess.getALSMultiplicityAccess().getOneEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_4, grammarAccess.getALSMultiplicityAccess().getOneEnumLiteralDeclaration_4()); + } +) + |( enumLiteral_5='set' + { + $current = grammarAccess.getALSMultiplicityAccess().getSetEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_5, grammarAccess.getALSMultiplicityAccess().getSetEnumLiteralDeclaration_5()); + } +)); + + + +// Rule ALSNumericOperator +ruleALSNumericOperator returns [Enumerator current=null] + @init { enterRule(); } + @after { leaveRule(); }: +(( enumLiteral_0='plus' + { + $current = grammarAccess.getALSNumericOperatorAccess().getPlusEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getALSNumericOperatorAccess().getPlusEnumLiteralDeclaration_0()); + } +) + |( enumLiteral_1='sub' + { + $current = grammarAccess.getALSNumericOperatorAccess().getSubEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getALSNumericOperatorAccess().getSubEnumLiteralDeclaration_1()); + } +) + |( enumLiteral_2='mul' + { + $current = grammarAccess.getALSNumericOperatorAccess().getMulEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getALSNumericOperatorAccess().getMulEnumLiteralDeclaration_2()); + } +) + |( enumLiteral_3='rem' + { + $current = grammarAccess.getALSNumericOperatorAccess().getRemEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getALSNumericOperatorAccess().getRemEnumLiteralDeclaration_3()); + } +) + |( enumLiteral_4='div' + { + $current = grammarAccess.getALSNumericOperatorAccess().getDivEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_4, grammarAccess.getALSNumericOperatorAccess().getDivEnumLiteralDeclaration_4()); + } +)); + + + +RULE_ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'\''|'"'|'0'..'9')*; + +RULE_INT : ('0'..'9')+; + +RULE_STRING : ('"' ('\\' .|~(('\\'|'"')))* '"'|'\'' ('\\' .|~(('\\'|'\'')))* '\''); + +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/'; + +RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?; + +RULE_WS : (' '|'\t'|'\r'|'\n')+; + +RULE_ANY_OTHER : .; + + diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.tokens b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.tokens new file mode 100644 index 00000000..49d2a448 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguage.tokens @@ -0,0 +1,137 @@ +'!'=49 +'!='=37 +'#'=54 +'&&'=34 +'&'=47 +'('=60 +')'=61 +'*'=53 +'+'=19 +'++'=42 +','=13 +'-'=46 +'->'=48 +'.'=45 +':'=20 +':>'=43 +'<'=40 +'<:'=44 +'<='=41 +'<=>'=29 +'='=36 +'=>'=31 +'>'=38 +'>='=39 +'Int'=59 +'['=22 +']'=23 +'^'=52 +'abstract'=15 +'all'=65 +'and'=35 +'disj'=26 +'div'=75 +'else'=33 +'enum'=11 +'exactly'=64 +'extends'=17 +'fact'=25 +'for'=63 +'fun'=21 +'iden'=57 +'iff'=30 +'implies'=32 +'in'=18 +'lone'=68 +'mul'=73 +'no'=66 +'none'=56 +'not'=50 +'one'=69 +'or'=28 +'plus'=71 +'pred'=24 +'rem'=74 +'run'=62 +'set'=70 +'sig'=16 +'some'=67 +'sub'=72 +'sum'=55 +'univ'=58 +'{'=12 +'||'=27 +'}'=14 +'~'=51 +RULE_ANY_OTHER=10 +RULE_ID=4 +RULE_INT=5 +RULE_ML_COMMENT=7 +RULE_SL_COMMENT=8 +RULE_STRING=6 +RULE_WS=9 +T__11=11 +T__12=12 +T__13=13 +T__14=14 +T__15=15 +T__16=16 +T__17=17 +T__18=18 +T__19=19 +T__20=20 +T__21=21 +T__22=22 +T__23=23 +T__24=24 +T__25=25 +T__26=26 +T__27=27 +T__28=28 +T__29=29 +T__30=30 +T__31=31 +T__32=32 +T__33=33 +T__34=34 +T__35=35 +T__36=36 +T__37=37 +T__38=38 +T__39=39 +T__40=40 +T__41=41 +T__42=42 +T__43=43 +T__44=44 +T__45=45 +T__46=46 +T__47=47 +T__48=48 +T__49=49 +T__50=50 +T__51=51 +T__52=52 +T__53=53 +T__54=54 +T__55=55 +T__56=56 +T__57=57 +T__58=58 +T__59=59 +T__60=60 +T__61=61 +T__62=62 +T__63=63 +T__64=64 +T__65=65 +T__66=66 +T__67=67 +T__68=68 +T__69=69 +T__70=70 +T__71=71 +T__72=72 +T__73=73 +T__74=74 +T__75=75 diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageLexer.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageLexer.java new file mode 100644 index 00000000..27488784 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageLexer.java @@ -0,0 +1,2816 @@ +package hu.bme.mit.inf.dslreasoner.parser.antlr.internal; + +// Hack: Use our own Lexer superclass by means of import. +// Currently there is no other way to specify the superclass for the lexer. +import org.eclipse.xtext.parser.antlr.Lexer; + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; + +@SuppressWarnings("all") +public class InternalAlloyLanguageLexer extends Lexer { + public static final int T__50=50; + public static final int T__19=19; + public static final int T__15=15; + public static final int T__59=59; + public static final int T__16=16; + public static final int T__17=17; + public static final int T__18=18; + public static final int T__11=11; + public static final int T__55=55; + public static final int T__12=12; + public static final int T__56=56; + public static final int T__13=13; + public static final int T__57=57; + public static final int T__14=14; + public static final int T__58=58; + public static final int T__51=51; + public static final int T__52=52; + public static final int T__53=53; + public static final int T__54=54; + public static final int T__60=60; + public static final int T__61=61; + public static final int RULE_ID=4; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; + public static final int RULE_INT=5; + public static final int T__29=29; + public static final int T__22=22; + public static final int T__66=66; + public static final int RULE_ML_COMMENT=7; + public static final int T__23=23; + public static final int T__67=67; + public static final int T__24=24; + public static final int T__68=68; + public static final int T__25=25; + public static final int T__69=69; + public static final int T__62=62; + public static final int T__63=63; + public static final int T__20=20; + public static final int T__64=64; + public static final int T__21=21; + public static final int T__65=65; + public static final int T__70=70; + public static final int T__71=71; + public static final int T__72=72; + public static final int RULE_STRING=6; + public static final int RULE_SL_COMMENT=8; + public static final int T__37=37; + public static final int T__38=38; + public static final int T__39=39; + public static final int T__33=33; + public static final int T__34=34; + public static final int T__35=35; + public static final int T__36=36; + public static final int T__73=73; + public static final int EOF=-1; + public static final int T__30=30; + public static final int T__74=74; + public static final int T__31=31; + public static final int T__75=75; + public static final int T__32=32; + public static final int RULE_WS=9; + public static final int RULE_ANY_OTHER=10; + public static final int T__48=48; + public static final int T__49=49; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; + + // delegates + // delegators + + public InternalAlloyLanguageLexer() {;} + public InternalAlloyLanguageLexer(CharStream input) { + this(input, new RecognizerSharedState()); + } + public InternalAlloyLanguageLexer(CharStream input, RecognizerSharedState state) { + super(input,state); + + } + public String getGrammarFileName() { return "InternalAlloyLanguage.g"; } + + // $ANTLR start "T__11" + public final void mT__11() throws RecognitionException { + try { + int _type = T__11; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:11:7: ( 'enum' ) + // InternalAlloyLanguage.g:11:9: 'enum' + { + match("enum"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__11" + + // $ANTLR start "T__12" + public final void mT__12() throws RecognitionException { + try { + int _type = T__12; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:12:7: ( '{' ) + // InternalAlloyLanguage.g:12:9: '{' + { + match('{'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__12" + + // $ANTLR start "T__13" + public final void mT__13() throws RecognitionException { + try { + int _type = T__13; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:13:7: ( ',' ) + // InternalAlloyLanguage.g:13:9: ',' + { + match(','); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__13" + + // $ANTLR start "T__14" + public final void mT__14() throws RecognitionException { + try { + int _type = T__14; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:14:7: ( '}' ) + // InternalAlloyLanguage.g:14:9: '}' + { + match('}'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__14" + + // $ANTLR start "T__15" + public final void mT__15() throws RecognitionException { + try { + int _type = T__15; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:15:7: ( 'abstract' ) + // InternalAlloyLanguage.g:15:9: 'abstract' + { + match("abstract"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__15" + + // $ANTLR start "T__16" + public final void mT__16() throws RecognitionException { + try { + int _type = T__16; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:16:7: ( 'sig' ) + // InternalAlloyLanguage.g:16:9: 'sig' + { + match("sig"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__16" + + // $ANTLR start "T__17" + public final void mT__17() throws RecognitionException { + try { + int _type = T__17; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:17:7: ( 'extends' ) + // InternalAlloyLanguage.g:17:9: 'extends' + { + match("extends"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__17" + + // $ANTLR start "T__18" + public final void mT__18() throws RecognitionException { + try { + int _type = T__18; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:18:7: ( 'in' ) + // InternalAlloyLanguage.g:18:9: 'in' + { + match("in"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__18" + + // $ANTLR start "T__19" + public final void mT__19() throws RecognitionException { + try { + int _type = T__19; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:19:7: ( '+' ) + // InternalAlloyLanguage.g:19:9: '+' + { + match('+'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__19" + + // $ANTLR start "T__20" + public final void mT__20() throws RecognitionException { + try { + int _type = T__20; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:20:7: ( ':' ) + // InternalAlloyLanguage.g:20:9: ':' + { + match(':'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__20" + + // $ANTLR start "T__21" + public final void mT__21() throws RecognitionException { + try { + int _type = T__21; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:21:7: ( 'fun' ) + // InternalAlloyLanguage.g:21:9: 'fun' + { + match("fun"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__21" + + // $ANTLR start "T__22" + public final void mT__22() throws RecognitionException { + try { + int _type = T__22; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:22:7: ( '[' ) + // InternalAlloyLanguage.g:22:9: '[' + { + match('['); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__22" + + // $ANTLR start "T__23" + public final void mT__23() throws RecognitionException { + try { + int _type = T__23; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:23:7: ( ']' ) + // InternalAlloyLanguage.g:23:9: ']' + { + match(']'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__23" + + // $ANTLR start "T__24" + public final void mT__24() throws RecognitionException { + try { + int _type = T__24; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:24:7: ( 'pred' ) + // InternalAlloyLanguage.g:24:9: 'pred' + { + match("pred"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__24" + + // $ANTLR start "T__25" + public final void mT__25() throws RecognitionException { + try { + int _type = T__25; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:25:7: ( 'fact' ) + // InternalAlloyLanguage.g:25:9: 'fact' + { + match("fact"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__25" + + // $ANTLR start "T__26" + public final void mT__26() throws RecognitionException { + try { + int _type = T__26; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:26:7: ( 'disj' ) + // InternalAlloyLanguage.g:26:9: 'disj' + { + match("disj"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__26" + + // $ANTLR start "T__27" + public final void mT__27() throws RecognitionException { + try { + int _type = T__27; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:27:7: ( '||' ) + // InternalAlloyLanguage.g:27:9: '||' + { + match("||"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__27" + + // $ANTLR start "T__28" + public final void mT__28() throws RecognitionException { + try { + int _type = T__28; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:28:7: ( 'or' ) + // InternalAlloyLanguage.g:28:9: 'or' + { + match("or"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__28" + + // $ANTLR start "T__29" + public final void mT__29() throws RecognitionException { + try { + int _type = T__29; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:29:7: ( '<=>' ) + // InternalAlloyLanguage.g:29:9: '<=>' + { + match("<=>"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__29" + + // $ANTLR start "T__30" + public final void mT__30() throws RecognitionException { + try { + int _type = T__30; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:30:7: ( 'iff' ) + // InternalAlloyLanguage.g:30:9: 'iff' + { + match("iff"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__30" + + // $ANTLR start "T__31" + public final void mT__31() throws RecognitionException { + try { + int _type = T__31; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:31:7: ( '=>' ) + // InternalAlloyLanguage.g:31:9: '=>' + { + match("=>"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__31" + + // $ANTLR start "T__32" + public final void mT__32() throws RecognitionException { + try { + int _type = T__32; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:32:7: ( 'implies' ) + // InternalAlloyLanguage.g:32:9: 'implies' + { + match("implies"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__32" + + // $ANTLR start "T__33" + public final void mT__33() throws RecognitionException { + try { + int _type = T__33; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:33:7: ( 'else' ) + // InternalAlloyLanguage.g:33:9: 'else' + { + match("else"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__33" + + // $ANTLR start "T__34" + public final void mT__34() throws RecognitionException { + try { + int _type = T__34; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:34:7: ( '&&' ) + // InternalAlloyLanguage.g:34:9: '&&' + { + match("&&"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__34" + + // $ANTLR start "T__35" + public final void mT__35() throws RecognitionException { + try { + int _type = T__35; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:35:7: ( 'and' ) + // InternalAlloyLanguage.g:35:9: 'and' + { + match("and"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__35" + + // $ANTLR start "T__36" + public final void mT__36() throws RecognitionException { + try { + int _type = T__36; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:36:7: ( '=' ) + // InternalAlloyLanguage.g:36:9: '=' + { + match('='); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__36" + + // $ANTLR start "T__37" + public final void mT__37() throws RecognitionException { + try { + int _type = T__37; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:37:7: ( '!=' ) + // InternalAlloyLanguage.g:37:9: '!=' + { + match("!="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__37" + + // $ANTLR start "T__38" + public final void mT__38() throws RecognitionException { + try { + int _type = T__38; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:38:7: ( '>' ) + // InternalAlloyLanguage.g:38:9: '>' + { + match('>'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__38" + + // $ANTLR start "T__39" + public final void mT__39() throws RecognitionException { + try { + int _type = T__39; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:39:7: ( '>=' ) + // InternalAlloyLanguage.g:39:9: '>=' + { + match(">="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__39" + + // $ANTLR start "T__40" + public final void mT__40() throws RecognitionException { + try { + int _type = T__40; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:40:7: ( '<' ) + // InternalAlloyLanguage.g:40:9: '<' + { + match('<'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__40" + + // $ANTLR start "T__41" + public final void mT__41() throws RecognitionException { + try { + int _type = T__41; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:41:7: ( '<=' ) + // InternalAlloyLanguage.g:41:9: '<=' + { + match("<="); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__41" + + // $ANTLR start "T__42" + public final void mT__42() throws RecognitionException { + try { + int _type = T__42; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:42:7: ( '++' ) + // InternalAlloyLanguage.g:42:9: '++' + { + match("++"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__42" + + // $ANTLR start "T__43" + public final void mT__43() throws RecognitionException { + try { + int _type = T__43; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:43:7: ( ':>' ) + // InternalAlloyLanguage.g:43:9: ':>' + { + match(":>"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__43" + + // $ANTLR start "T__44" + public final void mT__44() throws RecognitionException { + try { + int _type = T__44; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:44:7: ( '<:' ) + // InternalAlloyLanguage.g:44:9: '<:' + { + match("<:"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__44" + + // $ANTLR start "T__45" + public final void mT__45() throws RecognitionException { + try { + int _type = T__45; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:45:7: ( '.' ) + // InternalAlloyLanguage.g:45:9: '.' + { + match('.'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__45" + + // $ANTLR start "T__46" + public final void mT__46() throws RecognitionException { + try { + int _type = T__46; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:46:7: ( '-' ) + // InternalAlloyLanguage.g:46:9: '-' + { + match('-'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__46" + + // $ANTLR start "T__47" + public final void mT__47() throws RecognitionException { + try { + int _type = T__47; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:47:7: ( '&' ) + // InternalAlloyLanguage.g:47:9: '&' + { + match('&'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__47" + + // $ANTLR start "T__48" + public final void mT__48() throws RecognitionException { + try { + int _type = T__48; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:48:7: ( '->' ) + // InternalAlloyLanguage.g:48:9: '->' + { + match("->"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__48" + + // $ANTLR start "T__49" + public final void mT__49() throws RecognitionException { + try { + int _type = T__49; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:49:7: ( '!' ) + // InternalAlloyLanguage.g:49:9: '!' + { + match('!'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__49" + + // $ANTLR start "T__50" + public final void mT__50() throws RecognitionException { + try { + int _type = T__50; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:50:7: ( 'not' ) + // InternalAlloyLanguage.g:50:9: 'not' + { + match("not"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__50" + + // $ANTLR start "T__51" + public final void mT__51() throws RecognitionException { + try { + int _type = T__51; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:51:7: ( '~' ) + // InternalAlloyLanguage.g:51:9: '~' + { + match('~'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__51" + + // $ANTLR start "T__52" + public final void mT__52() throws RecognitionException { + try { + int _type = T__52; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:52:7: ( '^' ) + // InternalAlloyLanguage.g:52:9: '^' + { + match('^'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__52" + + // $ANTLR start "T__53" + public final void mT__53() throws RecognitionException { + try { + int _type = T__53; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:53:7: ( '*' ) + // InternalAlloyLanguage.g:53:9: '*' + { + match('*'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__53" + + // $ANTLR start "T__54" + public final void mT__54() throws RecognitionException { + try { + int _type = T__54; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:54:7: ( '#' ) + // InternalAlloyLanguage.g:54:9: '#' + { + match('#'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__54" + + // $ANTLR start "T__55" + public final void mT__55() throws RecognitionException { + try { + int _type = T__55; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:55:7: ( 'sum' ) + // InternalAlloyLanguage.g:55:9: 'sum' + { + match("sum"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__55" + + // $ANTLR start "T__56" + public final void mT__56() throws RecognitionException { + try { + int _type = T__56; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:56:7: ( 'none' ) + // InternalAlloyLanguage.g:56:9: 'none' + { + match("none"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__56" + + // $ANTLR start "T__57" + public final void mT__57() throws RecognitionException { + try { + int _type = T__57; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:57:7: ( 'iden' ) + // InternalAlloyLanguage.g:57:9: 'iden' + { + match("iden"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__57" + + // $ANTLR start "T__58" + public final void mT__58() throws RecognitionException { + try { + int _type = T__58; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:58:7: ( 'univ' ) + // InternalAlloyLanguage.g:58:9: 'univ' + { + match("univ"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__58" + + // $ANTLR start "T__59" + public final void mT__59() throws RecognitionException { + try { + int _type = T__59; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:59:7: ( 'Int' ) + // InternalAlloyLanguage.g:59:9: 'Int' + { + match("Int"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__59" + + // $ANTLR start "T__60" + public final void mT__60() throws RecognitionException { + try { + int _type = T__60; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:60:7: ( '(' ) + // InternalAlloyLanguage.g:60:9: '(' + { + match('('); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__60" + + // $ANTLR start "T__61" + public final void mT__61() throws RecognitionException { + try { + int _type = T__61; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:61:7: ( ')' ) + // InternalAlloyLanguage.g:61:9: ')' + { + match(')'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__61" + + // $ANTLR start "T__62" + public final void mT__62() throws RecognitionException { + try { + int _type = T__62; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:62:7: ( 'run' ) + // InternalAlloyLanguage.g:62:9: 'run' + { + match("run"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__62" + + // $ANTLR start "T__63" + public final void mT__63() throws RecognitionException { + try { + int _type = T__63; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:63:7: ( 'for' ) + // InternalAlloyLanguage.g:63:9: 'for' + { + match("for"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__63" + + // $ANTLR start "T__64" + public final void mT__64() throws RecognitionException { + try { + int _type = T__64; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:64:7: ( 'exactly' ) + // InternalAlloyLanguage.g:64:9: 'exactly' + { + match("exactly"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__64" + + // $ANTLR start "T__65" + public final void mT__65() throws RecognitionException { + try { + int _type = T__65; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:65:7: ( 'all' ) + // InternalAlloyLanguage.g:65:9: 'all' + { + match("all"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__65" + + // $ANTLR start "T__66" + public final void mT__66() throws RecognitionException { + try { + int _type = T__66; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:66:7: ( 'no' ) + // InternalAlloyLanguage.g:66:9: 'no' + { + match("no"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__66" + + // $ANTLR start "T__67" + public final void mT__67() throws RecognitionException { + try { + int _type = T__67; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:67:7: ( 'some' ) + // InternalAlloyLanguage.g:67:9: 'some' + { + match("some"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__67" + + // $ANTLR start "T__68" + public final void mT__68() throws RecognitionException { + try { + int _type = T__68; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:68:7: ( 'lone' ) + // InternalAlloyLanguage.g:68:9: 'lone' + { + match("lone"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__68" + + // $ANTLR start "T__69" + public final void mT__69() throws RecognitionException { + try { + int _type = T__69; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:69:7: ( 'one' ) + // InternalAlloyLanguage.g:69:9: 'one' + { + match("one"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__69" + + // $ANTLR start "T__70" + public final void mT__70() throws RecognitionException { + try { + int _type = T__70; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:70:7: ( 'set' ) + // InternalAlloyLanguage.g:70:9: 'set' + { + match("set"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__70" + + // $ANTLR start "T__71" + public final void mT__71() throws RecognitionException { + try { + int _type = T__71; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:71:7: ( 'plus' ) + // InternalAlloyLanguage.g:71:9: 'plus' + { + match("plus"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__71" + + // $ANTLR start "T__72" + public final void mT__72() throws RecognitionException { + try { + int _type = T__72; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:72:7: ( 'sub' ) + // InternalAlloyLanguage.g:72:9: 'sub' + { + match("sub"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__72" + + // $ANTLR start "T__73" + public final void mT__73() throws RecognitionException { + try { + int _type = T__73; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:73:7: ( 'mul' ) + // InternalAlloyLanguage.g:73:9: 'mul' + { + match("mul"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__73" + + // $ANTLR start "T__74" + public final void mT__74() throws RecognitionException { + try { + int _type = T__74; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:74:7: ( 'rem' ) + // InternalAlloyLanguage.g:74:9: 'rem' + { + match("rem"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__74" + + // $ANTLR start "T__75" + public final void mT__75() throws RecognitionException { + try { + int _type = T__75; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:75:7: ( 'div' ) + // InternalAlloyLanguage.g:75:9: 'div' + { + match("div"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "T__75" + + // $ANTLR start "RULE_ID" + public final void mRULE_ID() throws RecognitionException { + try { + int _type = RULE_ID; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3032:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '\\'' | '\"' | '0' .. '9' )* ) + // InternalAlloyLanguage.g:3032:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '\\'' | '\"' | '0' .. '9' )* + { + if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + // InternalAlloyLanguage.g:3032:35: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '\\'' | '\"' | '0' .. '9' )* + loop1: + do { + int alt1=2; + int LA1_0 = input.LA(1); + + if ( (LA1_0=='\"'||LA1_0=='\''||(LA1_0>='0' && LA1_0<='9')||(LA1_0>='A' && LA1_0<='Z')||LA1_0=='_'||(LA1_0>='a' && LA1_0<='z')) ) { + alt1=1; + } + + + switch (alt1) { + case 1 : + // InternalAlloyLanguage.g: + { + if ( input.LA(1)=='\"'||input.LA(1)=='\''||(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') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop1; + } + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ID" + + // $ANTLR start "RULE_INT" + public final void mRULE_INT() throws RecognitionException { + try { + int _type = RULE_INT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3034:10: ( ( '0' .. '9' )+ ) + // InternalAlloyLanguage.g:3034:12: ( '0' .. '9' )+ + { + // InternalAlloyLanguage.g:3034:12: ( '0' .. '9' )+ + int cnt2=0; + loop2: + do { + int alt2=2; + int LA2_0 = input.LA(1); + + if ( ((LA2_0>='0' && LA2_0<='9')) ) { + alt2=1; + } + + + switch (alt2) { + case 1 : + // InternalAlloyLanguage.g:3034:13: '0' .. '9' + { + matchRange('0','9'); + + } + break; + + default : + if ( cnt2 >= 1 ) break loop2; + EarlyExitException eee = + new EarlyExitException(2, input); + throw eee; + } + cnt2++; + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_INT" + + // $ANTLR start "RULE_STRING" + public final void mRULE_STRING() throws RecognitionException { + try { + int _type = RULE_STRING; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3036:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) ) + // InternalAlloyLanguage.g:3036:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + { + // InternalAlloyLanguage.g:3036:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + int alt5=2; + int LA5_0 = input.LA(1); + + if ( (LA5_0=='\"') ) { + alt5=1; + } + else if ( (LA5_0=='\'') ) { + alt5=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 5, 0, input); + + throw nvae; + } + switch (alt5) { + case 1 : + // InternalAlloyLanguage.g:3036:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' + { + match('\"'); + // InternalAlloyLanguage.g:3036:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* + loop3: + do { + int alt3=3; + int LA3_0 = input.LA(1); + + if ( (LA3_0=='\\') ) { + alt3=1; + } + else if ( ((LA3_0>='\u0000' && LA3_0<='!')||(LA3_0>='#' && LA3_0<='[')||(LA3_0>=']' && LA3_0<='\uFFFF')) ) { + alt3=2; + } + + + switch (alt3) { + case 1 : + // InternalAlloyLanguage.g:3036:21: '\\\\' . + { + match('\\'); + matchAny(); + + } + break; + case 2 : + // InternalAlloyLanguage.g:3036:28: ~ ( ( '\\\\' | '\"' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop3; + } + } while (true); + + match('\"'); + + } + break; + case 2 : + // InternalAlloyLanguage.g:3036:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' + { + match('\''); + // InternalAlloyLanguage.g:3036:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* + loop4: + do { + int alt4=3; + int LA4_0 = input.LA(1); + + if ( (LA4_0=='\\') ) { + alt4=1; + } + else if ( ((LA4_0>='\u0000' && LA4_0<='&')||(LA4_0>='(' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) { + alt4=2; + } + + + switch (alt4) { + case 1 : + // InternalAlloyLanguage.g:3036:54: '\\\\' . + { + match('\\'); + matchAny(); + + } + break; + case 2 : + // InternalAlloyLanguage.g:3036:61: ~ ( ( '\\\\' | '\\'' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop4; + } + } while (true); + + match('\''); + + } + break; + + } + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_STRING" + + // $ANTLR start "RULE_ML_COMMENT" + public final void mRULE_ML_COMMENT() throws RecognitionException { + try { + int _type = RULE_ML_COMMENT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3038:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // InternalAlloyLanguage.g:3038:19: '/*' ( options {greedy=false; } : . )* '*/' + { + match("/*"); + + // InternalAlloyLanguage.g:3038:24: ( options {greedy=false; } : . )* + loop6: + do { + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0=='*') ) { + int LA6_1 = input.LA(2); + + if ( (LA6_1=='/') ) { + alt6=2; + } + else if ( ((LA6_1>='\u0000' && LA6_1<='.')||(LA6_1>='0' && LA6_1<='\uFFFF')) ) { + alt6=1; + } + + + } + else if ( ((LA6_0>='\u0000' && LA6_0<=')')||(LA6_0>='+' && LA6_0<='\uFFFF')) ) { + alt6=1; + } + + + switch (alt6) { + case 1 : + // InternalAlloyLanguage.g:3038:52: . + { + matchAny(); + + } + break; + + default : + break loop6; + } + } while (true); + + match("*/"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ML_COMMENT" + + // $ANTLR start "RULE_SL_COMMENT" + public final void mRULE_SL_COMMENT() throws RecognitionException { + try { + int _type = RULE_SL_COMMENT; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3040:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) + // InternalAlloyLanguage.g:3040:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + { + match("//"); + + // InternalAlloyLanguage.g:3040:24: (~ ( ( '\\n' | '\\r' ) ) )* + loop7: + do { + int alt7=2; + int LA7_0 = input.LA(1); + + if ( ((LA7_0>='\u0000' && LA7_0<='\t')||(LA7_0>='\u000B' && LA7_0<='\f')||(LA7_0>='\u000E' && LA7_0<='\uFFFF')) ) { + alt7=1; + } + + + switch (alt7) { + case 1 : + // InternalAlloyLanguage.g:3040:24: ~ ( ( '\\n' | '\\r' ) ) + { + if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + break loop7; + } + } while (true); + + // InternalAlloyLanguage.g:3040:40: ( ( '\\r' )? '\\n' )? + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0=='\n'||LA9_0=='\r') ) { + alt9=1; + } + switch (alt9) { + case 1 : + // InternalAlloyLanguage.g:3040:41: ( '\\r' )? '\\n' + { + // InternalAlloyLanguage.g:3040:41: ( '\\r' )? + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0=='\r') ) { + alt8=1; + } + switch (alt8) { + case 1 : + // InternalAlloyLanguage.g:3040:41: '\\r' + { + match('\r'); + + } + break; + + } + + match('\n'); + + } + break; + + } + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_SL_COMMENT" + + // $ANTLR start "RULE_WS" + public final void mRULE_WS() throws RecognitionException { + try { + int _type = RULE_WS; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3042:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // InternalAlloyLanguage.g:3042:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + { + // InternalAlloyLanguage.g:3042:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + int cnt10=0; + loop10: + do { + int alt10=2; + int LA10_0 = input.LA(1); + + if ( ((LA10_0>='\t' && LA10_0<='\n')||LA10_0=='\r'||LA10_0==' ') ) { + alt10=1; + } + + + switch (alt10) { + case 1 : + // InternalAlloyLanguage.g: + { + if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { + input.consume(); + + } + else { + MismatchedSetException mse = new MismatchedSetException(null,input); + recover(mse); + throw mse;} + + + } + break; + + default : + if ( cnt10 >= 1 ) break loop10; + EarlyExitException eee = + new EarlyExitException(10, input); + throw eee; + } + cnt10++; + } while (true); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_WS" + + // $ANTLR start "RULE_ANY_OTHER" + public final void mRULE_ANY_OTHER() throws RecognitionException { + try { + int _type = RULE_ANY_OTHER; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalAlloyLanguage.g:3044:16: ( . ) + // InternalAlloyLanguage.g:3044:18: . + { + matchAny(); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "RULE_ANY_OTHER" + + public void mTokens() throws RecognitionException { + // InternalAlloyLanguage.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 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | T__48 | T__49 | T__50 | T__51 | T__52 | T__53 | T__54 | T__55 | T__56 | T__57 | T__58 | T__59 | T__60 | T__61 | T__62 | T__63 | T__64 | T__65 | T__66 | T__67 | T__68 | T__69 | T__70 | T__71 | T__72 | T__73 | T__74 | T__75 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt11=72; + alt11 = dfa11.predict(input); + switch (alt11) { + case 1 : + // InternalAlloyLanguage.g:1:10: T__11 + { + mT__11(); + + } + break; + case 2 : + // InternalAlloyLanguage.g:1:16: T__12 + { + mT__12(); + + } + break; + case 3 : + // InternalAlloyLanguage.g:1:22: T__13 + { + mT__13(); + + } + break; + case 4 : + // InternalAlloyLanguage.g:1:28: T__14 + { + mT__14(); + + } + break; + case 5 : + // InternalAlloyLanguage.g:1:34: T__15 + { + mT__15(); + + } + break; + case 6 : + // InternalAlloyLanguage.g:1:40: T__16 + { + mT__16(); + + } + break; + case 7 : + // InternalAlloyLanguage.g:1:46: T__17 + { + mT__17(); + + } + break; + case 8 : + // InternalAlloyLanguage.g:1:52: T__18 + { + mT__18(); + + } + break; + case 9 : + // InternalAlloyLanguage.g:1:58: T__19 + { + mT__19(); + + } + break; + case 10 : + // InternalAlloyLanguage.g:1:64: T__20 + { + mT__20(); + + } + break; + case 11 : + // InternalAlloyLanguage.g:1:70: T__21 + { + mT__21(); + + } + break; + case 12 : + // InternalAlloyLanguage.g:1:76: T__22 + { + mT__22(); + + } + break; + case 13 : + // InternalAlloyLanguage.g:1:82: T__23 + { + mT__23(); + + } + break; + case 14 : + // InternalAlloyLanguage.g:1:88: T__24 + { + mT__24(); + + } + break; + case 15 : + // InternalAlloyLanguage.g:1:94: T__25 + { + mT__25(); + + } + break; + case 16 : + // InternalAlloyLanguage.g:1:100: T__26 + { + mT__26(); + + } + break; + case 17 : + // InternalAlloyLanguage.g:1:106: T__27 + { + mT__27(); + + } + break; + case 18 : + // InternalAlloyLanguage.g:1:112: T__28 + { + mT__28(); + + } + break; + case 19 : + // InternalAlloyLanguage.g:1:118: T__29 + { + mT__29(); + + } + break; + case 20 : + // InternalAlloyLanguage.g:1:124: T__30 + { + mT__30(); + + } + break; + case 21 : + // InternalAlloyLanguage.g:1:130: T__31 + { + mT__31(); + + } + break; + case 22 : + // InternalAlloyLanguage.g:1:136: T__32 + { + mT__32(); + + } + break; + case 23 : + // InternalAlloyLanguage.g:1:142: T__33 + { + mT__33(); + + } + break; + case 24 : + // InternalAlloyLanguage.g:1:148: T__34 + { + mT__34(); + + } + break; + case 25 : + // InternalAlloyLanguage.g:1:154: T__35 + { + mT__35(); + + } + break; + case 26 : + // InternalAlloyLanguage.g:1:160: T__36 + { + mT__36(); + + } + break; + case 27 : + // InternalAlloyLanguage.g:1:166: T__37 + { + mT__37(); + + } + break; + case 28 : + // InternalAlloyLanguage.g:1:172: T__38 + { + mT__38(); + + } + break; + case 29 : + // InternalAlloyLanguage.g:1:178: T__39 + { + mT__39(); + + } + break; + case 30 : + // InternalAlloyLanguage.g:1:184: T__40 + { + mT__40(); + + } + break; + case 31 : + // InternalAlloyLanguage.g:1:190: T__41 + { + mT__41(); + + } + break; + case 32 : + // InternalAlloyLanguage.g:1:196: T__42 + { + mT__42(); + + } + break; + case 33 : + // InternalAlloyLanguage.g:1:202: T__43 + { + mT__43(); + + } + break; + case 34 : + // InternalAlloyLanguage.g:1:208: T__44 + { + mT__44(); + + } + break; + case 35 : + // InternalAlloyLanguage.g:1:214: T__45 + { + mT__45(); + + } + break; + case 36 : + // InternalAlloyLanguage.g:1:220: T__46 + { + mT__46(); + + } + break; + case 37 : + // InternalAlloyLanguage.g:1:226: T__47 + { + mT__47(); + + } + break; + case 38 : + // InternalAlloyLanguage.g:1:232: T__48 + { + mT__48(); + + } + break; + case 39 : + // InternalAlloyLanguage.g:1:238: T__49 + { + mT__49(); + + } + break; + case 40 : + // InternalAlloyLanguage.g:1:244: T__50 + { + mT__50(); + + } + break; + case 41 : + // InternalAlloyLanguage.g:1:250: T__51 + { + mT__51(); + + } + break; + case 42 : + // InternalAlloyLanguage.g:1:256: T__52 + { + mT__52(); + + } + break; + case 43 : + // InternalAlloyLanguage.g:1:262: T__53 + { + mT__53(); + + } + break; + case 44 : + // InternalAlloyLanguage.g:1:268: T__54 + { + mT__54(); + + } + break; + case 45 : + // InternalAlloyLanguage.g:1:274: T__55 + { + mT__55(); + + } + break; + case 46 : + // InternalAlloyLanguage.g:1:280: T__56 + { + mT__56(); + + } + break; + case 47 : + // InternalAlloyLanguage.g:1:286: T__57 + { + mT__57(); + + } + break; + case 48 : + // InternalAlloyLanguage.g:1:292: T__58 + { + mT__58(); + + } + break; + case 49 : + // InternalAlloyLanguage.g:1:298: T__59 + { + mT__59(); + + } + break; + case 50 : + // InternalAlloyLanguage.g:1:304: T__60 + { + mT__60(); + + } + break; + case 51 : + // InternalAlloyLanguage.g:1:310: T__61 + { + mT__61(); + + } + break; + case 52 : + // InternalAlloyLanguage.g:1:316: T__62 + { + mT__62(); + + } + break; + case 53 : + // InternalAlloyLanguage.g:1:322: T__63 + { + mT__63(); + + } + break; + case 54 : + // InternalAlloyLanguage.g:1:328: T__64 + { + mT__64(); + + } + break; + case 55 : + // InternalAlloyLanguage.g:1:334: T__65 + { + mT__65(); + + } + break; + case 56 : + // InternalAlloyLanguage.g:1:340: T__66 + { + mT__66(); + + } + break; + case 57 : + // InternalAlloyLanguage.g:1:346: T__67 + { + mT__67(); + + } + break; + case 58 : + // InternalAlloyLanguage.g:1:352: T__68 + { + mT__68(); + + } + break; + case 59 : + // InternalAlloyLanguage.g:1:358: T__69 + { + mT__69(); + + } + break; + case 60 : + // InternalAlloyLanguage.g:1:364: T__70 + { + mT__70(); + + } + break; + case 61 : + // InternalAlloyLanguage.g:1:370: T__71 + { + mT__71(); + + } + break; + case 62 : + // InternalAlloyLanguage.g:1:376: T__72 + { + mT__72(); + + } + break; + case 63 : + // InternalAlloyLanguage.g:1:382: T__73 + { + mT__73(); + + } + break; + case 64 : + // InternalAlloyLanguage.g:1:388: T__74 + { + mT__74(); + + } + break; + case 65 : + // InternalAlloyLanguage.g:1:394: T__75 + { + mT__75(); + + } + break; + case 66 : + // InternalAlloyLanguage.g:1:400: RULE_ID + { + mRULE_ID(); + + } + break; + case 67 : + // InternalAlloyLanguage.g:1:408: RULE_INT + { + mRULE_INT(); + + } + break; + case 68 : + // InternalAlloyLanguage.g:1:417: RULE_STRING + { + mRULE_STRING(); + + } + break; + case 69 : + // InternalAlloyLanguage.g:1:429: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 70 : + // InternalAlloyLanguage.g:1:445: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 71 : + // InternalAlloyLanguage.g:1:461: RULE_WS + { + mRULE_WS(); + + } + break; + case 72 : + // InternalAlloyLanguage.g:1:469: RULE_ANY_OTHER + { + mRULE_ANY_OTHER(); + + } + break; + + } + + } + + + protected DFA11 dfa11 = new DFA11(this); + static final String DFA11_eotS = + "\1\uffff\1\56\3\uffff\3\56\1\76\1\100\1\56\2\uffff\2\56\1\52\1\56\1\116\1\120\1\122\1\124\1\126\1\uffff\1\131\1\56\4\uffff\2\56\2\uffff\3\56\2\uffff\3\52\2\uffff\3\56\4\uffff\7\56\1\170\3\56\4\uffff\3\56\2\uffff\3\56\1\uffff\1\u0083\1\56\1\u0086\15\uffff\1\u0089\4\uffff\2\56\2\uffff\4\56\5\uffff\5\56\1\u0095\1\u0096\1\u0097\1\u0098\1\u0099\1\56\1\u009b\1\uffff\1\u009c\2\56\1\u009f\1\56\1\u00a1\3\56\1\u00a5\1\uffff\1\u00a6\2\uffff\1\u00a7\1\56\1\uffff\1\56\1\u00aa\1\u00ab\1\u00ac\1\56\1\u00ae\1\u00af\2\56\1\u00b2\1\56\5\uffff\1\u00b4\2\uffff\1\56\1\u00b6\1\uffff\1\u00b7\1\uffff\1\u00b8\1\u00b9\1\u00ba\3\uffff\1\u00bb\1\u00bc\3\uffff\1\u00bd\2\uffff\2\56\1\uffff\1\56\1\uffff\1\56\10\uffff\4\56\1\u00c6\1\u00c7\1\56\1\u00c9\2\uffff\1\u00ca\2\uffff"; + static final String DFA11_eofS = + "\u00cb\uffff"; + static final String DFA11_minS = + "\1\0\1\154\3\uffff\1\142\1\145\1\144\1\53\1\76\1\141\2\uffff\1\154\1\151\1\174\1\156\1\72\1\76\1\46\2\75\1\uffff\1\76\1\157\4\uffff\2\156\2\uffff\1\145\1\157\1\165\2\uffff\2\0\1\52\2\uffff\1\165\1\141\1\163\4\uffff\1\163\1\144\1\154\1\147\1\142\1\155\1\164\1\42\1\146\1\160\1\145\4\uffff\1\156\1\143\1\162\2\uffff\1\145\1\165\1\163\1\uffff\1\42\1\145\1\76\15\uffff\1\42\4\uffff\1\151\1\164\2\uffff\1\156\1\155\1\156\1\154\5\uffff\1\155\1\145\1\143\1\145\1\164\5\42\1\145\1\42\1\uffff\1\42\1\154\1\156\1\42\1\164\1\42\1\144\1\163\1\152\1\42\1\uffff\1\42\2\uffff\1\42\1\145\1\uffff\1\166\3\42\1\145\2\42\1\156\1\164\1\42\1\162\5\uffff\1\42\2\uffff\1\151\1\42\1\uffff\1\42\1\uffff\3\42\3\uffff\2\42\3\uffff\1\42\2\uffff\1\144\1\154\1\uffff\1\141\1\uffff\1\145\10\uffff\1\163\1\171\1\143\1\163\2\42\1\164\1\42\2\uffff\1\42\2\uffff"; + static final String DFA11_maxS = + "\1\uffff\1\170\3\uffff\1\156\1\165\1\156\1\53\1\76\1\165\2\uffff\1\162\1\151\1\174\1\162\1\75\1\76\1\46\2\75\1\uffff\1\76\1\157\4\uffff\2\156\2\uffff\1\165\1\157\1\165\2\uffff\2\uffff\1\57\2\uffff\1\165\1\164\1\163\4\uffff\1\163\1\144\1\154\1\147\2\155\1\164\1\172\1\146\1\160\1\145\4\uffff\1\156\1\143\1\162\2\uffff\1\145\1\165\1\166\1\uffff\1\172\1\145\1\76\15\uffff\1\172\4\uffff\1\151\1\164\2\uffff\1\156\1\155\1\156\1\154\5\uffff\1\155\1\145\1\143\1\145\1\164\5\172\1\145\1\172\1\uffff\1\172\1\154\1\156\1\172\1\164\1\172\1\144\1\163\1\152\1\172\1\uffff\1\172\2\uffff\1\172\1\145\1\uffff\1\166\3\172\1\145\2\172\1\156\1\164\1\172\1\162\5\uffff\1\172\2\uffff\1\151\1\172\1\uffff\1\172\1\uffff\3\172\3\uffff\2\172\3\uffff\1\172\2\uffff\1\144\1\154\1\uffff\1\141\1\uffff\1\145\10\uffff\1\163\1\171\1\143\1\163\2\172\1\164\1\172\2\uffff\1\172\2\uffff"; + static final String DFA11_acceptS = + "\2\uffff\1\2\1\3\1\4\6\uffff\1\14\1\15\11\uffff\1\43\2\uffff\1\51\1\52\1\53\1\54\2\uffff\1\62\1\63\3\uffff\1\102\1\103\3\uffff\1\107\1\110\3\uffff\1\102\1\2\1\3\1\4\13\uffff\1\40\1\11\1\41\1\12\3\uffff\1\14\1\15\3\uffff\1\21\3\uffff\1\42\1\36\1\25\1\32\1\30\1\45\1\33\1\47\1\35\1\34\1\43\1\46\1\44\1\uffff\1\51\1\52\1\53\1\54\2\uffff\1\62\1\63\4\uffff\1\103\1\104\1\105\1\106\1\107\14\uffff\1\10\12\uffff\1\22\1\uffff\1\23\1\37\2\uffff\1\70\13\uffff\1\31\1\67\1\6\1\55\1\76\1\uffff\1\74\1\24\2\uffff\1\13\1\uffff\1\65\3\uffff\1\101\1\73\1\50\2\uffff\1\61\1\64\1\100\1\uffff\1\77\1\1\2\uffff\1\27\1\uffff\1\71\1\uffff\1\57\1\17\1\16\1\75\1\20\1\56\1\60\1\72\10\uffff\1\7\1\66\1\uffff\1\26\1\5"; + static final String DFA11_specialS = + "\1\0\45\uffff\1\1\1\2\u00a3\uffff}>"; + static final String[] DFA11_transitionS = { + "\11\52\2\51\2\52\1\51\22\52\1\51\1\24\1\46\1\34\2\52\1\23\1\47\1\37\1\40\1\33\1\10\1\3\1\27\1\26\1\50\12\45\1\11\1\52\1\21\1\22\1\25\2\52\10\44\1\36\21\44\1\13\1\52\1\14\1\32\1\44\1\52\1\5\2\44\1\16\1\1\1\12\2\44\1\7\2\44\1\42\1\43\1\30\1\20\1\15\1\44\1\41\1\6\1\44\1\35\5\44\1\2\1\17\1\4\1\31\uff81\52", + "\1\55\1\uffff\1\53\11\uffff\1\54", + "", + "", + "", + "\1\62\11\uffff\1\64\1\uffff\1\63", + "\1\70\3\uffff\1\65\5\uffff\1\67\5\uffff\1\66", + "\1\74\1\uffff\1\72\6\uffff\1\73\1\71", + "\1\75", + "\1\77", + "\1\102\15\uffff\1\103\5\uffff\1\101", + "", + "", + "\1\107\5\uffff\1\106", + "\1\110", + "\1\111", + "\1\113\3\uffff\1\112", + "\1\115\2\uffff\1\114", + "\1\117", + "\1\121", + "\1\123", + "\1\125", + "", + "\1\130", + "\1\132", + "", + "", + "", + "", + "\1\137", + "\1\140", + "", + "", + "\1\144\17\uffff\1\143", + "\1\145", + "\1\146", + "", + "", + "\0\150", + "\0\150", + "\1\151\4\uffff\1\152", + "", + "", + "\1\154", + "\1\156\22\uffff\1\155", + "\1\157", + "", + "", + "", + "", + "\1\160", + "\1\161", + "\1\162", + "\1\163", + "\1\165\12\uffff\1\164", + "\1\166", + "\1\167", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\171", + "\1\172", + "\1\173", + "", + "", + "", + "", + "\1\174", + "\1\175", + "\1\176", + "", + "", + "\1\177", + "\1\u0080", + "\1\u0081\2\uffff\1\u0082", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u0084", + "\1\u0085", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\15\56\1\u0088\5\56\1\u0087\6\56", + "", + "", + "", + "", + "\1\u008a", + "\1\u008b", + "", + "", + "\1\u008c", + "\1\u008d", + "\1\u008e", + "\1\u008f", + "", + "", + "", + "", + "", + "\1\u0090", + "\1\u0091", + "\1\u0092", + "\1\u0093", + "\1\u0094", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u009a", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u009d", + "\1\u009e", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00a0", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00a2", + "\1\u00a3", + "\1\u00a4", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00a8", + "", + "\1\u00a9", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00ad", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00b0", + "\1\u00b1", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00b3", + "", + "", + "", + "", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "\1\u00b5", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "\1\u00be", + "\1\u00bf", + "", + "\1\u00c0", + "", + "\1\u00c1", + "", + "", + "", + "", + "", + "", + "", + "", + "\1\u00c2", + "\1\u00c3", + "\1\u00c4", + "\1\u00c5", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00c8", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "\1\56\4\uffff\1\56\10\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "" + }; + + static final short[] DFA11_eot = DFA.unpackEncodedString(DFA11_eotS); + static final short[] DFA11_eof = DFA.unpackEncodedString(DFA11_eofS); + static final char[] DFA11_min = DFA.unpackEncodedStringToUnsignedChars(DFA11_minS); + static final char[] DFA11_max = DFA.unpackEncodedStringToUnsignedChars(DFA11_maxS); + static final short[] DFA11_accept = DFA.unpackEncodedString(DFA11_acceptS); + static final short[] DFA11_special = DFA.unpackEncodedString(DFA11_specialS); + static final short[][] DFA11_transition; + + static { + int numStates = DFA11_transitionS.length; + DFA11_transition = new short[numStates][]; + for (int i=0; i') ) {s = 21;} + + else if ( (LA11_0=='.') ) {s = 22;} + + else if ( (LA11_0=='-') ) {s = 23;} + + else if ( (LA11_0=='n') ) {s = 24;} + + else if ( (LA11_0=='~') ) {s = 25;} + + else if ( (LA11_0=='^') ) {s = 26;} + + else if ( (LA11_0=='*') ) {s = 27;} + + else if ( (LA11_0=='#') ) {s = 28;} + + else if ( (LA11_0=='u') ) {s = 29;} + + else if ( (LA11_0=='I') ) {s = 30;} + + else if ( (LA11_0=='(') ) {s = 31;} + + else if ( (LA11_0==')') ) {s = 32;} + + else if ( (LA11_0=='r') ) {s = 33;} + + else if ( (LA11_0=='l') ) {s = 34;} + + else if ( (LA11_0=='m') ) {s = 35;} + + else if ( ((LA11_0>='A' && LA11_0<='H')||(LA11_0>='J' && LA11_0<='Z')||LA11_0=='_'||(LA11_0>='b' && LA11_0<='c')||(LA11_0>='g' && LA11_0<='h')||(LA11_0>='j' && LA11_0<='k')||LA11_0=='q'||LA11_0=='t'||(LA11_0>='v' && LA11_0<='z')) ) {s = 36;} + + else if ( ((LA11_0>='0' && LA11_0<='9')) ) {s = 37;} + + else if ( (LA11_0=='\"') ) {s = 38;} + + else if ( (LA11_0=='\'') ) {s = 39;} + + else if ( (LA11_0=='/') ) {s = 40;} + + else if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {s = 41;} + + else if ( ((LA11_0>='\u0000' && LA11_0<='\b')||(LA11_0>='\u000B' && LA11_0<='\f')||(LA11_0>='\u000E' && LA11_0<='\u001F')||(LA11_0>='$' && LA11_0<='%')||LA11_0==';'||(LA11_0>='?' && LA11_0<='@')||LA11_0=='\\'||LA11_0=='`'||(LA11_0>='\u007F' && LA11_0<='\uFFFF')) ) {s = 42;} + + if ( s>=0 ) return s; + break; + case 1 : + int LA11_38 = input.LA(1); + + s = -1; + if ( ((LA11_38>='\u0000' && LA11_38<='\uFFFF')) ) {s = 104;} + + else s = 42; + + if ( s>=0 ) return s; + break; + case 2 : + int LA11_39 = input.LA(1); + + s = -1; + if ( ((LA11_39>='\u0000' && LA11_39<='\uFFFF')) ) {s = 104;} + + else s = 42; + + if ( s>=0 ) return s; + break; + } + NoViableAltException nvae = + new NoViableAltException(getDescription(), 11, _s, input); + error(nvae); + throw nvae; + } + } + + +} \ No newline at end of file diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java new file mode 100644 index 00000000..1735afbd --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java @@ -0,0 +1,8882 @@ +package hu.bme.mit.inf.dslreasoner.parser.antlr.internal; + +import org.eclipse.xtext.*; +import org.eclipse.xtext.parser.*; +import org.eclipse.xtext.parser.impl.*; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.common.util.Enumerator; +import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser; +import org.eclipse.xtext.parser.antlr.XtextTokenStream; +import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens; +import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken; +import hu.bme.mit.inf.dslreasoner.services.AlloyLanguageGrammarAccess; + + + +import org.antlr.runtime.*; +import java.util.Stack; +import java.util.List; +import java.util.ArrayList; +import java.util.Map; +import java.util.HashMap; +@SuppressWarnings("all") +public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser { + public static final String[] tokenNames = new String[] { + "", "", "", "", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'enum'", "'{'", "','", "'}'", "'abstract'", "'sig'", "'extends'", "'in'", "'+'", "':'", "'fun'", "'['", "']'", "'pred'", "'fact'", "'disj'", "'||'", "'or'", "'<=>'", "'iff'", "'=>'", "'implies'", "'else'", "'&&'", "'and'", "'='", "'!='", "'>'", "'>='", "'<'", "'<='", "'++'", "':>'", "'<:'", "'.'", "'-'", "'&'", "'->'", "'!'", "'not'", "'~'", "'^'", "'*'", "'#'", "'sum'", "'none'", "'iden'", "'univ'", "'Int'", "'('", "')'", "'run'", "'for'", "'exactly'", "'all'", "'no'", "'some'", "'lone'", "'one'", "'set'", "'plus'", "'sub'", "'mul'", "'rem'", "'div'" + }; + public static final int T__50=50; + public static final int T__19=19; + public static final int T__15=15; + public static final int T__59=59; + public static final int T__16=16; + public static final int T__17=17; + public static final int T__18=18; + public static final int T__11=11; + public static final int T__55=55; + public static final int T__12=12; + public static final int T__56=56; + public static final int T__13=13; + public static final int T__57=57; + public static final int T__14=14; + public static final int T__58=58; + public static final int T__51=51; + public static final int T__52=52; + public static final int T__53=53; + public static final int T__54=54; + public static final int T__60=60; + public static final int T__61=61; + public static final int RULE_ID=4; + public static final int T__26=26; + public static final int T__27=27; + public static final int T__28=28; + public static final int RULE_INT=5; + public static final int T__29=29; + public static final int T__22=22; + public static final int T__66=66; + public static final int RULE_ML_COMMENT=7; + public static final int T__23=23; + public static final int T__67=67; + public static final int T__24=24; + public static final int T__68=68; + public static final int T__25=25; + public static final int T__69=69; + public static final int T__62=62; + public static final int T__63=63; + public static final int T__20=20; + public static final int T__64=64; + public static final int T__21=21; + public static final int T__65=65; + public static final int T__70=70; + public static final int T__71=71; + public static final int T__72=72; + public static final int RULE_STRING=6; + public static final int RULE_SL_COMMENT=8; + public static final int T__37=37; + public static final int T__38=38; + public static final int T__39=39; + public static final int T__33=33; + public static final int T__34=34; + public static final int T__35=35; + public static final int T__36=36; + public static final int T__73=73; + public static final int EOF=-1; + public static final int T__30=30; + public static final int T__74=74; + public static final int T__31=31; + public static final int T__75=75; + public static final int T__32=32; + public static final int RULE_WS=9; + public static final int RULE_ANY_OTHER=10; + public static final int T__48=48; + public static final int T__49=49; + public static final int T__44=44; + public static final int T__45=45; + public static final int T__46=46; + public static final int T__47=47; + public static final int T__40=40; + public static final int T__41=41; + public static final int T__42=42; + public static final int T__43=43; + + // delegates + // delegators + + + public InternalAlloyLanguageParser(TokenStream input) { + this(input, new RecognizerSharedState()); + } + public InternalAlloyLanguageParser(TokenStream input, RecognizerSharedState state) { + super(input, state); + + } + + + public String[] getTokenNames() { return InternalAlloyLanguageParser.tokenNames; } + public String getGrammarFileName() { return "InternalAlloyLanguage.g"; } + + + + private AlloyLanguageGrammarAccess grammarAccess; + + public InternalAlloyLanguageParser(TokenStream input, AlloyLanguageGrammarAccess grammarAccess) { + this(input); + this.grammarAccess = grammarAccess; + registerRules(grammarAccess.getGrammar()); + } + + @Override + protected String getFirstRuleName() { + return "ALSDocument"; + } + + @Override + protected AlloyLanguageGrammarAccess getGrammarAccess() { + return grammarAccess; + } + + + + // $ANTLR start "entryRuleALSDocument" + // InternalAlloyLanguage.g:68:1: entryRuleALSDocument returns [EObject current=null] : iv_ruleALSDocument= ruleALSDocument EOF ; + public final EObject entryRuleALSDocument() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSDocument = null; + + + try { + // InternalAlloyLanguage.g:69:2: (iv_ruleALSDocument= ruleALSDocument EOF ) + // InternalAlloyLanguage.g:70:2: iv_ruleALSDocument= ruleALSDocument EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSDocumentRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSDocument=ruleALSDocument(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSDocument; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSDocument" + + + // $ANTLR start "ruleALSDocument" + // InternalAlloyLanguage.g:77:1: ruleALSDocument returns [EObject current=null] : ( ( ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) | ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) | ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) | ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) | ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) )+ ( (lv_runCommand_5_0= ruleALSRunCommand ) ) ) ; + public final EObject ruleALSDocument() throws RecognitionException { + EObject current = null; + + EObject lv_enumDeclarations_0_0 = null; + + EObject lv_signatureBodies_1_0 = null; + + EObject lv_functionDefinitions_2_0 = null; + + EObject lv_relationDefinitions_3_0 = null; + + EObject lv_factDeclarations_4_0 = null; + + EObject lv_runCommand_5_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:80:28: ( ( ( ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) | ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) | ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) | ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) | ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) )+ ( (lv_runCommand_5_0= ruleALSRunCommand ) ) ) ) + // InternalAlloyLanguage.g:81:1: ( ( ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) | ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) | ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) | ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) | ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) )+ ( (lv_runCommand_5_0= ruleALSRunCommand ) ) ) + { + // InternalAlloyLanguage.g:81:1: ( ( ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) | ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) | ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) | ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) | ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) )+ ( (lv_runCommand_5_0= ruleALSRunCommand ) ) ) + // InternalAlloyLanguage.g:81:2: ( ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) | ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) | ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) | ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) | ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) )+ ( (lv_runCommand_5_0= ruleALSRunCommand ) ) + { + // InternalAlloyLanguage.g:81:2: ( ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) | ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) | ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) | ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) | ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) )+ + int cnt1=0; + loop1: + do { + int alt1=6; + switch ( input.LA(1) ) { + case 11: + { + alt1=1; + } + break; + case 15: + case 16: + case 65: + case 66: + case 67: + case 68: + case 69: + case 70: + { + alt1=2; + } + break; + case 21: + { + alt1=3; + } + break; + case 24: + { + alt1=4; + } + break; + case 25: + { + alt1=5; + } + break; + + } + + switch (alt1) { + case 1 : + // InternalAlloyLanguage.g:81:3: ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) + { + // InternalAlloyLanguage.g:81:3: ( (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) ) + // InternalAlloyLanguage.g:82:1: (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) + { + // InternalAlloyLanguage.g:82:1: (lv_enumDeclarations_0_0= ruleALSEnumDeclaration ) + // InternalAlloyLanguage.g:83:3: lv_enumDeclarations_0_0= ruleALSEnumDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDocumentAccess().getEnumDeclarationsALSEnumDeclarationParserRuleCall_0_0_0()); + + } + pushFollow(FOLLOW_3); + lv_enumDeclarations_0_0=ruleALSEnumDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + current, + "enumDeclarations", + lv_enumDeclarations_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:100:6: ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) + { + // InternalAlloyLanguage.g:100:6: ( (lv_signatureBodies_1_0= ruleALSSignatureBody ) ) + // InternalAlloyLanguage.g:101:1: (lv_signatureBodies_1_0= ruleALSSignatureBody ) + { + // InternalAlloyLanguage.g:101:1: (lv_signatureBodies_1_0= ruleALSSignatureBody ) + // InternalAlloyLanguage.g:102:3: lv_signatureBodies_1_0= ruleALSSignatureBody + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDocumentAccess().getSignatureBodiesALSSignatureBodyParserRuleCall_0_1_0()); + + } + pushFollow(FOLLOW_3); + lv_signatureBodies_1_0=ruleALSSignatureBody(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + current, + "signatureBodies", + lv_signatureBodies_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureBody"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + case 3 : + // InternalAlloyLanguage.g:119:6: ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) + { + // InternalAlloyLanguage.g:119:6: ( (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) ) + // InternalAlloyLanguage.g:120:1: (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) + { + // InternalAlloyLanguage.g:120:1: (lv_functionDefinitions_2_0= ruleALSFunctionDefinition ) + // InternalAlloyLanguage.g:121:3: lv_functionDefinitions_2_0= ruleALSFunctionDefinition + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDocumentAccess().getFunctionDefinitionsALSFunctionDefinitionParserRuleCall_0_2_0()); + + } + pushFollow(FOLLOW_3); + lv_functionDefinitions_2_0=ruleALSFunctionDefinition(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + current, + "functionDefinitions", + lv_functionDefinitions_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFunctionDefinition"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + case 4 : + // InternalAlloyLanguage.g:138:6: ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) + { + // InternalAlloyLanguage.g:138:6: ( (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) ) + // InternalAlloyLanguage.g:139:1: (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) + { + // InternalAlloyLanguage.g:139:1: (lv_relationDefinitions_3_0= ruleALSRelationDefinition ) + // InternalAlloyLanguage.g:140:3: lv_relationDefinitions_3_0= ruleALSRelationDefinition + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDocumentAccess().getRelationDefinitionsALSRelationDefinitionParserRuleCall_0_3_0()); + + } + pushFollow(FOLLOW_3); + lv_relationDefinitions_3_0=ruleALSRelationDefinition(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + current, + "relationDefinitions", + lv_relationDefinitions_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRelationDefinition"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + case 5 : + // InternalAlloyLanguage.g:157:6: ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) + { + // InternalAlloyLanguage.g:157:6: ( (lv_factDeclarations_4_0= ruleALSFactDeclaration ) ) + // InternalAlloyLanguage.g:158:1: (lv_factDeclarations_4_0= ruleALSFactDeclaration ) + { + // InternalAlloyLanguage.g:158:1: (lv_factDeclarations_4_0= ruleALSFactDeclaration ) + // InternalAlloyLanguage.g:159:3: lv_factDeclarations_4_0= ruleALSFactDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDocumentAccess().getFactDeclarationsALSFactDeclarationParserRuleCall_0_4_0()); + + } + pushFollow(FOLLOW_3); + lv_factDeclarations_4_0=ruleALSFactDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + add( + current, + "factDeclarations", + lv_factDeclarations_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFactDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + if ( cnt1 >= 1 ) break loop1; + if (state.backtracking>0) {state.failed=true; return current;} + EarlyExitException eee = + new EarlyExitException(1, input); + throw eee; + } + cnt1++; + } while (true); + + // InternalAlloyLanguage.g:175:4: ( (lv_runCommand_5_0= ruleALSRunCommand ) ) + // InternalAlloyLanguage.g:176:1: (lv_runCommand_5_0= ruleALSRunCommand ) + { + // InternalAlloyLanguage.g:176:1: (lv_runCommand_5_0= ruleALSRunCommand ) + // InternalAlloyLanguage.g:177:3: lv_runCommand_5_0= ruleALSRunCommand + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDocumentAccess().getRunCommandALSRunCommandParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_2); + lv_runCommand_5_0=ruleALSRunCommand(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDocumentRule()); + } + set( + current, + "runCommand", + lv_runCommand_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRunCommand"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSDocument" + + + // $ANTLR start "entryRuleALSID" + // InternalAlloyLanguage.g:201:1: entryRuleALSID returns [String current=null] : iv_ruleALSID= ruleALSID EOF ; + public final String entryRuleALSID() throws RecognitionException { + String current = null; + + AntlrDatatypeRuleToken iv_ruleALSID = null; + + + try { + // InternalAlloyLanguage.g:202:2: (iv_ruleALSID= ruleALSID EOF ) + // InternalAlloyLanguage.g:203:2: iv_ruleALSID= ruleALSID EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSIDRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSID=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSID.getText(); + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSID" + + + // $ANTLR start "ruleALSID" + // InternalAlloyLanguage.g:210:1: ruleALSID returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_ID_0= RULE_ID ; + public final AntlrDatatypeRuleToken ruleALSID() throws RecognitionException { + AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); + + Token this_ID_0=null; + + enterRule(); + + try { + // InternalAlloyLanguage.g:213:28: (this_ID_0= RULE_ID ) + // InternalAlloyLanguage.g:214:5: this_ID_0= RULE_ID + { + this_ID_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current.merge(this_ID_0); + + } + if ( state.backtracking==0 ) { + + newLeafNode(this_ID_0, grammarAccess.getALSIDAccess().getIDTerminalRuleCall()); + + } + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSID" + + + // $ANTLR start "entryRuleALSTypeDeclaration" + // InternalAlloyLanguage.g:231:1: entryRuleALSTypeDeclaration returns [EObject current=null] : iv_ruleALSTypeDeclaration= ruleALSTypeDeclaration EOF ; + public final EObject entryRuleALSTypeDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSTypeDeclaration = null; + + + try { + // InternalAlloyLanguage.g:232:2: (iv_ruleALSTypeDeclaration= ruleALSTypeDeclaration EOF ) + // InternalAlloyLanguage.g:233:2: iv_ruleALSTypeDeclaration= ruleALSTypeDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSTypeDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSTypeDeclaration=ruleALSTypeDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSTypeDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSTypeDeclaration" + + + // $ANTLR start "ruleALSTypeDeclaration" + // InternalAlloyLanguage.g:240:1: ruleALSTypeDeclaration returns [EObject current=null] : (this_ALSEnumDeclaration_0= ruleALSEnumDeclaration | this_ALSSignatureDeclaration_1= ruleALSSignatureDeclaration ) ; + public final EObject ruleALSTypeDeclaration() throws RecognitionException { + EObject current = null; + + EObject this_ALSEnumDeclaration_0 = null; + + EObject this_ALSSignatureDeclaration_1 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:243:28: ( (this_ALSEnumDeclaration_0= ruleALSEnumDeclaration | this_ALSSignatureDeclaration_1= ruleALSSignatureDeclaration ) ) + // InternalAlloyLanguage.g:244:1: (this_ALSEnumDeclaration_0= ruleALSEnumDeclaration | this_ALSSignatureDeclaration_1= ruleALSSignatureDeclaration ) + { + // InternalAlloyLanguage.g:244:1: (this_ALSEnumDeclaration_0= ruleALSEnumDeclaration | this_ALSSignatureDeclaration_1= ruleALSSignatureDeclaration ) + int alt2=2; + int LA2_0 = input.LA(1); + + if ( (LA2_0==11) ) { + alt2=1; + } + else if ( (LA2_0==RULE_ID) ) { + alt2=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 2, 0, input); + + throw nvae; + } + switch (alt2) { + case 1 : + // InternalAlloyLanguage.g:245:5: this_ALSEnumDeclaration_0= ruleALSEnumDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSTypeDeclarationAccess().getALSEnumDeclarationParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_ALSEnumDeclaration_0=ruleALSEnumDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSEnumDeclaration_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:255:5: this_ALSSignatureDeclaration_1= ruleALSSignatureDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSTypeDeclarationAccess().getALSSignatureDeclarationParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_ALSSignatureDeclaration_1=ruleALSSignatureDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSSignatureDeclaration_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSTypeDeclaration" + + + // $ANTLR start "entryRuleALSEnumDeclaration" + // InternalAlloyLanguage.g:271:1: entryRuleALSEnumDeclaration returns [EObject current=null] : iv_ruleALSEnumDeclaration= ruleALSEnumDeclaration EOF ; + public final EObject entryRuleALSEnumDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSEnumDeclaration = null; + + + try { + // InternalAlloyLanguage.g:272:2: (iv_ruleALSEnumDeclaration= ruleALSEnumDeclaration EOF ) + // InternalAlloyLanguage.g:273:2: iv_ruleALSEnumDeclaration= ruleALSEnumDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSEnumDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSEnumDeclaration=ruleALSEnumDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSEnumDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSEnumDeclaration" + + + // $ANTLR start "ruleALSEnumDeclaration" + // InternalAlloyLanguage.g:280:1: ruleALSEnumDeclaration returns [EObject current=null] : (otherlv_0= 'enum' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '{' ( (lv_literal_3_0= ruleALSEnumLiteral ) ) (otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) )* otherlv_6= '}' ) ; + public final EObject ruleALSEnumDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + Token otherlv_6=null; + AntlrDatatypeRuleToken lv_name_1_0 = null; + + EObject lv_literal_3_0 = null; + + EObject lv_literal_5_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:283:28: ( (otherlv_0= 'enum' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '{' ( (lv_literal_3_0= ruleALSEnumLiteral ) ) (otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) )* otherlv_6= '}' ) ) + // InternalAlloyLanguage.g:284:1: (otherlv_0= 'enum' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '{' ( (lv_literal_3_0= ruleALSEnumLiteral ) ) (otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) )* otherlv_6= '}' ) + { + // InternalAlloyLanguage.g:284:1: (otherlv_0= 'enum' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '{' ( (lv_literal_3_0= ruleALSEnumLiteral ) ) (otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) )* otherlv_6= '}' ) + // InternalAlloyLanguage.g:284:3: otherlv_0= 'enum' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '{' ( (lv_literal_3_0= ruleALSEnumLiteral ) ) (otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) )* otherlv_6= '}' + { + otherlv_0=(Token)match(input,11,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getALSEnumDeclarationAccess().getEnumKeyword_0()); + + } + // InternalAlloyLanguage.g:288:1: ( (lv_name_1_0= ruleALSID ) ) + // InternalAlloyLanguage.g:289:1: (lv_name_1_0= ruleALSID ) + { + // InternalAlloyLanguage.g:289:1: (lv_name_1_0= ruleALSID ) + // InternalAlloyLanguage.g:290:3: lv_name_1_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSEnumDeclarationAccess().getNameALSIDParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_5); + lv_name_1_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSEnumDeclarationRule()); + } + set( + current, + "name", + lv_name_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_2=(Token)match(input,12,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSEnumDeclarationAccess().getLeftCurlyBracketKeyword_2()); + + } + // InternalAlloyLanguage.g:310:1: ( (lv_literal_3_0= ruleALSEnumLiteral ) ) + // InternalAlloyLanguage.g:311:1: (lv_literal_3_0= ruleALSEnumLiteral ) + { + // InternalAlloyLanguage.g:311:1: (lv_literal_3_0= ruleALSEnumLiteral ) + // InternalAlloyLanguage.g:312:3: lv_literal_3_0= ruleALSEnumLiteral + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSEnumDeclarationAccess().getLiteralALSEnumLiteralParserRuleCall_3_0()); + + } + pushFollow(FOLLOW_6); + lv_literal_3_0=ruleALSEnumLiteral(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSEnumDeclarationRule()); + } + add( + current, + "literal", + lv_literal_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumLiteral"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:328:2: (otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) )* + loop3: + do { + int alt3=2; + int LA3_0 = input.LA(1); + + if ( (LA3_0==13) ) { + alt3=1; + } + + + switch (alt3) { + case 1 : + // InternalAlloyLanguage.g:328:4: otherlv_4= ',' ( (lv_literal_5_0= ruleALSEnumLiteral ) ) + { + otherlv_4=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getALSEnumDeclarationAccess().getCommaKeyword_4_0()); + + } + // InternalAlloyLanguage.g:332:1: ( (lv_literal_5_0= ruleALSEnumLiteral ) ) + // InternalAlloyLanguage.g:333:1: (lv_literal_5_0= ruleALSEnumLiteral ) + { + // InternalAlloyLanguage.g:333:1: (lv_literal_5_0= ruleALSEnumLiteral ) + // InternalAlloyLanguage.g:334:3: lv_literal_5_0= ruleALSEnumLiteral + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSEnumDeclarationAccess().getLiteralALSEnumLiteralParserRuleCall_4_1_0()); + + } + pushFollow(FOLLOW_6); + lv_literal_5_0=ruleALSEnumLiteral(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSEnumDeclarationRule()); + } + add( + current, + "literal", + lv_literal_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumLiteral"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop3; + } + } while (true); + + otherlv_6=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_6, grammarAccess.getALSEnumDeclarationAccess().getRightCurlyBracketKeyword_5()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSEnumDeclaration" + + + // $ANTLR start "entryRuleALSEnumLiteral" + // InternalAlloyLanguage.g:362:1: entryRuleALSEnumLiteral returns [EObject current=null] : iv_ruleALSEnumLiteral= ruleALSEnumLiteral EOF ; + public final EObject entryRuleALSEnumLiteral() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSEnumLiteral = null; + + + try { + // InternalAlloyLanguage.g:363:2: (iv_ruleALSEnumLiteral= ruleALSEnumLiteral EOF ) + // InternalAlloyLanguage.g:364:2: iv_ruleALSEnumLiteral= ruleALSEnumLiteral EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSEnumLiteralRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSEnumLiteral=ruleALSEnumLiteral(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSEnumLiteral; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSEnumLiteral" + + + // $ANTLR start "ruleALSEnumLiteral" + // InternalAlloyLanguage.g:371:1: ruleALSEnumLiteral returns [EObject current=null] : ( (lv_name_0_0= ruleALSID ) ) ; + public final EObject ruleALSEnumLiteral() throws RecognitionException { + EObject current = null; + + AntlrDatatypeRuleToken lv_name_0_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:374:28: ( ( (lv_name_0_0= ruleALSID ) ) ) + // InternalAlloyLanguage.g:375:1: ( (lv_name_0_0= ruleALSID ) ) + { + // InternalAlloyLanguage.g:375:1: ( (lv_name_0_0= ruleALSID ) ) + // InternalAlloyLanguage.g:376:1: (lv_name_0_0= ruleALSID ) + { + // InternalAlloyLanguage.g:376:1: (lv_name_0_0= ruleALSID ) + // InternalAlloyLanguage.g:377:3: lv_name_0_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSEnumLiteralAccess().getNameALSIDParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + lv_name_0_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSEnumLiteralRule()); + } + set( + current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSEnumLiteral" + + + // $ANTLR start "entryRuleALSSignatureDeclaration" + // InternalAlloyLanguage.g:401:1: entryRuleALSSignatureDeclaration returns [EObject current=null] : iv_ruleALSSignatureDeclaration= ruleALSSignatureDeclaration EOF ; + public final EObject entryRuleALSSignatureDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSSignatureDeclaration = null; + + + try { + // InternalAlloyLanguage.g:402:2: (iv_ruleALSSignatureDeclaration= ruleALSSignatureDeclaration EOF ) + // InternalAlloyLanguage.g:403:2: iv_ruleALSSignatureDeclaration= ruleALSSignatureDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSSignatureDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSSignatureDeclaration=ruleALSSignatureDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSSignatureDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSSignatureDeclaration" + + + // $ANTLR start "ruleALSSignatureDeclaration" + // InternalAlloyLanguage.g:410:1: ruleALSSignatureDeclaration returns [EObject current=null] : ( (lv_name_0_0= ruleALSID ) ) ; + public final EObject ruleALSSignatureDeclaration() throws RecognitionException { + EObject current = null; + + AntlrDatatypeRuleToken lv_name_0_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:413:28: ( ( (lv_name_0_0= ruleALSID ) ) ) + // InternalAlloyLanguage.g:414:1: ( (lv_name_0_0= ruleALSID ) ) + { + // InternalAlloyLanguage.g:414:1: ( (lv_name_0_0= ruleALSID ) ) + // InternalAlloyLanguage.g:415:1: (lv_name_0_0= ruleALSID ) + { + // InternalAlloyLanguage.g:415:1: (lv_name_0_0= ruleALSID ) + // InternalAlloyLanguage.g:416:3: lv_name_0_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSSignatureDeclarationAccess().getNameALSIDParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + lv_name_0_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSSignatureDeclarationRule()); + } + set( + current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSSignatureDeclaration" + + + // $ANTLR start "entryRuleALSSignatureBody" + // InternalAlloyLanguage.g:440:1: entryRuleALSSignatureBody returns [EObject current=null] : iv_ruleALSSignatureBody= ruleALSSignatureBody EOF ; + public final EObject entryRuleALSSignatureBody() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSSignatureBody = null; + + + try { + // InternalAlloyLanguage.g:441:2: (iv_ruleALSSignatureBody= ruleALSSignatureBody EOF ) + // InternalAlloyLanguage.g:442:2: iv_ruleALSSignatureBody= ruleALSSignatureBody EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSSignatureBodyRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSSignatureBody=ruleALSSignatureBody(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSSignatureBody; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSSignatureBody" + + + // $ANTLR start "ruleALSSignatureBody" + // InternalAlloyLanguage.g:449:1: ruleALSSignatureBody returns [EObject current=null] : ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) ) otherlv_3= 'sig' ( (lv_declarations_4_0= ruleALSSignatureDeclaration ) ) (otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) )* ( (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) | (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) )? otherlv_13= '{' ( ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* )? otherlv_17= '}' ) ; + public final EObject ruleALSSignatureBody() throws RecognitionException { + EObject current = null; + + Token lv_abstract_2_0=null; + Token otherlv_3=null; + Token otherlv_5=null; + Token otherlv_7=null; + Token otherlv_8=null; + Token otherlv_9=null; + Token otherlv_10=null; + Token otherlv_11=null; + Token otherlv_12=null; + Token otherlv_13=null; + Token otherlv_15=null; + Token otherlv_17=null; + Enumerator lv_multiplicity_1_0 = null; + + EObject lv_declarations_4_0 = null; + + EObject lv_declarations_6_0 = null; + + EObject lv_fields_14_0 = null; + + EObject lv_fields_16_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:452:28: ( ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) ) otherlv_3= 'sig' ( (lv_declarations_4_0= ruleALSSignatureDeclaration ) ) (otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) )* ( (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) | (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) )? otherlv_13= '{' ( ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* )? otherlv_17= '}' ) ) + // InternalAlloyLanguage.g:453:1: ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) ) otherlv_3= 'sig' ( (lv_declarations_4_0= ruleALSSignatureDeclaration ) ) (otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) )* ( (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) | (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) )? otherlv_13= '{' ( ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* )? otherlv_17= '}' ) + { + // InternalAlloyLanguage.g:453:1: ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) ) otherlv_3= 'sig' ( (lv_declarations_4_0= ruleALSSignatureDeclaration ) ) (otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) )* ( (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) | (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) )? otherlv_13= '{' ( ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* )? otherlv_17= '}' ) + // InternalAlloyLanguage.g:453:2: ( ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) ) otherlv_3= 'sig' ( (lv_declarations_4_0= ruleALSSignatureDeclaration ) ) (otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) )* ( (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) | (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) )? otherlv_13= '{' ( ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* )? otherlv_17= '}' + { + // InternalAlloyLanguage.g:453:2: ( ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) ) + // InternalAlloyLanguage.g:455:1: ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) + { + // InternalAlloyLanguage.g:455:1: ( ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) ) + // InternalAlloyLanguage.g:456:2: ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) + { + getUnorderedGroupHelper().enter(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + // InternalAlloyLanguage.g:459:2: ( ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* ) + // InternalAlloyLanguage.g:460:3: ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* + { + // InternalAlloyLanguage.g:460:3: ( ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) )* + loop4: + do { + int alt4=3; + int LA4_0 = input.LA(1); + + if ( LA4_0 >= 65 && LA4_0 <= 70 && getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0) ) { + alt4=1; + } + else if ( LA4_0 == 15 && getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1) ) { + alt4=2; + } + + + switch (alt4) { + case 1 : + // InternalAlloyLanguage.g:462:4: ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) + { + // InternalAlloyLanguage.g:462:4: ({...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) ) + // InternalAlloyLanguage.g:463:5: {...}? => ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleALSSignatureBody", "getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0)"); + } + // InternalAlloyLanguage.g:463:113: ( ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) ) + // InternalAlloyLanguage.g:464:6: ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0); + // InternalAlloyLanguage.g:467:6: ({...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) ) + // InternalAlloyLanguage.g:467:7: {...}? => ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleALSSignatureBody", "true"); + } + // InternalAlloyLanguage.g:467:16: ( (lv_multiplicity_1_0= ruleALSMultiplicity ) ) + // InternalAlloyLanguage.g:468:1: (lv_multiplicity_1_0= ruleALSMultiplicity ) + { + // InternalAlloyLanguage.g:468:1: (lv_multiplicity_1_0= ruleALSMultiplicity ) + // InternalAlloyLanguage.g:469:3: lv_multiplicity_1_0= ruleALSMultiplicity + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getMultiplicityALSMultiplicityEnumRuleCall_0_0_0()); + + } + pushFollow(FOLLOW_7); + lv_multiplicity_1_0=ruleALSMultiplicity(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + set( + current, + "multiplicity", + lv_multiplicity_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + + } + + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:492:4: ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) + { + // InternalAlloyLanguage.g:492:4: ({...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) ) + // InternalAlloyLanguage.g:493:5: {...}? => ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleALSSignatureBody", "getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1)"); + } + // InternalAlloyLanguage.g:493:113: ( ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) ) + // InternalAlloyLanguage.g:494:6: ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) + { + getUnorderedGroupHelper().select(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1); + // InternalAlloyLanguage.g:497:6: ({...}? => ( (lv_abstract_2_0= 'abstract' ) ) ) + // InternalAlloyLanguage.g:497:7: {...}? => ( (lv_abstract_2_0= 'abstract' ) ) + { + if ( !((true)) ) { + if (state.backtracking>0) {state.failed=true; return current;} + throw new FailedPredicateException(input, "ruleALSSignatureBody", "true"); + } + // InternalAlloyLanguage.g:497:16: ( (lv_abstract_2_0= 'abstract' ) ) + // InternalAlloyLanguage.g:498:1: (lv_abstract_2_0= 'abstract' ) + { + // InternalAlloyLanguage.g:498:1: (lv_abstract_2_0= 'abstract' ) + // InternalAlloyLanguage.g:499:3: lv_abstract_2_0= 'abstract' + { + lv_abstract_2_0=(Token)match(input,15,FOLLOW_7); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_abstract_2_0, grammarAccess.getALSSignatureBodyAccess().getAbstractAbstractKeyword_0_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + setWithLastConsumed(current, "abstract", true, "abstract"); + + } + + } + + + } + + + } + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + + } + + + } + + + } + break; + + default : + break loop4; + } + } while (true); + + + } + + + } + + getUnorderedGroupHelper().leave(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0()); + + } + + otherlv_3=(Token)match(input,16,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSSignatureBodyAccess().getSigKeyword_1()); + + } + // InternalAlloyLanguage.g:530:1: ( (lv_declarations_4_0= ruleALSSignatureDeclaration ) ) + // InternalAlloyLanguage.g:531:1: (lv_declarations_4_0= ruleALSSignatureDeclaration ) + { + // InternalAlloyLanguage.g:531:1: (lv_declarations_4_0= ruleALSSignatureDeclaration ) + // InternalAlloyLanguage.g:532:3: lv_declarations_4_0= ruleALSSignatureDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getDeclarationsALSSignatureDeclarationParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_8); + lv_declarations_4_0=ruleALSSignatureDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + current, + "declarations", + lv_declarations_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:548:2: (otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) )* + loop5: + do { + int alt5=2; + int LA5_0 = input.LA(1); + + if ( (LA5_0==13) ) { + alt5=1; + } + + + switch (alt5) { + case 1 : + // InternalAlloyLanguage.g:548:4: otherlv_5= ',' ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) + { + otherlv_5=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getALSSignatureBodyAccess().getCommaKeyword_3_0()); + + } + // InternalAlloyLanguage.g:552:1: ( (lv_declarations_6_0= ruleALSSignatureDeclaration ) ) + // InternalAlloyLanguage.g:553:1: (lv_declarations_6_0= ruleALSSignatureDeclaration ) + { + // InternalAlloyLanguage.g:553:1: (lv_declarations_6_0= ruleALSSignatureDeclaration ) + // InternalAlloyLanguage.g:554:3: lv_declarations_6_0= ruleALSSignatureDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getDeclarationsALSSignatureDeclarationParserRuleCall_3_1_0()); + + } + pushFollow(FOLLOW_8); + lv_declarations_6_0=ruleALSSignatureDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + current, + "declarations", + lv_declarations_6_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop5; + } + } while (true); + + // InternalAlloyLanguage.g:570:4: ( (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) | (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) )? + int alt7=3; + int LA7_0 = input.LA(1); + + if ( (LA7_0==17) ) { + alt7=1; + } + else if ( (LA7_0==18) ) { + alt7=2; + } + switch (alt7) { + case 1 : + // InternalAlloyLanguage.g:570:5: (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) + { + // InternalAlloyLanguage.g:570:5: (otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) ) + // InternalAlloyLanguage.g:570:7: otherlv_7= 'extends' ( (otherlv_8= RULE_ID ) ) + { + otherlv_7=(Token)match(input,17,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getALSSignatureBodyAccess().getExtendsKeyword_4_0_0()); + + } + // InternalAlloyLanguage.g:574:1: ( (otherlv_8= RULE_ID ) ) + // InternalAlloyLanguage.g:575:1: (otherlv_8= RULE_ID ) + { + // InternalAlloyLanguage.g:575:1: (otherlv_8= RULE_ID ) + // InternalAlloyLanguage.g:576:3: otherlv_8= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + + } + otherlv_8=(Token)match(input,RULE_ID,FOLLOW_5); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_8, grammarAccess.getALSSignatureBodyAccess().getSupertypeALSSignatureDeclarationCrossReference_4_0_1_0()); + + } + + } + + + } + + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:588:6: (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) + { + // InternalAlloyLanguage.g:588:6: (otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* ) + // InternalAlloyLanguage.g:588:8: otherlv_9= 'in' ( (otherlv_10= RULE_ID ) ) (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* + { + otherlv_9=(Token)match(input,18,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_9, grammarAccess.getALSSignatureBodyAccess().getInKeyword_4_1_0()); + + } + // InternalAlloyLanguage.g:592:1: ( (otherlv_10= RULE_ID ) ) + // InternalAlloyLanguage.g:593:1: (otherlv_10= RULE_ID ) + { + // InternalAlloyLanguage.g:593:1: (otherlv_10= RULE_ID ) + // InternalAlloyLanguage.g:594:3: otherlv_10= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + + } + otherlv_10=(Token)match(input,RULE_ID,FOLLOW_9); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_10, grammarAccess.getALSSignatureBodyAccess().getSupersetALSSignatureDeclarationCrossReference_4_1_1_0()); + + } + + } + + + } + + // InternalAlloyLanguage.g:605:2: (otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) )* + loop6: + do { + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0==19) ) { + alt6=1; + } + + + switch (alt6) { + case 1 : + // InternalAlloyLanguage.g:605:4: otherlv_11= '+' ( (otherlv_12= RULE_ID ) ) + { + otherlv_11=(Token)match(input,19,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_11, grammarAccess.getALSSignatureBodyAccess().getPlusSignKeyword_4_1_2_0()); + + } + // InternalAlloyLanguage.g:609:1: ( (otherlv_12= RULE_ID ) ) + // InternalAlloyLanguage.g:610:1: (otherlv_12= RULE_ID ) + { + // InternalAlloyLanguage.g:610:1: (otherlv_12= RULE_ID ) + // InternalAlloyLanguage.g:611:3: otherlv_12= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSignatureBodyRule()); + } + + } + otherlv_12=(Token)match(input,RULE_ID,FOLLOW_9); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_12, grammarAccess.getALSSignatureBodyAccess().getSupersetALSSignatureDeclarationCrossReference_4_1_2_1_0()); + + } + + } + + + } + + + } + break; + + default : + break loop6; + } + } while (true); + + + } + + + } + break; + + } + + otherlv_13=(Token)match(input,12,FOLLOW_10); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_13, grammarAccess.getALSSignatureBodyAccess().getLeftCurlyBracketKeyword_5()); + + } + // InternalAlloyLanguage.g:626:1: ( ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* )? + int alt9=2; + int LA9_0 = input.LA(1); + + if ( (LA9_0==RULE_ID) ) { + alt9=1; + } + switch (alt9) { + case 1 : + // InternalAlloyLanguage.g:626:2: ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* + { + // InternalAlloyLanguage.g:626:2: ( (lv_fields_14_0= ruleALSFieldDeclaration ) ) + // InternalAlloyLanguage.g:627:1: (lv_fields_14_0= ruleALSFieldDeclaration ) + { + // InternalAlloyLanguage.g:627:1: (lv_fields_14_0= ruleALSFieldDeclaration ) + // InternalAlloyLanguage.g:628:3: lv_fields_14_0= ruleALSFieldDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getFieldsALSFieldDeclarationParserRuleCall_6_0_0()); + + } + pushFollow(FOLLOW_6); + lv_fields_14_0=ruleALSFieldDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + current, + "fields", + lv_fields_14_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFieldDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:644:2: (otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) )* + loop8: + do { + int alt8=2; + int LA8_0 = input.LA(1); + + if ( (LA8_0==13) ) { + alt8=1; + } + + + switch (alt8) { + case 1 : + // InternalAlloyLanguage.g:644:4: otherlv_15= ',' ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) + { + otherlv_15=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_15, grammarAccess.getALSSignatureBodyAccess().getCommaKeyword_6_1_0()); + + } + // InternalAlloyLanguage.g:648:1: ( (lv_fields_16_0= ruleALSFieldDeclaration ) ) + // InternalAlloyLanguage.g:649:1: (lv_fields_16_0= ruleALSFieldDeclaration ) + { + // InternalAlloyLanguage.g:649:1: (lv_fields_16_0= ruleALSFieldDeclaration ) + // InternalAlloyLanguage.g:650:3: lv_fields_16_0= ruleALSFieldDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSSignatureBodyAccess().getFieldsALSFieldDeclarationParserRuleCall_6_1_1_0()); + + } + pushFollow(FOLLOW_6); + lv_fields_16_0=ruleALSFieldDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSSignatureBodyRule()); + } + add( + current, + "fields", + lv_fields_16_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFieldDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop8; + } + } while (true); + + + } + break; + + } + + otherlv_17=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_17, grammarAccess.getALSSignatureBodyAccess().getRightCurlyBracketKeyword_7()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSSignatureBody" + + + // $ANTLR start "entryRuleALSFieldDeclaration" + // InternalAlloyLanguage.g:678:1: entryRuleALSFieldDeclaration returns [EObject current=null] : iv_ruleALSFieldDeclaration= ruleALSFieldDeclaration EOF ; + public final EObject entryRuleALSFieldDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSFieldDeclaration = null; + + + try { + // InternalAlloyLanguage.g:679:2: (iv_ruleALSFieldDeclaration= ruleALSFieldDeclaration EOF ) + // InternalAlloyLanguage.g:680:2: iv_ruleALSFieldDeclaration= ruleALSFieldDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSFieldDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSFieldDeclaration=ruleALSFieldDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSFieldDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSFieldDeclaration" + + + // $ANTLR start "ruleALSFieldDeclaration" + // InternalAlloyLanguage.g:687:1: ruleALSFieldDeclaration returns [EObject current=null] : ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )? ( (lv_type_3_0= ruleALSTerm ) ) ) ; + public final EObject ruleALSFieldDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + AntlrDatatypeRuleToken lv_name_0_0 = null; + + Enumerator lv_multiplicity_2_0 = null; + + EObject lv_type_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:690:28: ( ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )? ( (lv_type_3_0= ruleALSTerm ) ) ) ) + // InternalAlloyLanguage.g:691:1: ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )? ( (lv_type_3_0= ruleALSTerm ) ) ) + { + // InternalAlloyLanguage.g:691:1: ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )? ( (lv_type_3_0= ruleALSTerm ) ) ) + // InternalAlloyLanguage.g:691:2: ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )? ( (lv_type_3_0= ruleALSTerm ) ) + { + // InternalAlloyLanguage.g:691:2: ( (lv_name_0_0= ruleALSID ) ) + // InternalAlloyLanguage.g:692:1: (lv_name_0_0= ruleALSID ) + { + // InternalAlloyLanguage.g:692:1: (lv_name_0_0= ruleALSID ) + // InternalAlloyLanguage.g:693:3: lv_name_0_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFieldDeclarationAccess().getNameALSIDParserRuleCall_0_0()); + + } + pushFollow(FOLLOW_11); + lv_name_0_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFieldDeclarationRule()); + } + set( + current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_1=(Token)match(input,20,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSFieldDeclarationAccess().getColonKeyword_1()); + + } + // InternalAlloyLanguage.g:713:1: ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )? + int alt10=2; + alt10 = dfa10.predict(input); + switch (alt10) { + case 1 : + // InternalAlloyLanguage.g:714:1: (lv_multiplicity_2_0= ruleALSMultiplicity ) + { + // InternalAlloyLanguage.g:714:1: (lv_multiplicity_2_0= ruleALSMultiplicity ) + // InternalAlloyLanguage.g:715:3: lv_multiplicity_2_0= ruleALSMultiplicity + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFieldDeclarationAccess().getMultiplicityALSMultiplicityEnumRuleCall_2_0()); + + } + pushFollow(FOLLOW_12); + lv_multiplicity_2_0=ruleALSMultiplicity(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFieldDeclarationRule()); + } + set( + current, + "multiplicity", + lv_multiplicity_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + break; + + } + + // InternalAlloyLanguage.g:731:3: ( (lv_type_3_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:732:1: (lv_type_3_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:732:1: (lv_type_3_0= ruleALSTerm ) + // InternalAlloyLanguage.g:733:3: lv_type_3_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFieldDeclarationAccess().getTypeALSTermParserRuleCall_3_0()); + + } + pushFollow(FOLLOW_2); + lv_type_3_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFieldDeclarationRule()); + } + set( + current, + "type", + lv_type_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSFieldDeclaration" + + + // $ANTLR start "entryRuleALSFunctionDefinition" + // InternalAlloyLanguage.g:759:1: entryRuleALSFunctionDefinition returns [EObject current=null] : iv_ruleALSFunctionDefinition= ruleALSFunctionDefinition EOF ; + public final EObject entryRuleALSFunctionDefinition() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSFunctionDefinition = null; + + + try { + // InternalAlloyLanguage.g:760:2: (iv_ruleALSFunctionDefinition= ruleALSFunctionDefinition EOF ) + // InternalAlloyLanguage.g:761:2: iv_ruleALSFunctionDefinition= ruleALSFunctionDefinition EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSFunctionDefinitionRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSFunctionDefinition=ruleALSFunctionDefinition(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSFunctionDefinition; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSFunctionDefinition" + + + // $ANTLR start "ruleALSFunctionDefinition" + // InternalAlloyLanguage.g:768:1: ruleALSFunctionDefinition returns [EObject current=null] : (otherlv_0= 'fun' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= ':' ( (lv_type_8_0= ruleALSTerm ) ) otherlv_9= '{' ( (lv_value_10_0= ruleALSTerm ) ) otherlv_11= '}' ) ; + public final EObject ruleALSFunctionDefinition() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + Token otherlv_6=null; + Token otherlv_7=null; + Token otherlv_9=null; + Token otherlv_11=null; + AntlrDatatypeRuleToken lv_name_1_0 = null; + + EObject lv_variables_3_0 = null; + + EObject lv_variables_5_0 = null; + + EObject lv_type_8_0 = null; + + EObject lv_value_10_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:771:28: ( (otherlv_0= 'fun' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= ':' ( (lv_type_8_0= ruleALSTerm ) ) otherlv_9= '{' ( (lv_value_10_0= ruleALSTerm ) ) otherlv_11= '}' ) ) + // InternalAlloyLanguage.g:772:1: (otherlv_0= 'fun' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= ':' ( (lv_type_8_0= ruleALSTerm ) ) otherlv_9= '{' ( (lv_value_10_0= ruleALSTerm ) ) otherlv_11= '}' ) + { + // InternalAlloyLanguage.g:772:1: (otherlv_0= 'fun' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= ':' ( (lv_type_8_0= ruleALSTerm ) ) otherlv_9= '{' ( (lv_value_10_0= ruleALSTerm ) ) otherlv_11= '}' ) + // InternalAlloyLanguage.g:772:3: otherlv_0= 'fun' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= ':' ( (lv_type_8_0= ruleALSTerm ) ) otherlv_9= '{' ( (lv_value_10_0= ruleALSTerm ) ) otherlv_11= '}' + { + otherlv_0=(Token)match(input,21,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getALSFunctionDefinitionAccess().getFunKeyword_0()); + + } + // InternalAlloyLanguage.g:776:1: ( (lv_name_1_0= ruleALSID ) ) + // InternalAlloyLanguage.g:777:1: (lv_name_1_0= ruleALSID ) + { + // InternalAlloyLanguage.g:777:1: (lv_name_1_0= ruleALSID ) + // InternalAlloyLanguage.g:778:3: lv_name_1_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getNameALSIDParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_13); + lv_name_1_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + set( + current, + "name", + lv_name_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_2=(Token)match(input,22,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSFunctionDefinitionAccess().getLeftSquareBracketKeyword_2()); + + } + // InternalAlloyLanguage.g:798:1: ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:799:1: (lv_variables_3_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:799:1: (lv_variables_3_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:800:3: lv_variables_3_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_3_0()); + + } + pushFollow(FOLLOW_14); + lv_variables_3_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + add( + current, + "variables", + lv_variables_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:816:2: (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* + loop11: + do { + int alt11=2; + int LA11_0 = input.LA(1); + + if ( (LA11_0==13) ) { + alt11=1; + } + + + switch (alt11) { + case 1 : + // InternalAlloyLanguage.g:816:4: otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) + { + otherlv_4=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getALSFunctionDefinitionAccess().getCommaKeyword_4_0()); + + } + // InternalAlloyLanguage.g:820:1: ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:821:1: (lv_variables_5_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:821:1: (lv_variables_5_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:822:3: lv_variables_5_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_4_1_0()); + + } + pushFollow(FOLLOW_14); + lv_variables_5_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + add( + current, + "variables", + lv_variables_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop11; + } + } while (true); + + otherlv_6=(Token)match(input,23,FOLLOW_11); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_6, grammarAccess.getALSFunctionDefinitionAccess().getRightSquareBracketKeyword_5()); + + } + otherlv_7=(Token)match(input,20,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getALSFunctionDefinitionAccess().getColonKeyword_6()); + + } + // InternalAlloyLanguage.g:846:1: ( (lv_type_8_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:847:1: (lv_type_8_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:847:1: (lv_type_8_0= ruleALSTerm ) + // InternalAlloyLanguage.g:848:3: lv_type_8_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getTypeALSTermParserRuleCall_7_0()); + + } + pushFollow(FOLLOW_5); + lv_type_8_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + set( + current, + "type", + lv_type_8_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_9=(Token)match(input,12,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_9, grammarAccess.getALSFunctionDefinitionAccess().getLeftCurlyBracketKeyword_8()); + + } + // InternalAlloyLanguage.g:868:1: ( (lv_value_10_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:869:1: (lv_value_10_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:869:1: (lv_value_10_0= ruleALSTerm ) + // InternalAlloyLanguage.g:870:3: lv_value_10_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFunctionDefinitionAccess().getValueALSTermParserRuleCall_9_0()); + + } + pushFollow(FOLLOW_15); + lv_value_10_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFunctionDefinitionRule()); + } + set( + current, + "value", + lv_value_10_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_11=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_11, grammarAccess.getALSFunctionDefinitionAccess().getRightCurlyBracketKeyword_10()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSFunctionDefinition" + + + // $ANTLR start "entryRuleALSRelationDefinition" + // InternalAlloyLanguage.g:898:1: entryRuleALSRelationDefinition returns [EObject current=null] : iv_ruleALSRelationDefinition= ruleALSRelationDefinition EOF ; + public final EObject entryRuleALSRelationDefinition() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSRelationDefinition = null; + + + try { + // InternalAlloyLanguage.g:899:2: (iv_ruleALSRelationDefinition= ruleALSRelationDefinition EOF ) + // InternalAlloyLanguage.g:900:2: iv_ruleALSRelationDefinition= ruleALSRelationDefinition EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSRelationDefinitionRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSRelationDefinition=ruleALSRelationDefinition(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSRelationDefinition; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSRelationDefinition" + + + // $ANTLR start "ruleALSRelationDefinition" + // InternalAlloyLanguage.g:907:1: ruleALSRelationDefinition returns [EObject current=null] : (otherlv_0= 'pred' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= '{' ( (lv_value_8_0= ruleALSTerm ) ) otherlv_9= '}' ) ; + public final EObject ruleALSRelationDefinition() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token otherlv_4=null; + Token otherlv_6=null; + Token otherlv_7=null; + Token otherlv_9=null; + AntlrDatatypeRuleToken lv_name_1_0 = null; + + EObject lv_variables_3_0 = null; + + EObject lv_variables_5_0 = null; + + EObject lv_value_8_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:910:28: ( (otherlv_0= 'pred' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= '{' ( (lv_value_8_0= ruleALSTerm ) ) otherlv_9= '}' ) ) + // InternalAlloyLanguage.g:911:1: (otherlv_0= 'pred' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= '{' ( (lv_value_8_0= ruleALSTerm ) ) otherlv_9= '}' ) + { + // InternalAlloyLanguage.g:911:1: (otherlv_0= 'pred' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= '{' ( (lv_value_8_0= ruleALSTerm ) ) otherlv_9= '}' ) + // InternalAlloyLanguage.g:911:3: otherlv_0= 'pred' ( (lv_name_1_0= ruleALSID ) ) otherlv_2= '[' ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= ']' otherlv_7= '{' ( (lv_value_8_0= ruleALSTerm ) ) otherlv_9= '}' + { + otherlv_0=(Token)match(input,24,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_0, grammarAccess.getALSRelationDefinitionAccess().getPredKeyword_0()); + + } + // InternalAlloyLanguage.g:915:1: ( (lv_name_1_0= ruleALSID ) ) + // InternalAlloyLanguage.g:916:1: (lv_name_1_0= ruleALSID ) + { + // InternalAlloyLanguage.g:916:1: (lv_name_1_0= ruleALSID ) + // InternalAlloyLanguage.g:917:3: lv_name_1_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getNameALSIDParserRuleCall_1_0()); + + } + pushFollow(FOLLOW_13); + lv_name_1_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + set( + current, + "name", + lv_name_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_2=(Token)match(input,22,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSRelationDefinitionAccess().getLeftSquareBracketKeyword_2()); + + } + // InternalAlloyLanguage.g:937:1: ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:938:1: (lv_variables_3_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:938:1: (lv_variables_3_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:939:3: lv_variables_3_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_3_0()); + + } + pushFollow(FOLLOW_14); + lv_variables_3_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + add( + current, + "variables", + lv_variables_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:955:2: (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* + loop12: + do { + int alt12=2; + int LA12_0 = input.LA(1); + + if ( (LA12_0==13) ) { + alt12=1; + } + + + switch (alt12) { + case 1 : + // InternalAlloyLanguage.g:955:4: otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) + { + otherlv_4=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getALSRelationDefinitionAccess().getCommaKeyword_4_0()); + + } + // InternalAlloyLanguage.g:959:1: ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:960:1: (lv_variables_5_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:960:1: (lv_variables_5_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:961:3: lv_variables_5_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getVariablesALSVariableDeclarationParserRuleCall_4_1_0()); + + } + pushFollow(FOLLOW_14); + lv_variables_5_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + add( + current, + "variables", + lv_variables_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop12; + } + } while (true); + + otherlv_6=(Token)match(input,23,FOLLOW_5); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_6, grammarAccess.getALSRelationDefinitionAccess().getRightSquareBracketKeyword_5()); + + } + otherlv_7=(Token)match(input,12,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getALSRelationDefinitionAccess().getLeftCurlyBracketKeyword_6()); + + } + // InternalAlloyLanguage.g:985:1: ( (lv_value_8_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:986:1: (lv_value_8_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:986:1: (lv_value_8_0= ruleALSTerm ) + // InternalAlloyLanguage.g:987:3: lv_value_8_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRelationDefinitionAccess().getValueALSTermParserRuleCall_7_0()); + + } + pushFollow(FOLLOW_15); + lv_value_8_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRelationDefinitionRule()); + } + set( + current, + "value", + lv_value_8_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_9=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_9, grammarAccess.getALSRelationDefinitionAccess().getRightCurlyBracketKeyword_8()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSRelationDefinition" + + + // $ANTLR start "entryRuleALSFactDeclaration" + // InternalAlloyLanguage.g:1015:1: entryRuleALSFactDeclaration returns [EObject current=null] : iv_ruleALSFactDeclaration= ruleALSFactDeclaration EOF ; + public final EObject entryRuleALSFactDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSFactDeclaration = null; + + + try { + // InternalAlloyLanguage.g:1016:2: (iv_ruleALSFactDeclaration= ruleALSFactDeclaration EOF ) + // InternalAlloyLanguage.g:1017:2: iv_ruleALSFactDeclaration= ruleALSFactDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSFactDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSFactDeclaration=ruleALSFactDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSFactDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSFactDeclaration" + + + // $ANTLR start "ruleALSFactDeclaration" + // InternalAlloyLanguage.g:1024:1: ruleALSFactDeclaration returns [EObject current=null] : ( () otherlv_1= 'fact' ( (lv_name_2_0= ruleALSID ) )? otherlv_3= '{' ( (lv_term_4_0= ruleALSTerm ) ) otherlv_5= '}' ) ; + public final EObject ruleALSFactDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + AntlrDatatypeRuleToken lv_name_2_0 = null; + + EObject lv_term_4_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1027:28: ( ( () otherlv_1= 'fact' ( (lv_name_2_0= ruleALSID ) )? otherlv_3= '{' ( (lv_term_4_0= ruleALSTerm ) ) otherlv_5= '}' ) ) + // InternalAlloyLanguage.g:1028:1: ( () otherlv_1= 'fact' ( (lv_name_2_0= ruleALSID ) )? otherlv_3= '{' ( (lv_term_4_0= ruleALSTerm ) ) otherlv_5= '}' ) + { + // InternalAlloyLanguage.g:1028:1: ( () otherlv_1= 'fact' ( (lv_name_2_0= ruleALSID ) )? otherlv_3= '{' ( (lv_term_4_0= ruleALSTerm ) ) otherlv_5= '}' ) + // InternalAlloyLanguage.g:1028:2: () otherlv_1= 'fact' ( (lv_name_2_0= ruleALSID ) )? otherlv_3= '{' ( (lv_term_4_0= ruleALSTerm ) ) otherlv_5= '}' + { + // InternalAlloyLanguage.g:1028:2: () + // InternalAlloyLanguage.g:1029:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSFactDeclarationAccess().getALSFactDeclarationAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,25,FOLLOW_16); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSFactDeclarationAccess().getFactKeyword_1()); + + } + // InternalAlloyLanguage.g:1038:1: ( (lv_name_2_0= ruleALSID ) )? + int alt13=2; + int LA13_0 = input.LA(1); + + if ( (LA13_0==RULE_ID) ) { + alt13=1; + } + switch (alt13) { + case 1 : + // InternalAlloyLanguage.g:1039:1: (lv_name_2_0= ruleALSID ) + { + // InternalAlloyLanguage.g:1039:1: (lv_name_2_0= ruleALSID ) + // InternalAlloyLanguage.g:1040:3: lv_name_2_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFactDeclarationAccess().getNameALSIDParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_5); + lv_name_2_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFactDeclarationRule()); + } + set( + current, + "name", + lv_name_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + break; + + } + + otherlv_3=(Token)match(input,12,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSFactDeclarationAccess().getLeftCurlyBracketKeyword_3()); + + } + // InternalAlloyLanguage.g:1060:1: ( (lv_term_4_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:1061:1: (lv_term_4_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:1061:1: (lv_term_4_0= ruleALSTerm ) + // InternalAlloyLanguage.g:1062:3: lv_term_4_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSFactDeclarationAccess().getTermALSTermParserRuleCall_4_0()); + + } + pushFollow(FOLLOW_15); + lv_term_4_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSFactDeclarationRule()); + } + set( + current, + "term", + lv_term_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_5=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getALSFactDeclarationAccess().getRightCurlyBracketKeyword_5()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSFactDeclaration" + + + // $ANTLR start "entryRuleALSTerm" + // InternalAlloyLanguage.g:1090:1: entryRuleALSTerm returns [EObject current=null] : iv_ruleALSTerm= ruleALSTerm EOF ; + public final EObject entryRuleALSTerm() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSTerm = null; + + + try { + // InternalAlloyLanguage.g:1091:2: (iv_ruleALSTerm= ruleALSTerm EOF ) + // InternalAlloyLanguage.g:1092:2: iv_ruleALSTerm= ruleALSTerm EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSTermRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSTerm=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSTerm; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSTerm" + + + // $ANTLR start "ruleALSTerm" + // InternalAlloyLanguage.g:1099:1: ruleALSTerm returns [EObject current=null] : this_ALSQuantified_0= ruleALSQuantified ; + public final EObject ruleALSTerm() throws RecognitionException { + EObject current = null; + + EObject this_ALSQuantified_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1102:28: (this_ALSQuantified_0= ruleALSQuantified ) + // InternalAlloyLanguage.g:1104:5: this_ALSQuantified_0= ruleALSQuantified + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSTermAccess().getALSQuantifiedParserRuleCall()); + + } + pushFollow(FOLLOW_2); + this_ALSQuantified_0=ruleALSQuantified(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSQuantified_0; + afterParserOrEnumRuleCall(); + + } + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSTerm" + + + // $ANTLR start "entryRuleALSQuantified" + // InternalAlloyLanguage.g:1120:1: entryRuleALSQuantified returns [EObject current=null] : iv_ruleALSQuantified= ruleALSQuantified EOF ; + public final EObject entryRuleALSQuantified() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSQuantified = null; + + + try { + // InternalAlloyLanguage.g:1121:2: (iv_ruleALSQuantified= ruleALSQuantified EOF ) + // InternalAlloyLanguage.g:1122:2: iv_ruleALSQuantified= ruleALSQuantified EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSQuantifiedRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSQuantified=ruleALSQuantified(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSQuantified; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSQuantified" + + + // $ANTLR start "ruleALSQuantified" + // InternalAlloyLanguage.g:1129:1: ruleALSQuantified returns [EObject current=null] : ( ( () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' ) | this_ALSOr_9= ruleALSOr ) ; + public final EObject ruleALSQuantified() throws RecognitionException { + EObject current = null; + + Token lv_disj_2_0=null; + Token otherlv_4=null; + Token otherlv_6=null; + Token otherlv_8=null; + Enumerator lv_type_1_0 = null; + + EObject lv_variables_3_0 = null; + + EObject lv_variables_5_0 = null; + + EObject lv_expression_7_0 = null; + + EObject this_ALSOr_9 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1132:28: ( ( ( () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' ) | this_ALSOr_9= ruleALSOr ) ) + // InternalAlloyLanguage.g:1133:1: ( ( () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' ) | this_ALSOr_9= ruleALSOr ) + { + // InternalAlloyLanguage.g:1133:1: ( ( () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' ) | this_ALSOr_9= ruleALSOr ) + int alt16=2; + int LA16_0 = input.LA(1); + + if ( ((LA16_0>=65 && LA16_0<=70)) ) { + alt16=1; + } + else if ( ((LA16_0>=RULE_ID && LA16_0<=RULE_INT)||LA16_0==46||(LA16_0>=49 && LA16_0<=60)||(LA16_0>=71 && LA16_0<=75)) ) { + alt16=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 16, 0, input); + + throw nvae; + } + switch (alt16) { + case 1 : + // InternalAlloyLanguage.g:1133:2: ( () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' ) + { + // InternalAlloyLanguage.g:1133:2: ( () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' ) + // InternalAlloyLanguage.g:1133:3: () ( (lv_type_1_0= ruleALSMultiplicity ) ) ( (lv_disj_2_0= 'disj' ) )? ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* otherlv_6= '{' ( (lv_expression_7_0= ruleALSTerm ) ) otherlv_8= '}' + { + // InternalAlloyLanguage.g:1133:3: () + // InternalAlloyLanguage.g:1134:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSQuantifiedAccess().getALSQuantifiedExAction_0_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:1139:2: ( (lv_type_1_0= ruleALSMultiplicity ) ) + // InternalAlloyLanguage.g:1140:1: (lv_type_1_0= ruleALSMultiplicity ) + { + // InternalAlloyLanguage.g:1140:1: (lv_type_1_0= ruleALSMultiplicity ) + // InternalAlloyLanguage.g:1141:3: lv_type_1_0= ruleALSMultiplicity + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getTypeALSMultiplicityEnumRuleCall_0_1_0()); + + } + pushFollow(FOLLOW_17); + lv_type_1_0=ruleALSMultiplicity(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + set( + current, + "type", + lv_type_1_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:1157:2: ( (lv_disj_2_0= 'disj' ) )? + int alt14=2; + int LA14_0 = input.LA(1); + + if ( (LA14_0==26) ) { + alt14=1; + } + switch (alt14) { + case 1 : + // InternalAlloyLanguage.g:1158:1: (lv_disj_2_0= 'disj' ) + { + // InternalAlloyLanguage.g:1158:1: (lv_disj_2_0= 'disj' ) + // InternalAlloyLanguage.g:1159:3: lv_disj_2_0= 'disj' + { + lv_disj_2_0=(Token)match(input,26,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_disj_2_0, grammarAccess.getALSQuantifiedAccess().getDisjDisjKeyword_0_2_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSQuantifiedRule()); + } + setWithLastConsumed(current, "disj", true, "disj"); + + } + + } + + + } + break; + + } + + // InternalAlloyLanguage.g:1172:3: ( (lv_variables_3_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:1173:1: (lv_variables_3_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:1173:1: (lv_variables_3_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:1174:3: lv_variables_3_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getVariablesALSVariableDeclarationParserRuleCall_0_3_0()); + + } + pushFollow(FOLLOW_18); + lv_variables_3_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + add( + current, + "variables", + lv_variables_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:1190:2: (otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) )* + loop15: + do { + int alt15=2; + int LA15_0 = input.LA(1); + + if ( (LA15_0==13) ) { + alt15=1; + } + + + switch (alt15) { + case 1 : + // InternalAlloyLanguage.g:1190:4: otherlv_4= ',' ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) + { + otherlv_4=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getALSQuantifiedAccess().getCommaKeyword_0_4_0()); + + } + // InternalAlloyLanguage.g:1194:1: ( (lv_variables_5_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:1195:1: (lv_variables_5_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:1195:1: (lv_variables_5_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:1196:3: lv_variables_5_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getVariablesALSVariableDeclarationParserRuleCall_0_4_1_0()); + + } + pushFollow(FOLLOW_18); + lv_variables_5_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + add( + current, + "variables", + lv_variables_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop15; + } + } while (true); + + otherlv_6=(Token)match(input,12,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_6, grammarAccess.getALSQuantifiedAccess().getLeftCurlyBracketKeyword_0_5()); + + } + // InternalAlloyLanguage.g:1216:1: ( (lv_expression_7_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:1217:1: (lv_expression_7_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:1217:1: (lv_expression_7_0= ruleALSTerm ) + // InternalAlloyLanguage.g:1218:3: lv_expression_7_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getExpressionALSTermParserRuleCall_0_6_0()); + + } + pushFollow(FOLLOW_15); + lv_expression_7_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSQuantifiedRule()); + } + set( + current, + "expression", + lv_expression_7_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_8=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_8, grammarAccess.getALSQuantifiedAccess().getRightCurlyBracketKeyword_0_7()); + + } + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:1240:5: this_ALSOr_9= ruleALSOr + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSQuantifiedAccess().getALSOrParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_ALSOr_9=ruleALSOr(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSOr_9; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSQuantified" + + + // $ANTLR start "entryRuleALSOr" + // InternalAlloyLanguage.g:1256:1: entryRuleALSOr returns [EObject current=null] : iv_ruleALSOr= ruleALSOr EOF ; + public final EObject entryRuleALSOr() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSOr = null; + + + try { + // InternalAlloyLanguage.g:1257:2: (iv_ruleALSOr= ruleALSOr EOF ) + // InternalAlloyLanguage.g:1258:2: iv_ruleALSOr= ruleALSOr EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSOrRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSOr=ruleALSOr(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSOr; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSOr" + + + // $ANTLR start "ruleALSOr" + // InternalAlloyLanguage.g:1265:1: ruleALSOr returns [EObject current=null] : (this_ALSIff_0= ruleALSIff ( () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) )? ) ; + public final EObject ruleALSOr() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + Token otherlv_3=null; + EObject this_ALSIff_0 = null; + + EObject lv_rightOperand_4_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1268:28: ( (this_ALSIff_0= ruleALSIff ( () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) )? ) ) + // InternalAlloyLanguage.g:1269:1: (this_ALSIff_0= ruleALSIff ( () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) )? ) + { + // InternalAlloyLanguage.g:1269:1: (this_ALSIff_0= ruleALSIff ( () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) )? ) + // InternalAlloyLanguage.g:1270:5: this_ALSIff_0= ruleALSIff ( () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSOrAccess().getALSIffParserRuleCall_0()); + + } + pushFollow(FOLLOW_19); + this_ALSIff_0=ruleALSIff(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSIff_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1278:1: ( () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) )? + int alt18=2; + int LA18_0 = input.LA(1); + + if ( ((LA18_0>=27 && LA18_0<=28)) ) { + alt18=1; + } + switch (alt18) { + case 1 : + // InternalAlloyLanguage.g:1278:2: () (otherlv_2= '||' | otherlv_3= 'or' ) ( (lv_rightOperand_4_0= ruleALSIff ) ) + { + // InternalAlloyLanguage.g:1278:2: () + // InternalAlloyLanguage.g:1279:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSOrAccess().getALSOrLeftOperandAction_1_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:1284:2: (otherlv_2= '||' | otherlv_3= 'or' ) + int alt17=2; + int LA17_0 = input.LA(1); + + if ( (LA17_0==27) ) { + alt17=1; + } + else if ( (LA17_0==28) ) { + alt17=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 17, 0, input); + + throw nvae; + } + switch (alt17) { + case 1 : + // InternalAlloyLanguage.g:1284:4: otherlv_2= '||' + { + otherlv_2=(Token)match(input,27,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSOrAccess().getVerticalLineVerticalLineKeyword_1_1_0()); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:1289:7: otherlv_3= 'or' + { + otherlv_3=(Token)match(input,28,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSOrAccess().getOrKeyword_1_1_1()); + + } + + } + break; + + } + + // InternalAlloyLanguage.g:1293:2: ( (lv_rightOperand_4_0= ruleALSIff ) ) + // InternalAlloyLanguage.g:1294:1: (lv_rightOperand_4_0= ruleALSIff ) + { + // InternalAlloyLanguage.g:1294:1: (lv_rightOperand_4_0= ruleALSIff ) + // InternalAlloyLanguage.g:1295:3: lv_rightOperand_4_0= ruleALSIff + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSOrAccess().getRightOperandALSIffParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_rightOperand_4_0=ruleALSIff(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSOrRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIff"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSOr" + + + // $ANTLR start "entryRuleALSIff" + // InternalAlloyLanguage.g:1319:1: entryRuleALSIff returns [EObject current=null] : iv_ruleALSIff= ruleALSIff EOF ; + public final EObject entryRuleALSIff() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSIff = null; + + + try { + // InternalAlloyLanguage.g:1320:2: (iv_ruleALSIff= ruleALSIff EOF ) + // InternalAlloyLanguage.g:1321:2: iv_ruleALSIff= ruleALSIff EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSIffRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSIff=ruleALSIff(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSIff; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSIff" + + + // $ANTLR start "ruleALSIff" + // InternalAlloyLanguage.g:1328:1: ruleALSIff returns [EObject current=null] : (this_ALSImpl_0= ruleALSImpl ( () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) )? ) ; + public final EObject ruleALSIff() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + Token otherlv_3=null; + EObject this_ALSImpl_0 = null; + + EObject lv_rightOperand_4_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1331:28: ( (this_ALSImpl_0= ruleALSImpl ( () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) )? ) ) + // InternalAlloyLanguage.g:1332:1: (this_ALSImpl_0= ruleALSImpl ( () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) )? ) + { + // InternalAlloyLanguage.g:1332:1: (this_ALSImpl_0= ruleALSImpl ( () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) )? ) + // InternalAlloyLanguage.g:1333:5: this_ALSImpl_0= ruleALSImpl ( () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSIffAccess().getALSImplParserRuleCall_0()); + + } + pushFollow(FOLLOW_20); + this_ALSImpl_0=ruleALSImpl(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSImpl_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1341:1: ( () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) )? + int alt20=2; + int LA20_0 = input.LA(1); + + if ( ((LA20_0>=29 && LA20_0<=30)) ) { + alt20=1; + } + switch (alt20) { + case 1 : + // InternalAlloyLanguage.g:1341:2: () (otherlv_2= '<=>' | otherlv_3= 'iff' ) ( (lv_rightOperand_4_0= ruleALSImpl ) ) + { + // InternalAlloyLanguage.g:1341:2: () + // InternalAlloyLanguage.g:1342:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSIffAccess().getALSIffLeftOperandAction_1_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:1347:2: (otherlv_2= '<=>' | otherlv_3= 'iff' ) + int alt19=2; + int LA19_0 = input.LA(1); + + if ( (LA19_0==29) ) { + alt19=1; + } + else if ( (LA19_0==30) ) { + alt19=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 19, 0, input); + + throw nvae; + } + switch (alt19) { + case 1 : + // InternalAlloyLanguage.g:1347:4: otherlv_2= '<=>' + { + otherlv_2=(Token)match(input,29,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSIffAccess().getLessThanSignEqualsSignGreaterThanSignKeyword_1_1_0()); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:1352:7: otherlv_3= 'iff' + { + otherlv_3=(Token)match(input,30,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSIffAccess().getIffKeyword_1_1_1()); + + } + + } + break; + + } + + // InternalAlloyLanguage.g:1356:2: ( (lv_rightOperand_4_0= ruleALSImpl ) ) + // InternalAlloyLanguage.g:1357:1: (lv_rightOperand_4_0= ruleALSImpl ) + { + // InternalAlloyLanguage.g:1357:1: (lv_rightOperand_4_0= ruleALSImpl ) + // InternalAlloyLanguage.g:1358:3: lv_rightOperand_4_0= ruleALSImpl + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSIffAccess().getRightOperandALSImplParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_rightOperand_4_0=ruleALSImpl(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSIffRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSImpl"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSIff" + + + // $ANTLR start "entryRuleALSImpl" + // InternalAlloyLanguage.g:1382:1: entryRuleALSImpl returns [EObject current=null] : iv_ruleALSImpl= ruleALSImpl EOF ; + public final EObject entryRuleALSImpl() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSImpl = null; + + + try { + // InternalAlloyLanguage.g:1383:2: (iv_ruleALSImpl= ruleALSImpl EOF ) + // InternalAlloyLanguage.g:1384:2: iv_ruleALSImpl= ruleALSImpl EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSImplRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSImpl=ruleALSImpl(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSImpl; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSImpl" + + + // $ANTLR start "ruleALSImpl" + // InternalAlloyLanguage.g:1391:1: ruleALSImpl returns [EObject current=null] : (this_ALSAnd_0= ruleALSAnd ( () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? )? ) ; + public final EObject ruleALSImpl() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + Token otherlv_3=null; + Token otherlv_5=null; + EObject this_ALSAnd_0 = null; + + EObject lv_rightOperand_4_0 = null; + + EObject lv_elseOperand_6_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1394:28: ( (this_ALSAnd_0= ruleALSAnd ( () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? )? ) ) + // InternalAlloyLanguage.g:1395:1: (this_ALSAnd_0= ruleALSAnd ( () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? )? ) + { + // InternalAlloyLanguage.g:1395:1: (this_ALSAnd_0= ruleALSAnd ( () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? )? ) + // InternalAlloyLanguage.g:1396:5: this_ALSAnd_0= ruleALSAnd ( () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSImplAccess().getALSAndParserRuleCall_0()); + + } + pushFollow(FOLLOW_21); + this_ALSAnd_0=ruleALSAnd(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSAnd_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1404:1: ( () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? )? + int alt23=2; + int LA23_0 = input.LA(1); + + if ( ((LA23_0>=31 && LA23_0<=32)) ) { + alt23=1; + } + switch (alt23) { + case 1 : + // InternalAlloyLanguage.g:1404:2: () (otherlv_2= '=>' | otherlv_3= 'implies' ) ( (lv_rightOperand_4_0= ruleALSAnd ) ) (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? + { + // InternalAlloyLanguage.g:1404:2: () + // InternalAlloyLanguage.g:1405:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSImplAccess().getALSImplLeftOperandAction_1_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:1410:2: (otherlv_2= '=>' | otherlv_3= 'implies' ) + int alt21=2; + int LA21_0 = input.LA(1); + + if ( (LA21_0==31) ) { + alt21=1; + } + else if ( (LA21_0==32) ) { + alt21=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 21, 0, input); + + throw nvae; + } + switch (alt21) { + case 1 : + // InternalAlloyLanguage.g:1410:4: otherlv_2= '=>' + { + otherlv_2=(Token)match(input,31,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSImplAccess().getEqualsSignGreaterThanSignKeyword_1_1_0()); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:1415:7: otherlv_3= 'implies' + { + otherlv_3=(Token)match(input,32,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSImplAccess().getImpliesKeyword_1_1_1()); + + } + + } + break; + + } + + // InternalAlloyLanguage.g:1419:2: ( (lv_rightOperand_4_0= ruleALSAnd ) ) + // InternalAlloyLanguage.g:1420:1: (lv_rightOperand_4_0= ruleALSAnd ) + { + // InternalAlloyLanguage.g:1420:1: (lv_rightOperand_4_0= ruleALSAnd ) + // InternalAlloyLanguage.g:1421:3: lv_rightOperand_4_0= ruleALSAnd + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSImplAccess().getRightOperandALSAndParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_22); + lv_rightOperand_4_0=ruleALSAnd(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSImplRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSAnd"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:1437:2: (otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) )? + int alt22=2; + int LA22_0 = input.LA(1); + + if ( (LA22_0==33) ) { + alt22=1; + } + switch (alt22) { + case 1 : + // InternalAlloyLanguage.g:1437:4: otherlv_5= 'else' ( (lv_elseOperand_6_0= ruleALSAnd ) ) + { + otherlv_5=(Token)match(input,33,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getALSImplAccess().getElseKeyword_1_3_0()); + + } + // InternalAlloyLanguage.g:1441:1: ( (lv_elseOperand_6_0= ruleALSAnd ) ) + // InternalAlloyLanguage.g:1442:1: (lv_elseOperand_6_0= ruleALSAnd ) + { + // InternalAlloyLanguage.g:1442:1: (lv_elseOperand_6_0= ruleALSAnd ) + // InternalAlloyLanguage.g:1443:3: lv_elseOperand_6_0= ruleALSAnd + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSImplAccess().getElseOperandALSAndParserRuleCall_1_3_1_0()); + + } + pushFollow(FOLLOW_2); + lv_elseOperand_6_0=ruleALSAnd(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSImplRule()); + } + set( + current, + "elseOperand", + lv_elseOperand_6_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSAnd"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSImpl" + + + // $ANTLR start "entryRuleALSAnd" + // InternalAlloyLanguage.g:1467:1: entryRuleALSAnd returns [EObject current=null] : iv_ruleALSAnd= ruleALSAnd EOF ; + public final EObject entryRuleALSAnd() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSAnd = null; + + + try { + // InternalAlloyLanguage.g:1468:2: (iv_ruleALSAnd= ruleALSAnd EOF ) + // InternalAlloyLanguage.g:1469:2: iv_ruleALSAnd= ruleALSAnd EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSAndRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSAnd=ruleALSAnd(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSAnd; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSAnd" + + + // $ANTLR start "ruleALSAnd" + // InternalAlloyLanguage.g:1476:1: ruleALSAnd returns [EObject current=null] : (this_ALSComparison_0= ruleALSComparison ( () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) )? ) ; + public final EObject ruleALSAnd() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + Token otherlv_3=null; + EObject this_ALSComparison_0 = null; + + EObject lv_rightOperand_4_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1479:28: ( (this_ALSComparison_0= ruleALSComparison ( () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) )? ) ) + // InternalAlloyLanguage.g:1480:1: (this_ALSComparison_0= ruleALSComparison ( () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) )? ) + { + // InternalAlloyLanguage.g:1480:1: (this_ALSComparison_0= ruleALSComparison ( () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) )? ) + // InternalAlloyLanguage.g:1481:5: this_ALSComparison_0= ruleALSComparison ( () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSAndAccess().getALSComparisonParserRuleCall_0()); + + } + pushFollow(FOLLOW_23); + this_ALSComparison_0=ruleALSComparison(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSComparison_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1489:1: ( () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) )? + int alt25=2; + int LA25_0 = input.LA(1); + + if ( ((LA25_0>=34 && LA25_0<=35)) ) { + alt25=1; + } + switch (alt25) { + case 1 : + // InternalAlloyLanguage.g:1489:2: () (otherlv_2= '&&' | otherlv_3= 'and' ) ( (lv_rightOperand_4_0= ruleALSComparison ) ) + { + // InternalAlloyLanguage.g:1489:2: () + // InternalAlloyLanguage.g:1490:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSAndAccess().getALSAndLeftOperandAction_1_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:1495:2: (otherlv_2= '&&' | otherlv_3= 'and' ) + int alt24=2; + int LA24_0 = input.LA(1); + + if ( (LA24_0==34) ) { + alt24=1; + } + else if ( (LA24_0==35) ) { + alt24=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 24, 0, input); + + throw nvae; + } + switch (alt24) { + case 1 : + // InternalAlloyLanguage.g:1495:4: otherlv_2= '&&' + { + otherlv_2=(Token)match(input,34,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSAndAccess().getAmpersandAmpersandKeyword_1_1_0()); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:1500:7: otherlv_3= 'and' + { + otherlv_3=(Token)match(input,35,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSAndAccess().getAndKeyword_1_1_1()); + + } + + } + break; + + } + + // InternalAlloyLanguage.g:1504:2: ( (lv_rightOperand_4_0= ruleALSComparison ) ) + // InternalAlloyLanguage.g:1505:1: (lv_rightOperand_4_0= ruleALSComparison ) + { + // InternalAlloyLanguage.g:1505:1: (lv_rightOperand_4_0= ruleALSComparison ) + // InternalAlloyLanguage.g:1506:3: lv_rightOperand_4_0= ruleALSComparison + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSAndAccess().getRightOperandALSComparisonParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_rightOperand_4_0=ruleALSComparison(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSAndRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSComparison"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSAnd" + + + // $ANTLR start "entryRuleALSComparison" + // InternalAlloyLanguage.g:1530:1: entryRuleALSComparison returns [EObject current=null] : iv_ruleALSComparison= ruleALSComparison EOF ; + public final EObject entryRuleALSComparison() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSComparison = null; + + + try { + // InternalAlloyLanguage.g:1531:2: (iv_ruleALSComparison= ruleALSComparison EOF ) + // InternalAlloyLanguage.g:1532:2: iv_ruleALSComparison= ruleALSComparison EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSComparisonRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSComparison=ruleALSComparison(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSComparison; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSComparison" + + + // $ANTLR start "ruleALSComparison" + // InternalAlloyLanguage.g:1539:1: ruleALSComparison returns [EObject current=null] : (this_ALSOverride_0= ruleALSOverride ( ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) )? ) ; + public final EObject ruleALSComparison() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + Token otherlv_4=null; + Token otherlv_6=null; + Token otherlv_8=null; + Token otherlv_10=null; + Token otherlv_12=null; + Token otherlv_14=null; + EObject this_ALSOverride_0 = null; + + EObject lv_rightOperand_15_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1542:28: ( (this_ALSOverride_0= ruleALSOverride ( ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) )? ) ) + // InternalAlloyLanguage.g:1543:1: (this_ALSOverride_0= ruleALSOverride ( ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) )? ) + { + // InternalAlloyLanguage.g:1543:1: (this_ALSOverride_0= ruleALSOverride ( ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) )? ) + // InternalAlloyLanguage.g:1544:5: this_ALSOverride_0= ruleALSOverride ( ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSComparisonAccess().getALSOverrideParserRuleCall_0()); + + } + pushFollow(FOLLOW_24); + this_ALSOverride_0=ruleALSOverride(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSOverride_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1552:1: ( ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) )? + int alt27=2; + int LA27_0 = input.LA(1); + + if ( (LA27_0==18||(LA27_0>=36 && LA27_0<=41)) ) { + alt27=1; + } + switch (alt27) { + case 1 : + // InternalAlloyLanguage.g:1552:2: ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) ( (lv_rightOperand_15_0= ruleALSOverride ) ) + { + // InternalAlloyLanguage.g:1552:2: ( ( () otherlv_2= '=' ) | ( () otherlv_4= '!=' ) | ( () otherlv_6= 'in' ) | ( () otherlv_8= '>' ) | ( () otherlv_10= '>=' ) | ( () otherlv_12= '<' ) | ( () otherlv_14= '<=' ) ) + int alt26=7; + switch ( input.LA(1) ) { + case 36: + { + alt26=1; + } + break; + case 37: + { + alt26=2; + } + break; + case 18: + { + alt26=3; + } + break; + case 38: + { + alt26=4; + } + break; + case 39: + { + alt26=5; + } + break; + case 40: + { + alt26=6; + } + break; + case 41: + { + alt26=7; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 26, 0, input); + + throw nvae; + } + + switch (alt26) { + case 1 : + // InternalAlloyLanguage.g:1552:3: ( () otherlv_2= '=' ) + { + // InternalAlloyLanguage.g:1552:3: ( () otherlv_2= '=' ) + // InternalAlloyLanguage.g:1552:4: () otherlv_2= '=' + { + // InternalAlloyLanguage.g:1552:4: () + // InternalAlloyLanguage.g:1553:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSEqualsLeftOperandAction_1_0_0_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,36,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSComparisonAccess().getEqualsSignKeyword_1_0_0_1()); + + } + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:1563:6: ( () otherlv_4= '!=' ) + { + // InternalAlloyLanguage.g:1563:6: ( () otherlv_4= '!=' ) + // InternalAlloyLanguage.g:1563:7: () otherlv_4= '!=' + { + // InternalAlloyLanguage.g:1563:7: () + // InternalAlloyLanguage.g:1564:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSNotEqualsLeftOperandAction_1_0_1_0(), + current); + + } + + } + + otherlv_4=(Token)match(input,37,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getALSComparisonAccess().getExclamationMarkEqualsSignKeyword_1_0_1_1()); + + } + + } + + + } + break; + case 3 : + // InternalAlloyLanguage.g:1574:6: ( () otherlv_6= 'in' ) + { + // InternalAlloyLanguage.g:1574:6: ( () otherlv_6= 'in' ) + // InternalAlloyLanguage.g:1574:7: () otherlv_6= 'in' + { + // InternalAlloyLanguage.g:1574:7: () + // InternalAlloyLanguage.g:1575:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSSubsetLeftOperandAction_1_0_2_0(), + current); + + } + + } + + otherlv_6=(Token)match(input,18,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_6, grammarAccess.getALSComparisonAccess().getInKeyword_1_0_2_1()); + + } + + } + + + } + break; + case 4 : + // InternalAlloyLanguage.g:1585:6: ( () otherlv_8= '>' ) + { + // InternalAlloyLanguage.g:1585:6: ( () otherlv_8= '>' ) + // InternalAlloyLanguage.g:1585:7: () otherlv_8= '>' + { + // InternalAlloyLanguage.g:1585:7: () + // InternalAlloyLanguage.g:1586:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSLessLeftOperandAction_1_0_3_0(), + current); + + } + + } + + otherlv_8=(Token)match(input,38,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_8, grammarAccess.getALSComparisonAccess().getGreaterThanSignKeyword_1_0_3_1()); + + } + + } + + + } + break; + case 5 : + // InternalAlloyLanguage.g:1596:6: ( () otherlv_10= '>=' ) + { + // InternalAlloyLanguage.g:1596:6: ( () otherlv_10= '>=' ) + // InternalAlloyLanguage.g:1596:7: () otherlv_10= '>=' + { + // InternalAlloyLanguage.g:1596:7: () + // InternalAlloyLanguage.g:1597:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSLeqLeftOperandAction_1_0_4_0(), + current); + + } + + } + + otherlv_10=(Token)match(input,39,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_10, grammarAccess.getALSComparisonAccess().getGreaterThanSignEqualsSignKeyword_1_0_4_1()); + + } + + } + + + } + break; + case 6 : + // InternalAlloyLanguage.g:1607:6: ( () otherlv_12= '<' ) + { + // InternalAlloyLanguage.g:1607:6: ( () otherlv_12= '<' ) + // InternalAlloyLanguage.g:1607:7: () otherlv_12= '<' + { + // InternalAlloyLanguage.g:1607:7: () + // InternalAlloyLanguage.g:1608:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSMoreLeftOperandAction_1_0_5_0(), + current); + + } + + } + + otherlv_12=(Token)match(input,40,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_12, grammarAccess.getALSComparisonAccess().getLessThanSignKeyword_1_0_5_1()); + + } + + } + + + } + break; + case 7 : + // InternalAlloyLanguage.g:1618:6: ( () otherlv_14= '<=' ) + { + // InternalAlloyLanguage.g:1618:6: ( () otherlv_14= '<=' ) + // InternalAlloyLanguage.g:1618:7: () otherlv_14= '<=' + { + // InternalAlloyLanguage.g:1618:7: () + // InternalAlloyLanguage.g:1619:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSComparisonAccess().getALSMeqLeftOperandAction_1_0_6_0(), + current); + + } + + } + + otherlv_14=(Token)match(input,41,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_14, grammarAccess.getALSComparisonAccess().getLessThanSignEqualsSignKeyword_1_0_6_1()); + + } + + } + + + } + break; + + } + + // InternalAlloyLanguage.g:1628:3: ( (lv_rightOperand_15_0= ruleALSOverride ) ) + // InternalAlloyLanguage.g:1629:1: (lv_rightOperand_15_0= ruleALSOverride ) + { + // InternalAlloyLanguage.g:1629:1: (lv_rightOperand_15_0= ruleALSOverride ) + // InternalAlloyLanguage.g:1630:3: lv_rightOperand_15_0= ruleALSOverride + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0()); + + } + pushFollow(FOLLOW_2); + lv_rightOperand_15_0=ruleALSOverride(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSComparisonRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_15_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSOverride"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSComparison" + + + // $ANTLR start "entryRuleALSOverride" + // InternalAlloyLanguage.g:1654:1: entryRuleALSOverride returns [EObject current=null] : iv_ruleALSOverride= ruleALSOverride EOF ; + public final EObject entryRuleALSOverride() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSOverride = null; + + + try { + // InternalAlloyLanguage.g:1655:2: (iv_ruleALSOverride= ruleALSOverride EOF ) + // InternalAlloyLanguage.g:1656:2: iv_ruleALSOverride= ruleALSOverride EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSOverrideRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSOverride=ruleALSOverride(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSOverride; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSOverride" + + + // $ANTLR start "ruleALSOverride" + // InternalAlloyLanguage.g:1663:1: ruleALSOverride returns [EObject current=null] : (this_ALSRangeRestrictionRight_0= ruleALSRangeRestrictionRight ( () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) )? ) ; + public final EObject ruleALSOverride() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSRangeRestrictionRight_0 = null; + + EObject lv_rightOperand_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1666:28: ( (this_ALSRangeRestrictionRight_0= ruleALSRangeRestrictionRight ( () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) )? ) ) + // InternalAlloyLanguage.g:1667:1: (this_ALSRangeRestrictionRight_0= ruleALSRangeRestrictionRight ( () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) )? ) + { + // InternalAlloyLanguage.g:1667:1: (this_ALSRangeRestrictionRight_0= ruleALSRangeRestrictionRight ( () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) )? ) + // InternalAlloyLanguage.g:1668:5: this_ALSRangeRestrictionRight_0= ruleALSRangeRestrictionRight ( () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSOverrideAccess().getALSRangeRestrictionRightParserRuleCall_0()); + + } + pushFollow(FOLLOW_25); + this_ALSRangeRestrictionRight_0=ruleALSRangeRestrictionRight(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSRangeRestrictionRight_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1676:1: ( () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) )? + int alt28=2; + int LA28_0 = input.LA(1); + + if ( (LA28_0==42) ) { + alt28=1; + } + switch (alt28) { + case 1 : + // InternalAlloyLanguage.g:1676:2: () otherlv_2= '++' ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) + { + // InternalAlloyLanguage.g:1676:2: () + // InternalAlloyLanguage.g:1677:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSOverrideAccess().getALSOverrideLeftOperandAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,42,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSOverrideAccess().getPlusSignPlusSignKeyword_1_1()); + + } + // InternalAlloyLanguage.g:1686:1: ( (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) ) + // InternalAlloyLanguage.g:1687:1: (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) + { + // InternalAlloyLanguage.g:1687:1: (lv_rightOperand_3_0= ruleALSRangeRestrictionRight ) + // InternalAlloyLanguage.g:1688:3: lv_rightOperand_3_0= ruleALSRangeRestrictionRight + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSOverrideAccess().getRightOperandALSRangeRestrictionRightParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_rightOperand_3_0=ruleALSRangeRestrictionRight(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSOverrideRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRangeRestrictionRight"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSOverride" + + + // $ANTLR start "entryRuleALSRangeRestrictionRight" + // InternalAlloyLanguage.g:1712:1: entryRuleALSRangeRestrictionRight returns [EObject current=null] : iv_ruleALSRangeRestrictionRight= ruleALSRangeRestrictionRight EOF ; + public final EObject entryRuleALSRangeRestrictionRight() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSRangeRestrictionRight = null; + + + try { + // InternalAlloyLanguage.g:1713:2: (iv_ruleALSRangeRestrictionRight= ruleALSRangeRestrictionRight EOF ) + // InternalAlloyLanguage.g:1714:2: iv_ruleALSRangeRestrictionRight= ruleALSRangeRestrictionRight EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSRangeRestrictionRightRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSRangeRestrictionRight=ruleALSRangeRestrictionRight(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSRangeRestrictionRight; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSRangeRestrictionRight" + + + // $ANTLR start "ruleALSRangeRestrictionRight" + // InternalAlloyLanguage.g:1721:1: ruleALSRangeRestrictionRight returns [EObject current=null] : (this_ALSRangeRestrictionLeft_0= ruleALSRangeRestrictionLeft ( () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) )? ) ; + public final EObject ruleALSRangeRestrictionRight() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSRangeRestrictionLeft_0 = null; + + EObject lv_filter_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1724:28: ( (this_ALSRangeRestrictionLeft_0= ruleALSRangeRestrictionLeft ( () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) )? ) ) + // InternalAlloyLanguage.g:1725:1: (this_ALSRangeRestrictionLeft_0= ruleALSRangeRestrictionLeft ( () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) )? ) + { + // InternalAlloyLanguage.g:1725:1: (this_ALSRangeRestrictionLeft_0= ruleALSRangeRestrictionLeft ( () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) )? ) + // InternalAlloyLanguage.g:1726:5: this_ALSRangeRestrictionLeft_0= ruleALSRangeRestrictionLeft ( () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRangeRestrictionRightAccess().getALSRangeRestrictionLeftParserRuleCall_0()); + + } + pushFollow(FOLLOW_26); + this_ALSRangeRestrictionLeft_0=ruleALSRangeRestrictionLeft(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSRangeRestrictionLeft_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1734:1: ( () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) )? + int alt29=2; + int LA29_0 = input.LA(1); + + if ( (LA29_0==43) ) { + alt29=1; + } + switch (alt29) { + case 1 : + // InternalAlloyLanguage.g:1734:2: () otherlv_2= ':>' ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) + { + // InternalAlloyLanguage.g:1734:2: () + // InternalAlloyLanguage.g:1735:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSRangeRestrictionRightAccess().getALSRangeRestrictionRightRelationAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,43,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSRangeRestrictionRightAccess().getColonGreaterThanSignKeyword_1_1()); + + } + // InternalAlloyLanguage.g:1744:1: ( (lv_filter_3_0= ruleALSRangeRestrictionLeft ) ) + // InternalAlloyLanguage.g:1745:1: (lv_filter_3_0= ruleALSRangeRestrictionLeft ) + { + // InternalAlloyLanguage.g:1745:1: (lv_filter_3_0= ruleALSRangeRestrictionLeft ) + // InternalAlloyLanguage.g:1746:3: lv_filter_3_0= ruleALSRangeRestrictionLeft + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRangeRestrictionRightAccess().getFilterALSRangeRestrictionLeftParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_filter_3_0=ruleALSRangeRestrictionLeft(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRangeRestrictionRightRule()); + } + set( + current, + "filter", + lv_filter_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRangeRestrictionLeft"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSRangeRestrictionRight" + + + // $ANTLR start "entryRuleALSRangeRestrictionLeft" + // InternalAlloyLanguage.g:1770:1: entryRuleALSRangeRestrictionLeft returns [EObject current=null] : iv_ruleALSRangeRestrictionLeft= ruleALSRangeRestrictionLeft EOF ; + public final EObject entryRuleALSRangeRestrictionLeft() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSRangeRestrictionLeft = null; + + + try { + // InternalAlloyLanguage.g:1771:2: (iv_ruleALSRangeRestrictionLeft= ruleALSRangeRestrictionLeft EOF ) + // InternalAlloyLanguage.g:1772:2: iv_ruleALSRangeRestrictionLeft= ruleALSRangeRestrictionLeft EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSRangeRestrictionLeftRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSRangeRestrictionLeft=ruleALSRangeRestrictionLeft(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSRangeRestrictionLeft; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSRangeRestrictionLeft" + + + // $ANTLR start "ruleALSRangeRestrictionLeft" + // InternalAlloyLanguage.g:1779:1: ruleALSRangeRestrictionLeft returns [EObject current=null] : (this_ALSJoin_0= ruleALSJoin ( () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) )? ) ; + public final EObject ruleALSRangeRestrictionLeft() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSJoin_0 = null; + + EObject lv_relation_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1782:28: ( (this_ALSJoin_0= ruleALSJoin ( () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) )? ) ) + // InternalAlloyLanguage.g:1783:1: (this_ALSJoin_0= ruleALSJoin ( () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) )? ) + { + // InternalAlloyLanguage.g:1783:1: (this_ALSJoin_0= ruleALSJoin ( () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) )? ) + // InternalAlloyLanguage.g:1784:5: this_ALSJoin_0= ruleALSJoin ( () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRangeRestrictionLeftAccess().getALSJoinParserRuleCall_0()); + + } + pushFollow(FOLLOW_27); + this_ALSJoin_0=ruleALSJoin(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSJoin_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1792:1: ( () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) )? + int alt30=2; + int LA30_0 = input.LA(1); + + if ( (LA30_0==44) ) { + alt30=1; + } + switch (alt30) { + case 1 : + // InternalAlloyLanguage.g:1792:2: () otherlv_2= '<:' ( (lv_relation_3_0= ruleALSJoin ) ) + { + // InternalAlloyLanguage.g:1792:2: () + // InternalAlloyLanguage.g:1793:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSRangeRestrictionLeftAccess().getALSRangeRestrictionLeftFilterAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,44,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSRangeRestrictionLeftAccess().getLessThanSignColonKeyword_1_1()); + + } + // InternalAlloyLanguage.g:1802:1: ( (lv_relation_3_0= ruleALSJoin ) ) + // InternalAlloyLanguage.g:1803:1: (lv_relation_3_0= ruleALSJoin ) + { + // InternalAlloyLanguage.g:1803:1: (lv_relation_3_0= ruleALSJoin ) + // InternalAlloyLanguage.g:1804:3: lv_relation_3_0= ruleALSJoin + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRangeRestrictionLeftAccess().getRelationALSJoinParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_relation_3_0=ruleALSJoin(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRangeRestrictionLeftRule()); + } + set( + current, + "relation", + lv_relation_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSJoin"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSRangeRestrictionLeft" + + + // $ANTLR start "entryRuleALSJoin" + // InternalAlloyLanguage.g:1828:1: entryRuleALSJoin returns [EObject current=null] : iv_ruleALSJoin= ruleALSJoin EOF ; + public final EObject entryRuleALSJoin() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSJoin = null; + + + try { + // InternalAlloyLanguage.g:1829:2: (iv_ruleALSJoin= ruleALSJoin EOF ) + // InternalAlloyLanguage.g:1830:2: iv_ruleALSJoin= ruleALSJoin EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSJoinRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSJoin=ruleALSJoin(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSJoin; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSJoin" + + + // $ANTLR start "ruleALSJoin" + // InternalAlloyLanguage.g:1837:1: ruleALSJoin returns [EObject current=null] : (this_ALSMinus_0= ruleALSMinus ( () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) )* ) ; + public final EObject ruleALSJoin() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSMinus_0 = null; + + EObject lv_rightOperand_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1840:28: ( (this_ALSMinus_0= ruleALSMinus ( () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) )* ) ) + // InternalAlloyLanguage.g:1841:1: (this_ALSMinus_0= ruleALSMinus ( () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) )* ) + { + // InternalAlloyLanguage.g:1841:1: (this_ALSMinus_0= ruleALSMinus ( () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) )* ) + // InternalAlloyLanguage.g:1842:5: this_ALSMinus_0= ruleALSMinus ( () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) )* + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSJoinAccess().getALSMinusParserRuleCall_0()); + + } + pushFollow(FOLLOW_28); + this_ALSMinus_0=ruleALSMinus(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSMinus_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1850:1: ( () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) )* + loop31: + do { + int alt31=2; + int LA31_0 = input.LA(1); + + if ( (LA31_0==45) ) { + alt31=1; + } + + + switch (alt31) { + case 1 : + // InternalAlloyLanguage.g:1850:2: () otherlv_2= '.' ( (lv_rightOperand_3_0= ruleALSMinus ) ) + { + // InternalAlloyLanguage.g:1850:2: () + // InternalAlloyLanguage.g:1851:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSJoinAccess().getALSJoinLeftOperandAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,45,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSJoinAccess().getFullStopKeyword_1_1()); + + } + // InternalAlloyLanguage.g:1860:1: ( (lv_rightOperand_3_0= ruleALSMinus ) ) + // InternalAlloyLanguage.g:1861:1: (lv_rightOperand_3_0= ruleALSMinus ) + { + // InternalAlloyLanguage.g:1861:1: (lv_rightOperand_3_0= ruleALSMinus ) + // InternalAlloyLanguage.g:1862:3: lv_rightOperand_3_0= ruleALSMinus + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSJoinAccess().getRightOperandALSMinusParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_28); + lv_rightOperand_3_0=ruleALSMinus(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSJoinRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMinus"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop31; + } + } while (true); + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSJoin" + + + // $ANTLR start "entryRuleALSMinus" + // InternalAlloyLanguage.g:1886:1: entryRuleALSMinus returns [EObject current=null] : iv_ruleALSMinus= ruleALSMinus EOF ; + public final EObject entryRuleALSMinus() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSMinus = null; + + + try { + // InternalAlloyLanguage.g:1887:2: (iv_ruleALSMinus= ruleALSMinus EOF ) + // InternalAlloyLanguage.g:1888:2: iv_ruleALSMinus= ruleALSMinus EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSMinusRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSMinus=ruleALSMinus(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSMinus; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSMinus" + + + // $ANTLR start "ruleALSMinus" + // InternalAlloyLanguage.g:1895:1: ruleALSMinus returns [EObject current=null] : (this_ALSPlus_0= ruleALSPlus ( () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) )* ) ; + public final EObject ruleALSMinus() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSPlus_0 = null; + + EObject lv_rightOperand_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1898:28: ( (this_ALSPlus_0= ruleALSPlus ( () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) )* ) ) + // InternalAlloyLanguage.g:1899:1: (this_ALSPlus_0= ruleALSPlus ( () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) )* ) + { + // InternalAlloyLanguage.g:1899:1: (this_ALSPlus_0= ruleALSPlus ( () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) )* ) + // InternalAlloyLanguage.g:1900:5: this_ALSPlus_0= ruleALSPlus ( () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) )* + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSMinusAccess().getALSPlusParserRuleCall_0()); + + } + pushFollow(FOLLOW_29); + this_ALSPlus_0=ruleALSPlus(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSPlus_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1908:1: ( () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) )* + loop32: + do { + int alt32=2; + int LA32_0 = input.LA(1); + + if ( (LA32_0==46) ) { + alt32=1; + } + + + switch (alt32) { + case 1 : + // InternalAlloyLanguage.g:1908:2: () otherlv_2= '-' ( (lv_rightOperand_3_0= ruleALSPlus ) ) + { + // InternalAlloyLanguage.g:1908:2: () + // InternalAlloyLanguage.g:1909:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSMinusAccess().getALSMinusLeftOperandAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,46,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSMinusAccess().getHyphenMinusKeyword_1_1()); + + } + // InternalAlloyLanguage.g:1918:1: ( (lv_rightOperand_3_0= ruleALSPlus ) ) + // InternalAlloyLanguage.g:1919:1: (lv_rightOperand_3_0= ruleALSPlus ) + { + // InternalAlloyLanguage.g:1919:1: (lv_rightOperand_3_0= ruleALSPlus ) + // InternalAlloyLanguage.g:1920:3: lv_rightOperand_3_0= ruleALSPlus + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSMinusAccess().getRightOperandALSPlusParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_29); + lv_rightOperand_3_0=ruleALSPlus(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSMinusRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSPlus"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop32; + } + } while (true); + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSMinus" + + + // $ANTLR start "entryRuleALSPlus" + // InternalAlloyLanguage.g:1944:1: entryRuleALSPlus returns [EObject current=null] : iv_ruleALSPlus= ruleALSPlus EOF ; + public final EObject entryRuleALSPlus() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSPlus = null; + + + try { + // InternalAlloyLanguage.g:1945:2: (iv_ruleALSPlus= ruleALSPlus EOF ) + // InternalAlloyLanguage.g:1946:2: iv_ruleALSPlus= ruleALSPlus EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSPlusRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSPlus=ruleALSPlus(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSPlus; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSPlus" + + + // $ANTLR start "ruleALSPlus" + // InternalAlloyLanguage.g:1953:1: ruleALSPlus returns [EObject current=null] : (this_ALSIntersection_0= ruleALSIntersection ( () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) )* ) ; + public final EObject ruleALSPlus() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSIntersection_0 = null; + + EObject lv_rightOperand_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:1956:28: ( (this_ALSIntersection_0= ruleALSIntersection ( () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) )* ) ) + // InternalAlloyLanguage.g:1957:1: (this_ALSIntersection_0= ruleALSIntersection ( () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) )* ) + { + // InternalAlloyLanguage.g:1957:1: (this_ALSIntersection_0= ruleALSIntersection ( () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) )* ) + // InternalAlloyLanguage.g:1958:5: this_ALSIntersection_0= ruleALSIntersection ( () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) )* + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPlusAccess().getALSIntersectionParserRuleCall_0()); + + } + pushFollow(FOLLOW_30); + this_ALSIntersection_0=ruleALSIntersection(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSIntersection_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:1966:1: ( () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) )* + loop33: + do { + int alt33=2; + int LA33_0 = input.LA(1); + + if ( (LA33_0==19) ) { + alt33=1; + } + + + switch (alt33) { + case 1 : + // InternalAlloyLanguage.g:1966:2: () otherlv_2= '+' ( (lv_rightOperand_3_0= ruleALSIntersection ) ) + { + // InternalAlloyLanguage.g:1966:2: () + // InternalAlloyLanguage.g:1967:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSPlusAccess().getALSPlusLeftOperandAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,19,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSPlusAccess().getPlusSignKeyword_1_1()); + + } + // InternalAlloyLanguage.g:1976:1: ( (lv_rightOperand_3_0= ruleALSIntersection ) ) + // InternalAlloyLanguage.g:1977:1: (lv_rightOperand_3_0= ruleALSIntersection ) + { + // InternalAlloyLanguage.g:1977:1: (lv_rightOperand_3_0= ruleALSIntersection ) + // InternalAlloyLanguage.g:1978:3: lv_rightOperand_3_0= ruleALSIntersection + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPlusAccess().getRightOperandALSIntersectionParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_30); + lv_rightOperand_3_0=ruleALSIntersection(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPlusRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIntersection"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop33; + } + } while (true); + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSPlus" + + + // $ANTLR start "entryRuleALSIntersection" + // InternalAlloyLanguage.g:2002:1: entryRuleALSIntersection returns [EObject current=null] : iv_ruleALSIntersection= ruleALSIntersection EOF ; + public final EObject entryRuleALSIntersection() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSIntersection = null; + + + try { + // InternalAlloyLanguage.g:2003:2: (iv_ruleALSIntersection= ruleALSIntersection EOF ) + // InternalAlloyLanguage.g:2004:2: iv_ruleALSIntersection= ruleALSIntersection EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSIntersectionRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSIntersection=ruleALSIntersection(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSIntersection; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSIntersection" + + + // $ANTLR start "ruleALSIntersection" + // InternalAlloyLanguage.g:2011:1: ruleALSIntersection returns [EObject current=null] : (this_ALSDirectProduct_0= ruleALSDirectProduct ( () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) )* ) ; + public final EObject ruleALSIntersection() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + EObject this_ALSDirectProduct_0 = null; + + EObject lv_rightOperand_3_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2014:28: ( (this_ALSDirectProduct_0= ruleALSDirectProduct ( () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) )* ) ) + // InternalAlloyLanguage.g:2015:1: (this_ALSDirectProduct_0= ruleALSDirectProduct ( () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) )* ) + { + // InternalAlloyLanguage.g:2015:1: (this_ALSDirectProduct_0= ruleALSDirectProduct ( () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) )* ) + // InternalAlloyLanguage.g:2016:5: this_ALSDirectProduct_0= ruleALSDirectProduct ( () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) )* + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSIntersectionAccess().getALSDirectProductParserRuleCall_0()); + + } + pushFollow(FOLLOW_31); + this_ALSDirectProduct_0=ruleALSDirectProduct(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSDirectProduct_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:2024:1: ( () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) )* + loop34: + do { + int alt34=2; + int LA34_0 = input.LA(1); + + if ( (LA34_0==47) ) { + alt34=1; + } + + + switch (alt34) { + case 1 : + // InternalAlloyLanguage.g:2024:2: () otherlv_2= '&' ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) + { + // InternalAlloyLanguage.g:2024:2: () + // InternalAlloyLanguage.g:2025:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSIntersectionAccess().getALSIntersectionLeftOperandAction_1_0(), + current); + + } + + } + + otherlv_2=(Token)match(input,47,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSIntersectionAccess().getAmpersandKeyword_1_1()); + + } + // InternalAlloyLanguage.g:2034:1: ( (lv_rightOperand_3_0= ruleALSDirectProduct ) ) + // InternalAlloyLanguage.g:2035:1: (lv_rightOperand_3_0= ruleALSDirectProduct ) + { + // InternalAlloyLanguage.g:2035:1: (lv_rightOperand_3_0= ruleALSDirectProduct ) + // InternalAlloyLanguage.g:2036:3: lv_rightOperand_3_0= ruleALSDirectProduct + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSIntersectionAccess().getRightOperandALSDirectProductParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_31); + lv_rightOperand_3_0=ruleALSDirectProduct(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSIntersectionRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSDirectProduct"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop34; + } + } while (true); + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSIntersection" + + + // $ANTLR start "entryRuleALSDirectProduct" + // InternalAlloyLanguage.g:2060:1: entryRuleALSDirectProduct returns [EObject current=null] : iv_ruleALSDirectProduct= ruleALSDirectProduct EOF ; + public final EObject entryRuleALSDirectProduct() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSDirectProduct = null; + + + try { + // InternalAlloyLanguage.g:2061:2: (iv_ruleALSDirectProduct= ruleALSDirectProduct EOF ) + // InternalAlloyLanguage.g:2062:2: iv_ruleALSDirectProduct= ruleALSDirectProduct EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSDirectProductRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSDirectProduct=ruleALSDirectProduct(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSDirectProduct; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSDirectProduct" + + + // $ANTLR start "ruleALSDirectProduct" + // InternalAlloyLanguage.g:2069:1: ruleALSDirectProduct returns [EObject current=null] : (this_ALSPreficed_0= ruleALSPreficed ( () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) )? ) ; + public final EObject ruleALSDirectProduct() throws RecognitionException { + EObject current = null; + + Token otherlv_3=null; + EObject this_ALSPreficed_0 = null; + + Enumerator lv_leftMultiplicit_2_0 = null; + + Enumerator lv_rightMultiplicit_4_0 = null; + + EObject lv_rightOperand_5_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2072:28: ( (this_ALSPreficed_0= ruleALSPreficed ( () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) )? ) ) + // InternalAlloyLanguage.g:2073:1: (this_ALSPreficed_0= ruleALSPreficed ( () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) )? ) + { + // InternalAlloyLanguage.g:2073:1: (this_ALSPreficed_0= ruleALSPreficed ( () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) )? ) + // InternalAlloyLanguage.g:2074:5: this_ALSPreficed_0= ruleALSPreficed ( () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) )? + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDirectProductAccess().getALSPreficedParserRuleCall_0()); + + } + pushFollow(FOLLOW_32); + this_ALSPreficed_0=ruleALSPreficed(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSPreficed_0; + afterParserOrEnumRuleCall(); + + } + // InternalAlloyLanguage.g:2082:1: ( () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) )? + int alt37=2; + int LA37_0 = input.LA(1); + + if ( (LA37_0==48||(LA37_0>=65 && LA37_0<=70)) ) { + alt37=1; + } + switch (alt37) { + case 1 : + // InternalAlloyLanguage.g:2082:2: () ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? otherlv_3= '->' ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? ( (lv_rightOperand_5_0= ruleALSPreficed ) ) + { + // InternalAlloyLanguage.g:2082:2: () + // InternalAlloyLanguage.g:2083:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElementAndSet( + grammarAccess.getALSDirectProductAccess().getALSDirectProductLeftOperandAction_1_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2088:2: ( (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) )? + int alt35=2; + int LA35_0 = input.LA(1); + + if ( ((LA35_0>=65 && LA35_0<=70)) ) { + alt35=1; + } + switch (alt35) { + case 1 : + // InternalAlloyLanguage.g:2089:1: (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) + { + // InternalAlloyLanguage.g:2089:1: (lv_leftMultiplicit_2_0= ruleALSMultiplicity ) + // InternalAlloyLanguage.g:2090:3: lv_leftMultiplicit_2_0= ruleALSMultiplicity + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDirectProductAccess().getLeftMultiplicitALSMultiplicityEnumRuleCall_1_1_0()); + + } + pushFollow(FOLLOW_33); + lv_leftMultiplicit_2_0=ruleALSMultiplicity(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDirectProductRule()); + } + set( + current, + "leftMultiplicit", + lv_leftMultiplicit_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + break; + + } + + otherlv_3=(Token)match(input,48,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSDirectProductAccess().getHyphenMinusGreaterThanSignKeyword_1_2()); + + } + // InternalAlloyLanguage.g:2110:1: ( (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) )? + int alt36=2; + int LA36_0 = input.LA(1); + + if ( ((LA36_0>=65 && LA36_0<=70)) ) { + alt36=1; + } + switch (alt36) { + case 1 : + // InternalAlloyLanguage.g:2111:1: (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) + { + // InternalAlloyLanguage.g:2111:1: (lv_rightMultiplicit_4_0= ruleALSMultiplicity ) + // InternalAlloyLanguage.g:2112:3: lv_rightMultiplicit_4_0= ruleALSMultiplicity + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDirectProductAccess().getRightMultiplicitALSMultiplicityEnumRuleCall_1_3_0()); + + } + pushFollow(FOLLOW_12); + lv_rightMultiplicit_4_0=ruleALSMultiplicity(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDirectProductRule()); + } + set( + current, + "rightMultiplicit", + lv_rightMultiplicit_4_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + break; + + } + + // InternalAlloyLanguage.g:2128:3: ( (lv_rightOperand_5_0= ruleALSPreficed ) ) + // InternalAlloyLanguage.g:2129:1: (lv_rightOperand_5_0= ruleALSPreficed ) + { + // InternalAlloyLanguage.g:2129:1: (lv_rightOperand_5_0= ruleALSPreficed ) + // InternalAlloyLanguage.g:2130:3: lv_rightOperand_5_0= ruleALSPreficed + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSDirectProductAccess().getRightOperandALSPreficedParserRuleCall_1_4_0()); + + } + pushFollow(FOLLOW_2); + lv_rightOperand_5_0=ruleALSPreficed(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSDirectProductRule()); + } + set( + current, + "rightOperand", + lv_rightOperand_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSPreficed"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSDirectProduct" + + + // $ANTLR start "entryRuleALSPreficed" + // InternalAlloyLanguage.g:2154:1: entryRuleALSPreficed returns [EObject current=null] : iv_ruleALSPreficed= ruleALSPreficed EOF ; + public final EObject entryRuleALSPreficed() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSPreficed = null; + + + try { + // InternalAlloyLanguage.g:2155:2: (iv_ruleALSPreficed= ruleALSPreficed EOF ) + // InternalAlloyLanguage.g:2156:2: iv_ruleALSPreficed= ruleALSPreficed EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSPreficedRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSPreficed=ruleALSPreficed(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSPreficed; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSPreficed" + + + // $ANTLR start "ruleALSPreficed" + // InternalAlloyLanguage.g:2163:1: ruleALSPreficed returns [EObject current=null] : ( ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) | ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) | this_ALSBasicRelationTerm_35= ruleALSBasicRelationTerm ) ; + public final EObject ruleALSPreficed() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_2=null; + Token otherlv_5=null; + Token otherlv_8=null; + Token otherlv_11=null; + Token otherlv_14=null; + Token otherlv_17=null; + Token otherlv_20=null; + Token otherlv_22=null; + Token otherlv_24=null; + Token otherlv_26=null; + Token otherlv_28=null; + Token otherlv_30=null; + Token otherlv_32=null; + Token otherlv_34=null; + EObject lv_operand_3_0 = null; + + EObject lv_operand_6_0 = null; + + EObject lv_operand_9_0 = null; + + EObject lv_operand_12_0 = null; + + EObject lv_operand_15_0 = null; + + EObject lv_operand_18_0 = null; + + EObject lv_variables_21_0 = null; + + EObject lv_variables_23_0 = null; + + EObject lv_expression_25_0 = null; + + Enumerator lv_referredNumericOperator_29_0 = null; + + EObject lv_params_31_0 = null; + + EObject lv_params_33_0 = null; + + EObject this_ALSBasicRelationTerm_35 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2166:28: ( ( ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) | ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) | this_ALSBasicRelationTerm_35= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2167:1: ( ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) | ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) | this_ALSBasicRelationTerm_35= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2167:1: ( ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) | ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) | this_ALSBasicRelationTerm_35= ruleALSBasicRelationTerm ) + int alt42=9; + alt42 = dfa42.predict(input); + switch (alt42) { + case 1 : + // InternalAlloyLanguage.g:2167:2: ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) + { + // InternalAlloyLanguage.g:2167:2: ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) + // InternalAlloyLanguage.g:2167:3: () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) + { + // InternalAlloyLanguage.g:2167:3: () + // InternalAlloyLanguage.g:2168:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSNotAction_0_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2173:2: ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) + // InternalAlloyLanguage.g:2173:3: ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) + { + // InternalAlloyLanguage.g:2176:5: (otherlv_1= '!' | otherlv_2= 'not' ) + int alt38=2; + int LA38_0 = input.LA(1); + + if ( (LA38_0==49) ) { + alt38=1; + } + else if ( (LA38_0==50) ) { + alt38=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 38, 0, input); + + throw nvae; + } + switch (alt38) { + case 1 : + // InternalAlloyLanguage.g:2176:7: otherlv_1= '!' + { + otherlv_1=(Token)match(input,49,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSPreficedAccess().getExclamationMarkKeyword_0_1_0_0()); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:2181:7: otherlv_2= 'not' + { + otherlv_2=(Token)match(input,50,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSPreficedAccess().getNotKeyword_0_1_0_1()); + + } + + } + break; + + } + + + } + + // InternalAlloyLanguage.g:2185:3: ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2186:1: (lv_operand_3_0= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2186:1: (lv_operand_3_0= ruleALSBasicRelationTerm ) + // InternalAlloyLanguage.g:2187:3: lv_operand_3_0= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_0_2_0()); + + } + pushFollow(FOLLOW_2); + lv_operand_3_0=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "operand", + lv_operand_3_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:2204:6: ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) + { + // InternalAlloyLanguage.g:2204:6: ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) + // InternalAlloyLanguage.g:2204:7: () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) + { + // InternalAlloyLanguage.g:2204:7: () + // InternalAlloyLanguage.g:2205:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSInverseRelationAction_1_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2210:2: ( ( '~' )=>otherlv_5= '~' ) + // InternalAlloyLanguage.g:2210:3: ( '~' )=>otherlv_5= '~' + { + otherlv_5=(Token)match(input,51,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getALSPreficedAccess().getTildeKeyword_1_1()); + + } + + } + + // InternalAlloyLanguage.g:2215:2: ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2216:1: (lv_operand_6_0= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2216:1: (lv_operand_6_0= ruleALSBasicRelationTerm ) + // InternalAlloyLanguage.g:2217:3: lv_operand_6_0= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_1_2_0()); + + } + pushFollow(FOLLOW_2); + lv_operand_6_0=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "operand", + lv_operand_6_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + break; + case 3 : + // InternalAlloyLanguage.g:2234:6: ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) + { + // InternalAlloyLanguage.g:2234:6: ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) + // InternalAlloyLanguage.g:2234:7: () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) + { + // InternalAlloyLanguage.g:2234:7: () + // InternalAlloyLanguage.g:2235:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getAlSTransitiveClosureAction_2_0(), + current); + + } + + } + + otherlv_8=(Token)match(input,52,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_8, grammarAccess.getALSPreficedAccess().getCircumflexAccentKeyword_2_1()); + + } + // InternalAlloyLanguage.g:2244:1: ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2245:1: (lv_operand_9_0= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2245:1: (lv_operand_9_0= ruleALSBasicRelationTerm ) + // InternalAlloyLanguage.g:2246:3: lv_operand_9_0= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_2_2_0()); + + } + pushFollow(FOLLOW_2); + lv_operand_9_0=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "operand", + lv_operand_9_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + break; + case 4 : + // InternalAlloyLanguage.g:2263:6: ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) + { + // InternalAlloyLanguage.g:2263:6: ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) + // InternalAlloyLanguage.g:2263:7: () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) + { + // InternalAlloyLanguage.g:2263:7: () + // InternalAlloyLanguage.g:2264:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSReflectiveTransitiveClosureAction_3_0(), + current); + + } + + } + + otherlv_11=(Token)match(input,53,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_11, grammarAccess.getALSPreficedAccess().getAsteriskKeyword_3_1()); + + } + // InternalAlloyLanguage.g:2273:1: ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2274:1: (lv_operand_12_0= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2274:1: (lv_operand_12_0= ruleALSBasicRelationTerm ) + // InternalAlloyLanguage.g:2275:3: lv_operand_12_0= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_3_2_0()); + + } + pushFollow(FOLLOW_2); + lv_operand_12_0=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "operand", + lv_operand_12_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + break; + case 5 : + // InternalAlloyLanguage.g:2292:6: ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) + { + // InternalAlloyLanguage.g:2292:6: ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) + // InternalAlloyLanguage.g:2292:7: () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) + { + // InternalAlloyLanguage.g:2292:7: () + // InternalAlloyLanguage.g:2293:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSCardinalityAction_4_0(), + current); + + } + + } + + otherlv_14=(Token)match(input,54,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_14, grammarAccess.getALSPreficedAccess().getNumberSignKeyword_4_1()); + + } + // InternalAlloyLanguage.g:2302:1: ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2303:1: (lv_operand_15_0= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2303:1: (lv_operand_15_0= ruleALSBasicRelationTerm ) + // InternalAlloyLanguage.g:2304:3: lv_operand_15_0= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_4_2_0()); + + } + pushFollow(FOLLOW_2); + lv_operand_15_0=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "operand", + lv_operand_15_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + break; + case 6 : + // InternalAlloyLanguage.g:2321:6: ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) + { + // InternalAlloyLanguage.g:2321:6: ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) + // InternalAlloyLanguage.g:2321:7: () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) + { + // InternalAlloyLanguage.g:2321:7: () + // InternalAlloyLanguage.g:2322:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSUnaryMinusAction_5_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2327:2: ( ( '-' )=>otherlv_17= '-' ) + // InternalAlloyLanguage.g:2327:3: ( '-' )=>otherlv_17= '-' + { + otherlv_17=(Token)match(input,46,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_17, grammarAccess.getALSPreficedAccess().getHyphenMinusKeyword_5_1()); + + } + + } + + // InternalAlloyLanguage.g:2332:2: ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) + // InternalAlloyLanguage.g:2333:1: (lv_operand_18_0= ruleALSBasicRelationTerm ) + { + // InternalAlloyLanguage.g:2333:1: (lv_operand_18_0= ruleALSBasicRelationTerm ) + // InternalAlloyLanguage.g:2334:3: lv_operand_18_0= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_5_2_0()); + + } + pushFollow(FOLLOW_2); + lv_operand_18_0=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "operand", + lv_operand_18_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + break; + case 7 : + // InternalAlloyLanguage.g:2351:6: ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) + { + // InternalAlloyLanguage.g:2351:6: ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) + // InternalAlloyLanguage.g:2351:7: () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' + { + // InternalAlloyLanguage.g:2351:7: () + // InternalAlloyLanguage.g:2352:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSSumAction_6_0(), + current); + + } + + } + + otherlv_20=(Token)match(input,55,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_20, grammarAccess.getALSPreficedAccess().getSumKeyword_6_1()); + + } + // InternalAlloyLanguage.g:2361:1: ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:2362:1: (lv_variables_21_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:2362:1: (lv_variables_21_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:2363:3: lv_variables_21_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getVariablesALSVariableDeclarationParserRuleCall_6_2_0()); + + } + pushFollow(FOLLOW_18); + lv_variables_21_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + current, + "variables", + lv_variables_21_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:2379:2: (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* + loop39: + do { + int alt39=2; + int LA39_0 = input.LA(1); + + if ( (LA39_0==13) ) { + alt39=1; + } + + + switch (alt39) { + case 1 : + // InternalAlloyLanguage.g:2379:4: otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) + { + otherlv_22=(Token)match(input,13,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_22, grammarAccess.getALSPreficedAccess().getCommaKeyword_6_3_0()); + + } + // InternalAlloyLanguage.g:2383:1: ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) + // InternalAlloyLanguage.g:2384:1: (lv_variables_23_0= ruleALSVariableDeclaration ) + { + // InternalAlloyLanguage.g:2384:1: (lv_variables_23_0= ruleALSVariableDeclaration ) + // InternalAlloyLanguage.g:2385:3: lv_variables_23_0= ruleALSVariableDeclaration + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getVariablesALSVariableDeclarationParserRuleCall_6_3_1_0()); + + } + pushFollow(FOLLOW_18); + lv_variables_23_0=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + current, + "variables", + lv_variables_23_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop39; + } + } while (true); + + otherlv_24=(Token)match(input,12,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_24, grammarAccess.getALSPreficedAccess().getLeftCurlyBracketKeyword_6_4()); + + } + // InternalAlloyLanguage.g:2405:1: ( (lv_expression_25_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:2406:1: (lv_expression_25_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:2406:1: (lv_expression_25_0= ruleALSTerm ) + // InternalAlloyLanguage.g:2407:3: lv_expression_25_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getExpressionALSTermParserRuleCall_6_5_0()); + + } + pushFollow(FOLLOW_15); + lv_expression_25_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "expression", + lv_expression_25_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_26=(Token)match(input,14,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_26, grammarAccess.getALSPreficedAccess().getRightCurlyBracketKeyword_6_6()); + + } + + } + + + } + break; + case 8 : + // InternalAlloyLanguage.g:2428:6: ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) + { + // InternalAlloyLanguage.g:2428:6: ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) + // InternalAlloyLanguage.g:2428:7: () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' + { + // InternalAlloyLanguage.g:2428:7: () + // InternalAlloyLanguage.g:2429:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSPreficedAccess().getALSFunctionCallAction_7_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2434:2: ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) + int alt40=2; + int LA40_0 = input.LA(1); + + if ( (LA40_0==RULE_ID) ) { + alt40=1; + } + else if ( ((LA40_0>=71 && LA40_0<=75)) ) { + alt40=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 40, 0, input); + + throw nvae; + } + switch (alt40) { + case 1 : + // InternalAlloyLanguage.g:2434:3: ( (otherlv_28= RULE_ID ) ) + { + // InternalAlloyLanguage.g:2434:3: ( (otherlv_28= RULE_ID ) ) + // InternalAlloyLanguage.g:2435:1: (otherlv_28= RULE_ID ) + { + // InternalAlloyLanguage.g:2435:1: (otherlv_28= RULE_ID ) + // InternalAlloyLanguage.g:2436:3: otherlv_28= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSPreficedRule()); + } + + } + otherlv_28=(Token)match(input,RULE_ID,FOLLOW_13); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_28, grammarAccess.getALSPreficedAccess().getReferredDefinitionALSDefinitionCrossReference_7_1_0_0()); + + } + + } + + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:2448:6: ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) + { + // InternalAlloyLanguage.g:2448:6: ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) + // InternalAlloyLanguage.g:2449:1: (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) + { + // InternalAlloyLanguage.g:2449:1: (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) + // InternalAlloyLanguage.g:2450:3: lv_referredNumericOperator_29_0= ruleALSNumericOperator + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getReferredNumericOperatorALSNumericOperatorEnumRuleCall_7_1_1_0()); + + } + pushFollow(FOLLOW_13); + lv_referredNumericOperator_29_0=ruleALSNumericOperator(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + set( + current, + "referredNumericOperator", + lv_referredNumericOperator_29_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSNumericOperator"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + } + + otherlv_30=(Token)match(input,22,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_30, grammarAccess.getALSPreficedAccess().getLeftSquareBracketKeyword_7_2()); + + } + // InternalAlloyLanguage.g:2470:1: ( (lv_params_31_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:2471:1: (lv_params_31_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:2471:1: (lv_params_31_0= ruleALSTerm ) + // InternalAlloyLanguage.g:2472:3: lv_params_31_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getParamsALSTermParserRuleCall_7_3_0()); + + } + pushFollow(FOLLOW_14); + lv_params_31_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + current, + "params", + lv_params_31_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:2488:2: (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* + loop41: + do { + int alt41=2; + int LA41_0 = input.LA(1); + + if ( (LA41_0==13) ) { + alt41=1; + } + + + switch (alt41) { + case 1 : + // InternalAlloyLanguage.g:2488:4: otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) + { + otherlv_32=(Token)match(input,13,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_32, grammarAccess.getALSPreficedAccess().getCommaKeyword_7_4_0()); + + } + // InternalAlloyLanguage.g:2492:1: ( (lv_params_33_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:2493:1: (lv_params_33_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:2493:1: (lv_params_33_0= ruleALSTerm ) + // InternalAlloyLanguage.g:2494:3: lv_params_33_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getParamsALSTermParserRuleCall_7_4_1_0()); + + } + pushFollow(FOLLOW_14); + lv_params_33_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSPreficedRule()); + } + add( + current, + "params", + lv_params_33_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop41; + } + } while (true); + + otherlv_34=(Token)match(input,23,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_34, grammarAccess.getALSPreficedAccess().getRightSquareBracketKeyword_7_5()); + + } + + } + + + } + break; + case 9 : + // InternalAlloyLanguage.g:2516:5: this_ALSBasicRelationTerm_35= ruleALSBasicRelationTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSPreficedAccess().getALSBasicRelationTermParserRuleCall_8()); + + } + pushFollow(FOLLOW_2); + this_ALSBasicRelationTerm_35=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSBasicRelationTerm_35; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSPreficed" + + + // $ANTLR start "entryRuleALSVariableDeclaration" + // InternalAlloyLanguage.g:2532:1: entryRuleALSVariableDeclaration returns [EObject current=null] : iv_ruleALSVariableDeclaration= ruleALSVariableDeclaration EOF ; + public final EObject entryRuleALSVariableDeclaration() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSVariableDeclaration = null; + + + try { + // InternalAlloyLanguage.g:2533:2: (iv_ruleALSVariableDeclaration= ruleALSVariableDeclaration EOF ) + // InternalAlloyLanguage.g:2534:2: iv_ruleALSVariableDeclaration= ruleALSVariableDeclaration EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSVariableDeclarationRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSVariableDeclaration=ruleALSVariableDeclaration(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSVariableDeclaration; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSVariableDeclaration" + + + // $ANTLR start "ruleALSVariableDeclaration" + // InternalAlloyLanguage.g:2541:1: ruleALSVariableDeclaration returns [EObject current=null] : ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_range_2_0= ruleALSTerm ) ) ) ; + public final EObject ruleALSVariableDeclaration() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + AntlrDatatypeRuleToken lv_name_0_0 = null; + + EObject lv_range_2_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2544:28: ( ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_range_2_0= ruleALSTerm ) ) ) ) + // InternalAlloyLanguage.g:2545:1: ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_range_2_0= ruleALSTerm ) ) ) + { + // InternalAlloyLanguage.g:2545:1: ( ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_range_2_0= ruleALSTerm ) ) ) + // InternalAlloyLanguage.g:2545:2: ( (lv_name_0_0= ruleALSID ) ) otherlv_1= ':' ( (lv_range_2_0= ruleALSTerm ) ) + { + // InternalAlloyLanguage.g:2545:2: ( (lv_name_0_0= ruleALSID ) ) + // InternalAlloyLanguage.g:2546:1: (lv_name_0_0= ruleALSID ) + { + // InternalAlloyLanguage.g:2546:1: (lv_name_0_0= ruleALSID ) + // InternalAlloyLanguage.g:2547:3: lv_name_0_0= ruleALSID + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSVariableDeclarationAccess().getNameALSIDParserRuleCall_0_0()); + + } + pushFollow(FOLLOW_11); + lv_name_0_0=ruleALSID(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSVariableDeclarationRule()); + } + set( + current, + "name", + lv_name_0_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + otherlv_1=(Token)match(input,20,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSVariableDeclarationAccess().getColonKeyword_1()); + + } + // InternalAlloyLanguage.g:2567:1: ( (lv_range_2_0= ruleALSTerm ) ) + // InternalAlloyLanguage.g:2568:1: (lv_range_2_0= ruleALSTerm ) + { + // InternalAlloyLanguage.g:2568:1: (lv_range_2_0= ruleALSTerm ) + // InternalAlloyLanguage.g:2569:3: lv_range_2_0= ruleALSTerm + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSVariableDeclarationAccess().getRangeALSTermParserRuleCall_2_0()); + + } + pushFollow(FOLLOW_2); + lv_range_2_0=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSVariableDeclarationRule()); + } + set( + current, + "range", + lv_range_2_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSVariableDeclaration" + + + // $ANTLR start "entryRuleALSBasicRelationTerm" + // InternalAlloyLanguage.g:2593:1: entryRuleALSBasicRelationTerm returns [EObject current=null] : iv_ruleALSBasicRelationTerm= ruleALSBasicRelationTerm EOF ; + public final EObject entryRuleALSBasicRelationTerm() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSBasicRelationTerm = null; + + + try { + // InternalAlloyLanguage.g:2594:2: (iv_ruleALSBasicRelationTerm= ruleALSBasicRelationTerm EOF ) + // InternalAlloyLanguage.g:2595:2: iv_ruleALSBasicRelationTerm= ruleALSBasicRelationTerm EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSBasicRelationTermRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSBasicRelationTerm=ruleALSBasicRelationTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSBasicRelationTerm; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSBasicRelationTerm" + + + // $ANTLR start "ruleALSBasicRelationTerm" + // InternalAlloyLanguage.g:2602:1: ruleALSBasicRelationTerm returns [EObject current=null] : ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) ; + public final EObject ruleALSBasicRelationTerm() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + Token otherlv_7=null; + Token otherlv_9=null; + Token lv_value_11_0=null; + Token otherlv_12=null; + Token otherlv_14=null; + EObject this_ALSTerm_13 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2605:28: ( ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) ) + // InternalAlloyLanguage.g:2606:1: ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) + { + // InternalAlloyLanguage.g:2606:1: ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) + int alt43=7; + switch ( input.LA(1) ) { + case 56: + { + alt43=1; + } + break; + case 57: + { + alt43=2; + } + break; + case 58: + { + alt43=3; + } + break; + case 59: + { + alt43=4; + } + break; + case RULE_ID: + { + alt43=5; + } + break; + case RULE_INT: + { + alt43=6; + } + break; + case 60: + { + alt43=7; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 43, 0, input); + + throw nvae; + } + + switch (alt43) { + case 1 : + // InternalAlloyLanguage.g:2606:2: ( () otherlv_1= 'none' ) + { + // InternalAlloyLanguage.g:2606:2: ( () otherlv_1= 'none' ) + // InternalAlloyLanguage.g:2606:3: () otherlv_1= 'none' + { + // InternalAlloyLanguage.g:2606:3: () + // InternalAlloyLanguage.g:2607:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSNoneAction_0_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,56,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSBasicRelationTermAccess().getNoneKeyword_0_1()); + + } + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:2617:6: ( () otherlv_3= 'iden' ) + { + // InternalAlloyLanguage.g:2617:6: ( () otherlv_3= 'iden' ) + // InternalAlloyLanguage.g:2617:7: () otherlv_3= 'iden' + { + // InternalAlloyLanguage.g:2617:7: () + // InternalAlloyLanguage.g:2618:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSIdenAction_1_0(), + current); + + } + + } + + otherlv_3=(Token)match(input,57,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSBasicRelationTermAccess().getIdenKeyword_1_1()); + + } + + } + + + } + break; + case 3 : + // InternalAlloyLanguage.g:2628:6: ( () otherlv_5= 'univ' ) + { + // InternalAlloyLanguage.g:2628:6: ( () otherlv_5= 'univ' ) + // InternalAlloyLanguage.g:2628:7: () otherlv_5= 'univ' + { + // InternalAlloyLanguage.g:2628:7: () + // InternalAlloyLanguage.g:2629:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSUnivAction_2_0(), + current); + + } + + } + + otherlv_5=(Token)match(input,58,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_5, grammarAccess.getALSBasicRelationTermAccess().getUnivKeyword_2_1()); + + } + + } + + + } + break; + case 4 : + // InternalAlloyLanguage.g:2639:6: ( () otherlv_7= 'Int' ) + { + // InternalAlloyLanguage.g:2639:6: ( () otherlv_7= 'Int' ) + // InternalAlloyLanguage.g:2639:7: () otherlv_7= 'Int' + { + // InternalAlloyLanguage.g:2639:7: () + // InternalAlloyLanguage.g:2640:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSIntAction_3_0(), + current); + + } + + } + + otherlv_7=(Token)match(input,59,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_7, grammarAccess.getALSBasicRelationTermAccess().getIntKeyword_3_1()); + + } + + } + + + } + break; + case 5 : + // InternalAlloyLanguage.g:2650:6: ( () ( (otherlv_9= RULE_ID ) ) ) + { + // InternalAlloyLanguage.g:2650:6: ( () ( (otherlv_9= RULE_ID ) ) ) + // InternalAlloyLanguage.g:2650:7: () ( (otherlv_9= RULE_ID ) ) + { + // InternalAlloyLanguage.g:2650:7: () + // InternalAlloyLanguage.g:2651:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSReferenceAction_4_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2656:2: ( (otherlv_9= RULE_ID ) ) + // InternalAlloyLanguage.g:2657:1: (otherlv_9= RULE_ID ) + { + // InternalAlloyLanguage.g:2657:1: (otherlv_9= RULE_ID ) + // InternalAlloyLanguage.g:2658:3: otherlv_9= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSBasicRelationTermRule()); + } + + } + otherlv_9=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_9, grammarAccess.getALSBasicRelationTermAccess().getReferredALSRelationDeclarationCrossReference_4_1_0()); + + } + + } + + + } + + + } + + + } + break; + case 6 : + // InternalAlloyLanguage.g:2670:6: ( () ( (lv_value_11_0= RULE_INT ) ) ) + { + // InternalAlloyLanguage.g:2670:6: ( () ( (lv_value_11_0= RULE_INT ) ) ) + // InternalAlloyLanguage.g:2670:7: () ( (lv_value_11_0= RULE_INT ) ) + { + // InternalAlloyLanguage.g:2670:7: () + // InternalAlloyLanguage.g:2671:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSBasicRelationTermAccess().getALSNumberLiteralAction_5_0(), + current); + + } + + } + + // InternalAlloyLanguage.g:2676:2: ( (lv_value_11_0= RULE_INT ) ) + // InternalAlloyLanguage.g:2677:1: (lv_value_11_0= RULE_INT ) + { + // InternalAlloyLanguage.g:2677:1: (lv_value_11_0= RULE_INT ) + // InternalAlloyLanguage.g:2678:3: lv_value_11_0= RULE_INT + { + lv_value_11_0=(Token)match(input,RULE_INT,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_value_11_0, grammarAccess.getALSBasicRelationTermAccess().getValueINTTerminalRuleCall_5_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSBasicRelationTermRule()); + } + setWithLastConsumed( + current, + "value", + lv_value_11_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + + } + + + } + break; + case 7 : + // InternalAlloyLanguage.g:2695:6: (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) + { + // InternalAlloyLanguage.g:2695:6: (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) + // InternalAlloyLanguage.g:2695:8: otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' + { + otherlv_12=(Token)match(input,60,FOLLOW_12); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_12, grammarAccess.getALSBasicRelationTermAccess().getLeftParenthesisKeyword_6_0()); + + } + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSBasicRelationTermAccess().getALSTermParserRuleCall_6_1()); + + } + pushFollow(FOLLOW_34); + this_ALSTerm_13=ruleALSTerm(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSTerm_13; + afterParserOrEnumRuleCall(); + + } + otherlv_14=(Token)match(input,61,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_14, grammarAccess.getALSBasicRelationTermAccess().getRightParenthesisKeyword_6_2()); + + } + + } + + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSBasicRelationTerm" + + + // $ANTLR start "entryRuleALSRunCommand" + // InternalAlloyLanguage.g:2720:1: entryRuleALSRunCommand returns [EObject current=null] : iv_ruleALSRunCommand= ruleALSRunCommand EOF ; + public final EObject entryRuleALSRunCommand() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSRunCommand = null; + + + try { + // InternalAlloyLanguage.g:2721:2: (iv_ruleALSRunCommand= ruleALSRunCommand EOF ) + // InternalAlloyLanguage.g:2722:2: iv_ruleALSRunCommand= ruleALSRunCommand EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSRunCommandRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSRunCommand=ruleALSRunCommand(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSRunCommand; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSRunCommand" + + + // $ANTLR start "ruleALSRunCommand" + // InternalAlloyLanguage.g:2729:1: ruleALSRunCommand returns [EObject current=null] : ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) ; + public final EObject ruleALSRunCommand() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_2=null; + Token otherlv_3=null; + Token otherlv_4=null; + Token otherlv_6=null; + EObject lv_typeScopes_5_0 = null; + + EObject lv_typeScopes_7_0 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2732:28: ( ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) ) + // InternalAlloyLanguage.g:2733:1: ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) + { + // InternalAlloyLanguage.g:2733:1: ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) + // InternalAlloyLanguage.g:2733:2: () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? + { + // InternalAlloyLanguage.g:2733:2: () + // InternalAlloyLanguage.g:2734:5: + { + if ( state.backtracking==0 ) { + + current = forceCreateModelElement( + grammarAccess.getALSRunCommandAccess().getALSRunCommandAction_0(), + current); + + } + + } + + otherlv_1=(Token)match(input,62,FOLLOW_5); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSRunCommandAccess().getRunKeyword_1()); + + } + otherlv_2=(Token)match(input,12,FOLLOW_15); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSRunCommandAccess().getLeftCurlyBracketKeyword_2()); + + } + otherlv_3=(Token)match(input,14,FOLLOW_35); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_3, grammarAccess.getALSRunCommandAccess().getRightCurlyBracketKeyword_3()); + + } + // InternalAlloyLanguage.g:2751:1: (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? + int alt45=2; + int LA45_0 = input.LA(1); + + if ( (LA45_0==63) ) { + alt45=1; + } + switch (alt45) { + case 1 : + // InternalAlloyLanguage.g:2751:3: otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* + { + otherlv_4=(Token)match(input,63,FOLLOW_36); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_4, grammarAccess.getALSRunCommandAccess().getForKeyword_4_0()); + + } + // InternalAlloyLanguage.g:2755:1: ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) + // InternalAlloyLanguage.g:2756:1: (lv_typeScopes_5_0= ruleALSTypeScope ) + { + // InternalAlloyLanguage.g:2756:1: (lv_typeScopes_5_0= ruleALSTypeScope ) + // InternalAlloyLanguage.g:2757:3: lv_typeScopes_5_0= ruleALSTypeScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRunCommandAccess().getTypeScopesALSTypeScopeParserRuleCall_4_1_0()); + + } + pushFollow(FOLLOW_37); + lv_typeScopes_5_0=ruleALSTypeScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRunCommandRule()); + } + add( + current, + "typeScopes", + lv_typeScopes_5_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTypeScope"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + // InternalAlloyLanguage.g:2773:2: (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* + loop44: + do { + int alt44=2; + int LA44_0 = input.LA(1); + + if ( (LA44_0==13) ) { + alt44=1; + } + + + switch (alt44) { + case 1 : + // InternalAlloyLanguage.g:2773:4: otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) + { + otherlv_6=(Token)match(input,13,FOLLOW_36); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_6, grammarAccess.getALSRunCommandAccess().getCommaKeyword_4_2_0()); + + } + // InternalAlloyLanguage.g:2777:1: ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) + // InternalAlloyLanguage.g:2778:1: (lv_typeScopes_7_0= ruleALSTypeScope ) + { + // InternalAlloyLanguage.g:2778:1: (lv_typeScopes_7_0= ruleALSTypeScope ) + // InternalAlloyLanguage.g:2779:3: lv_typeScopes_7_0= ruleALSTypeScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSRunCommandAccess().getTypeScopesALSTypeScopeParserRuleCall_4_2_1_0()); + + } + pushFollow(FOLLOW_37); + lv_typeScopes_7_0=ruleALSTypeScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElementForParent(grammarAccess.getALSRunCommandRule()); + } + add( + current, + "typeScopes", + lv_typeScopes_7_0, + "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTypeScope"); + afterParserOrEnumRuleCall(); + + } + + } + + + } + + + } + break; + + default : + break loop44; + } + } while (true); + + + } + break; + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSRunCommand" + + + // $ANTLR start "entryRuleALSTypeScope" + // InternalAlloyLanguage.g:2803:1: entryRuleALSTypeScope returns [EObject current=null] : iv_ruleALSTypeScope= ruleALSTypeScope EOF ; + public final EObject entryRuleALSTypeScope() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSTypeScope = null; + + + try { + // InternalAlloyLanguage.g:2804:2: (iv_ruleALSTypeScope= ruleALSTypeScope EOF ) + // InternalAlloyLanguage.g:2805:2: iv_ruleALSTypeScope= ruleALSTypeScope EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSTypeScopeRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSTypeScope=ruleALSTypeScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSTypeScope; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSTypeScope" + + + // $ANTLR start "ruleALSTypeScope" + // InternalAlloyLanguage.g:2812:1: ruleALSTypeScope returns [EObject current=null] : (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) ; + public final EObject ruleALSTypeScope() throws RecognitionException { + EObject current = null; + + EObject this_ALSSigScope_0 = null; + + EObject this_ALSIntScope_1 = null; + + + enterRule(); + + try { + // InternalAlloyLanguage.g:2815:28: ( (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) ) + // InternalAlloyLanguage.g:2816:1: (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) + { + // InternalAlloyLanguage.g:2816:1: (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) + int alt46=2; + int LA46_0 = input.LA(1); + + if ( (LA46_0==64) ) { + alt46=1; + } + else if ( (LA46_0==RULE_INT) ) { + int LA46_2 = input.LA(2); + + if ( (LA46_2==RULE_ID) ) { + alt46=1; + } + else if ( (LA46_2==59) ) { + alt46=2; + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 46, 2, input); + + throw nvae; + } + } + else { + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 46, 0, input); + + throw nvae; + } + switch (alt46) { + case 1 : + // InternalAlloyLanguage.g:2817:5: this_ALSSigScope_0= ruleALSSigScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSTypeScopeAccess().getALSSigScopeParserRuleCall_0()); + + } + pushFollow(FOLLOW_2); + this_ALSSigScope_0=ruleALSSigScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSSigScope_0; + afterParserOrEnumRuleCall(); + + } + + } + break; + case 2 : + // InternalAlloyLanguage.g:2827:5: this_ALSIntScope_1= ruleALSIntScope + { + if ( state.backtracking==0 ) { + + newCompositeNode(grammarAccess.getALSTypeScopeAccess().getALSIntScopeParserRuleCall_1()); + + } + pushFollow(FOLLOW_2); + this_ALSIntScope_1=ruleALSIntScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = this_ALSIntScope_1; + afterParserOrEnumRuleCall(); + + } + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSTypeScope" + + + // $ANTLR start "entryRuleALSSigScope" + // InternalAlloyLanguage.g:2843:1: entryRuleALSSigScope returns [EObject current=null] : iv_ruleALSSigScope= ruleALSSigScope EOF ; + public final EObject entryRuleALSSigScope() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSSigScope = null; + + + try { + // InternalAlloyLanguage.g:2844:2: (iv_ruleALSSigScope= ruleALSSigScope EOF ) + // InternalAlloyLanguage.g:2845:2: iv_ruleALSSigScope= ruleALSSigScope EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSSigScopeRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSSigScope=ruleALSSigScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSSigScope; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSSigScope" + + + // $ANTLR start "ruleALSSigScope" + // InternalAlloyLanguage.g:2852:1: ruleALSSigScope returns [EObject current=null] : ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) ; + public final EObject ruleALSSigScope() throws RecognitionException { + EObject current = null; + + Token lv_exactly_0_0=null; + Token lv_number_1_0=null; + Token otherlv_2=null; + + enterRule(); + + try { + // InternalAlloyLanguage.g:2855:28: ( ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) ) + // InternalAlloyLanguage.g:2856:1: ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) + { + // InternalAlloyLanguage.g:2856:1: ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) + // InternalAlloyLanguage.g:2856:2: ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) + { + // InternalAlloyLanguage.g:2856:2: ( (lv_exactly_0_0= 'exactly' ) )? + int alt47=2; + int LA47_0 = input.LA(1); + + if ( (LA47_0==64) ) { + alt47=1; + } + switch (alt47) { + case 1 : + // InternalAlloyLanguage.g:2857:1: (lv_exactly_0_0= 'exactly' ) + { + // InternalAlloyLanguage.g:2857:1: (lv_exactly_0_0= 'exactly' ) + // InternalAlloyLanguage.g:2858:3: lv_exactly_0_0= 'exactly' + { + lv_exactly_0_0=(Token)match(input,64,FOLLOW_38); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_exactly_0_0, grammarAccess.getALSSigScopeAccess().getExactlyExactlyKeyword_0_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSigScopeRule()); + } + setWithLastConsumed(current, "exactly", true, "exactly"); + + } + + } + + + } + break; + + } + + // InternalAlloyLanguage.g:2871:3: ( (lv_number_1_0= RULE_INT ) ) + // InternalAlloyLanguage.g:2872:1: (lv_number_1_0= RULE_INT ) + { + // InternalAlloyLanguage.g:2872:1: (lv_number_1_0= RULE_INT ) + // InternalAlloyLanguage.g:2873:3: lv_number_1_0= RULE_INT + { + lv_number_1_0=(Token)match(input,RULE_INT,FOLLOW_4); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_number_1_0, grammarAccess.getALSSigScopeAccess().getNumberINTTerminalRuleCall_1_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSigScopeRule()); + } + setWithLastConsumed( + current, + "number", + lv_number_1_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + // InternalAlloyLanguage.g:2889:2: ( (otherlv_2= RULE_ID ) ) + // InternalAlloyLanguage.g:2890:1: (otherlv_2= RULE_ID ) + { + // InternalAlloyLanguage.g:2890:1: (otherlv_2= RULE_ID ) + // InternalAlloyLanguage.g:2891:3: otherlv_2= RULE_ID + { + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSSigScopeRule()); + } + + } + otherlv_2=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_2, grammarAccess.getALSSigScopeAccess().getTypeALSSignatureDeclarationCrossReference_2_0()); + + } + + } + + + } + + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSSigScope" + + + // $ANTLR start "entryRuleALSIntScope" + // InternalAlloyLanguage.g:2910:1: entryRuleALSIntScope returns [EObject current=null] : iv_ruleALSIntScope= ruleALSIntScope EOF ; + public final EObject entryRuleALSIntScope() throws RecognitionException { + EObject current = null; + + EObject iv_ruleALSIntScope = null; + + + try { + // InternalAlloyLanguage.g:2911:2: (iv_ruleALSIntScope= ruleALSIntScope EOF ) + // InternalAlloyLanguage.g:2912:2: iv_ruleALSIntScope= ruleALSIntScope EOF + { + if ( state.backtracking==0 ) { + newCompositeNode(grammarAccess.getALSIntScopeRule()); + } + pushFollow(FOLLOW_1); + iv_ruleALSIntScope=ruleALSIntScope(); + + state._fsp--; + if (state.failed) return current; + if ( state.backtracking==0 ) { + current =iv_ruleALSIntScope; + } + match(input,EOF,FOLLOW_2); if (state.failed) return current; + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleALSIntScope" + + + // $ANTLR start "ruleALSIntScope" + // InternalAlloyLanguage.g:2919:1: ruleALSIntScope returns [EObject current=null] : ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) ; + public final EObject ruleALSIntScope() throws RecognitionException { + EObject current = null; + + Token lv_number_0_0=null; + Token otherlv_1=null; + + enterRule(); + + try { + // InternalAlloyLanguage.g:2922:28: ( ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) ) + // InternalAlloyLanguage.g:2923:1: ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) + { + // InternalAlloyLanguage.g:2923:1: ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) + // InternalAlloyLanguage.g:2923:2: ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' + { + // InternalAlloyLanguage.g:2923:2: ( (lv_number_0_0= RULE_INT ) ) + // InternalAlloyLanguage.g:2924:1: (lv_number_0_0= RULE_INT ) + { + // InternalAlloyLanguage.g:2924:1: (lv_number_0_0= RULE_INT ) + // InternalAlloyLanguage.g:2925:3: lv_number_0_0= RULE_INT + { + lv_number_0_0=(Token)match(input,RULE_INT,FOLLOW_39); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(lv_number_0_0, grammarAccess.getALSIntScopeAccess().getNumberINTTerminalRuleCall_0_0()); + + } + if ( state.backtracking==0 ) { + + if (current==null) { + current = createModelElement(grammarAccess.getALSIntScopeRule()); + } + setWithLastConsumed( + current, + "number", + lv_number_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + + } + + } + + + } + + otherlv_1=(Token)match(input,59,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + newLeafNode(otherlv_1, grammarAccess.getALSIntScopeAccess().getIntKeyword_1()); + + } + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSIntScope" + + + // $ANTLR start "ruleALSMultiplicity" + // InternalAlloyLanguage.g:2953:1: ruleALSMultiplicity returns [Enumerator current=null] : ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) ; + public final Enumerator ruleALSMultiplicity() throws RecognitionException { + Enumerator current = null; + + Token enumLiteral_0=null; + Token enumLiteral_1=null; + Token enumLiteral_2=null; + Token enumLiteral_3=null; + Token enumLiteral_4=null; + Token enumLiteral_5=null; + + enterRule(); + try { + // InternalAlloyLanguage.g:2955:28: ( ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) ) + // InternalAlloyLanguage.g:2956:1: ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) + { + // InternalAlloyLanguage.g:2956:1: ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) + int alt48=6; + switch ( input.LA(1) ) { + case 65: + { + alt48=1; + } + break; + case 66: + { + alt48=2; + } + break; + case 67: + { + alt48=3; + } + break; + case 68: + { + alt48=4; + } + break; + case 69: + { + alt48=5; + } + break; + case 70: + { + alt48=6; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 48, 0, input); + + throw nvae; + } + + switch (alt48) { + case 1 : + // InternalAlloyLanguage.g:2956:2: (enumLiteral_0= 'all' ) + { + // InternalAlloyLanguage.g:2956:2: (enumLiteral_0= 'all' ) + // InternalAlloyLanguage.g:2956:4: enumLiteral_0= 'all' + { + enumLiteral_0=(Token)match(input,65,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSMultiplicityAccess().getAllEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getALSMultiplicityAccess().getAllEnumLiteralDeclaration_0()); + + } + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:2962:6: (enumLiteral_1= 'no' ) + { + // InternalAlloyLanguage.g:2962:6: (enumLiteral_1= 'no' ) + // InternalAlloyLanguage.g:2962:8: enumLiteral_1= 'no' + { + enumLiteral_1=(Token)match(input,66,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSMultiplicityAccess().getNoEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getALSMultiplicityAccess().getNoEnumLiteralDeclaration_1()); + + } + + } + + + } + break; + case 3 : + // InternalAlloyLanguage.g:2968:6: (enumLiteral_2= 'some' ) + { + // InternalAlloyLanguage.g:2968:6: (enumLiteral_2= 'some' ) + // InternalAlloyLanguage.g:2968:8: enumLiteral_2= 'some' + { + enumLiteral_2=(Token)match(input,67,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSMultiplicityAccess().getSomeEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getALSMultiplicityAccess().getSomeEnumLiteralDeclaration_2()); + + } + + } + + + } + break; + case 4 : + // InternalAlloyLanguage.g:2974:6: (enumLiteral_3= 'lone' ) + { + // InternalAlloyLanguage.g:2974:6: (enumLiteral_3= 'lone' ) + // InternalAlloyLanguage.g:2974:8: enumLiteral_3= 'lone' + { + enumLiteral_3=(Token)match(input,68,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSMultiplicityAccess().getLoneEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getALSMultiplicityAccess().getLoneEnumLiteralDeclaration_3()); + + } + + } + + + } + break; + case 5 : + // InternalAlloyLanguage.g:2980:6: (enumLiteral_4= 'one' ) + { + // InternalAlloyLanguage.g:2980:6: (enumLiteral_4= 'one' ) + // InternalAlloyLanguage.g:2980:8: enumLiteral_4= 'one' + { + enumLiteral_4=(Token)match(input,69,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSMultiplicityAccess().getOneEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_4, grammarAccess.getALSMultiplicityAccess().getOneEnumLiteralDeclaration_4()); + + } + + } + + + } + break; + case 6 : + // InternalAlloyLanguage.g:2986:6: (enumLiteral_5= 'set' ) + { + // InternalAlloyLanguage.g:2986:6: (enumLiteral_5= 'set' ) + // InternalAlloyLanguage.g:2986:8: enumLiteral_5= 'set' + { + enumLiteral_5=(Token)match(input,70,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSMultiplicityAccess().getSetEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_5, grammarAccess.getALSMultiplicityAccess().getSetEnumLiteralDeclaration_5()); + + } + + } + + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSMultiplicity" + + + // $ANTLR start "ruleALSNumericOperator" + // InternalAlloyLanguage.g:2996:1: ruleALSNumericOperator returns [Enumerator current=null] : ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) ; + public final Enumerator ruleALSNumericOperator() throws RecognitionException { + Enumerator current = null; + + Token enumLiteral_0=null; + Token enumLiteral_1=null; + Token enumLiteral_2=null; + Token enumLiteral_3=null; + Token enumLiteral_4=null; + + enterRule(); + try { + // InternalAlloyLanguage.g:2998:28: ( ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) ) + // InternalAlloyLanguage.g:2999:1: ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) + { + // InternalAlloyLanguage.g:2999:1: ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) + int alt49=5; + switch ( input.LA(1) ) { + case 71: + { + alt49=1; + } + break; + case 72: + { + alt49=2; + } + break; + case 73: + { + alt49=3; + } + break; + case 74: + { + alt49=4; + } + break; + case 75: + { + alt49=5; + } + break; + default: + if (state.backtracking>0) {state.failed=true; return current;} + NoViableAltException nvae = + new NoViableAltException("", 49, 0, input); + + throw nvae; + } + + switch (alt49) { + case 1 : + // InternalAlloyLanguage.g:2999:2: (enumLiteral_0= 'plus' ) + { + // InternalAlloyLanguage.g:2999:2: (enumLiteral_0= 'plus' ) + // InternalAlloyLanguage.g:2999:4: enumLiteral_0= 'plus' + { + enumLiteral_0=(Token)match(input,71,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSNumericOperatorAccess().getPlusEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getALSNumericOperatorAccess().getPlusEnumLiteralDeclaration_0()); + + } + + } + + + } + break; + case 2 : + // InternalAlloyLanguage.g:3005:6: (enumLiteral_1= 'sub' ) + { + // InternalAlloyLanguage.g:3005:6: (enumLiteral_1= 'sub' ) + // InternalAlloyLanguage.g:3005:8: enumLiteral_1= 'sub' + { + enumLiteral_1=(Token)match(input,72,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSNumericOperatorAccess().getSubEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getALSNumericOperatorAccess().getSubEnumLiteralDeclaration_1()); + + } + + } + + + } + break; + case 3 : + // InternalAlloyLanguage.g:3011:6: (enumLiteral_2= 'mul' ) + { + // InternalAlloyLanguage.g:3011:6: (enumLiteral_2= 'mul' ) + // InternalAlloyLanguage.g:3011:8: enumLiteral_2= 'mul' + { + enumLiteral_2=(Token)match(input,73,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSNumericOperatorAccess().getMulEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getALSNumericOperatorAccess().getMulEnumLiteralDeclaration_2()); + + } + + } + + + } + break; + case 4 : + // InternalAlloyLanguage.g:3017:6: (enumLiteral_3= 'rem' ) + { + // InternalAlloyLanguage.g:3017:6: (enumLiteral_3= 'rem' ) + // InternalAlloyLanguage.g:3017:8: enumLiteral_3= 'rem' + { + enumLiteral_3=(Token)match(input,74,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSNumericOperatorAccess().getRemEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getALSNumericOperatorAccess().getRemEnumLiteralDeclaration_3()); + + } + + } + + + } + break; + case 5 : + // InternalAlloyLanguage.g:3023:6: (enumLiteral_4= 'div' ) + { + // InternalAlloyLanguage.g:3023:6: (enumLiteral_4= 'div' ) + // InternalAlloyLanguage.g:3023:8: enumLiteral_4= 'div' + { + enumLiteral_4=(Token)match(input,75,FOLLOW_2); if (state.failed) return current; + if ( state.backtracking==0 ) { + + current = grammarAccess.getALSNumericOperatorAccess().getDivEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_4, grammarAccess.getALSNumericOperatorAccess().getDivEnumLiteralDeclaration_4()); + + } + + } + + + } + break; + + } + + + } + + if ( state.backtracking==0 ) { + leaveRule(); + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleALSNumericOperator" + + // Delegated rules + + + protected DFA10 dfa10 = new DFA10(this); + protected DFA42 dfa42 = new DFA42(this); + static final String dfa_1s = "\12\uffff"; + static final String dfa_2s = "\10\uffff\1\11\1\uffff"; + static final String dfa_3s = "\7\4\1\uffff\1\15\1\uffff"; + static final String dfa_4s = "\7\113\1\uffff\1\106\1\uffff"; + static final String dfa_5s = "\7\uffff\1\2\1\uffff\1\1"; + static final String dfa_6s = "\12\uffff}>"; + static final String[] dfa_7s = { + "\2\7\50\uffff\1\7\2\uffff\14\7\4\uffff\1\1\1\2\1\3\1\4\1\5\1\6\5\7", + "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", + "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", + "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", + "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", + "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", + "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", + "", + "\2\11\3\uffff\2\11\1\7\1\uffff\1\11\4\uffff\6\11\1\uffff\17\11\20\uffff\6\11", + "" + }; + + static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); + static final short[] dfa_2 = DFA.unpackEncodedString(dfa_2s); + static final char[] dfa_3 = DFA.unpackEncodedStringToUnsignedChars(dfa_3s); + static final char[] dfa_4 = DFA.unpackEncodedStringToUnsignedChars(dfa_4s); + static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s); + static final short[] dfa_6 = DFA.unpackEncodedString(dfa_6s); + static final short[][] dfa_7 = unpackEncodedStringArray(dfa_7s); + + class DFA10 extends DFA { + + public DFA10(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 10; + this.eot = dfa_1; + this.eof = dfa_2; + this.min = dfa_3; + this.max = dfa_4; + this.accept = dfa_5; + this.special = dfa_6; + this.transition = dfa_7; + } + public String getDescription() { + return "713:1: ( (lv_multiplicity_2_0= ruleALSMultiplicity ) )?"; + } + } + static final String dfa_8s = "\13\uffff"; + static final String dfa_9s = "\10\uffff\1\12\2\uffff"; + static final String dfa_10s = "\1\4\7\uffff\1\14\2\uffff"; + static final String dfa_11s = "\1\113\7\uffff\1\106\2\uffff"; + static final String dfa_12s = "\1\uffff\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\uffff\1\10\1\11"; + static final String dfa_13s = "\13\uffff}>"; + static final String[] dfa_14s = { + "\1\10\1\12\50\uffff\1\6\2\uffff\2\1\1\2\1\3\1\4\1\5\1\7\5\12\12\uffff\5\11", + "", + "", + "", + "", + "", + "", + "", + "\3\12\3\uffff\2\12\2\uffff\1\11\1\12\3\uffff\26\12\14\uffff\1\12\3\uffff\6\12", + "", + "" + }; + + static final short[] dfa_8 = DFA.unpackEncodedString(dfa_8s); + static final short[] dfa_9 = DFA.unpackEncodedString(dfa_9s); + static final char[] dfa_10 = DFA.unpackEncodedStringToUnsignedChars(dfa_10s); + static final char[] dfa_11 = DFA.unpackEncodedStringToUnsignedChars(dfa_11s); + static final short[] dfa_12 = DFA.unpackEncodedString(dfa_12s); + static final short[] dfa_13 = DFA.unpackEncodedString(dfa_13s); + static final short[][] dfa_14 = unpackEncodedStringArray(dfa_14s); + + class DFA42 extends DFA { + + public DFA42(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 42; + this.eot = dfa_8; + this.eof = dfa_9; + this.min = dfa_10; + this.max = dfa_11; + this.accept = dfa_12; + this.special = dfa_13; + this.transition = dfa_14; + } + public String getDescription() { + return "2167:1: ( ( () ( ( ( '!' | 'not' ) )=> (otherlv_1= '!' | otherlv_2= 'not' ) ) ( (lv_operand_3_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '~' )=>otherlv_5= '~' ) ( (lv_operand_6_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_8= '^' ( (lv_operand_9_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_11= '*' ( (lv_operand_12_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_14= '#' ( (lv_operand_15_0= ruleALSBasicRelationTerm ) ) ) | ( () ( ( '-' )=>otherlv_17= '-' ) ( (lv_operand_18_0= ruleALSBasicRelationTerm ) ) ) | ( () otherlv_20= 'sum' ( (lv_variables_21_0= ruleALSVariableDeclaration ) ) (otherlv_22= ',' ( (lv_variables_23_0= ruleALSVariableDeclaration ) ) )* otherlv_24= '{' ( (lv_expression_25_0= ruleALSTerm ) ) otherlv_26= '}' ) | ( () ( ( (otherlv_28= RULE_ID ) ) | ( (lv_referredNumericOperator_29_0= ruleALSNumericOperator ) ) ) otherlv_30= '[' ( (lv_params_31_0= ruleALSTerm ) ) (otherlv_32= ',' ( (lv_params_33_0= ruleALSTerm ) ) )* otherlv_34= ']' ) | this_ALSBasicRelationTerm_35= ruleALSBasicRelationTerm )"; + } + } + + + public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); + public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x4000000003218800L,0x000000000000007EL}); + public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000010L}); + public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000001000L}); + public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000006000L}); + public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000018000L,0x000000000000007EL}); + public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000063000L}); + public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000081000L}); + public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000004010L}); + public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x1FFE400000000030L,0x0000000000000FFEL}); + public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000400000L}); + public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000802000L}); + public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000004000L}); + public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000001010L}); + public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000004000010L}); + public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000003000L}); + public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000018000002L}); + public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000060000002L}); + public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000180000002L}); + public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000200000002L}); + public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000C00000002L}); + public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x000003F000040002L}); + public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000040000000002L}); + public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000080000000002L}); + public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000100000000002L}); + public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000200000000002L}); + public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000400000000002L}); + public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000000080002L}); + public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000800000000002L}); + public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0001000000000002L,0x000000000000007EL}); + public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0001000000000000L}); + public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x2000000000000000L}); + public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x8000000000000002L}); + public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000000000020L,0x0000000000000001L}); + public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000000002002L}); + public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000000000000020L}); + public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0800000000000000L}); + +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSemanticSequencer.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSemanticSequencer.java new file mode 100644 index 00000000..b46c4575 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSemanticSequencer.java @@ -0,0 +1,2235 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner.serializer; + +import com.google.inject.Inject; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSAnd; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSCardinality; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDirectProduct; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEnumLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSEquals; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFactDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFieldDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionCall; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSFunctionDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIden; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIff; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSImpl; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInt; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSIntersection; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSInverseRelation; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSJoin; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLeq; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSLess; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMeq; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMinus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSMore; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNone; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNot; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNotEquals; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSNumberLiteral; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOr; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSOverride; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSPlus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSQuantifiedEx; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionLeft; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRangeRestrictionRight; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReference; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSReflectiveTransitiveClosure; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRelationDefinition; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSRunCommand; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSigScope; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureBody; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSignatureDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSubset; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSSum; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUnaryMinus; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSUniv; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSVariableDeclaration; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlSTransitiveClosure; +import hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage; +import hu.bme.mit.inf.dslreasoner.services.AlloyLanguageGrammarAccess; +import java.util.Set; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.xtext.Action; +import org.eclipse.xtext.Parameter; +import org.eclipse.xtext.ParserRule; +import org.eclipse.xtext.serializer.ISerializationContext; +import org.eclipse.xtext.serializer.acceptor.SequenceFeeder; +import org.eclipse.xtext.serializer.sequencer.AbstractDelegatingSemanticSequencer; +import org.eclipse.xtext.serializer.sequencer.ITransientValueService.ValueTransient; + +@SuppressWarnings("all") +public class AlloyLanguageSemanticSequencer extends AbstractDelegatingSemanticSequencer { + + @Inject + private AlloyLanguageGrammarAccess grammarAccess; + + @Override + public void sequence(ISerializationContext context, EObject semanticObject) { + EPackage epackage = semanticObject.eClass().getEPackage(); + ParserRule rule = context.getParserRule(); + Action action = context.getAssignedAction(); + Set parameters = context.getEnabledBooleanParameters(); + if (epackage == AlloyLanguagePackage.eINSTANCE) + switch (semanticObject.eClass().getClassifierID()) { + case AlloyLanguagePackage.ALS_AND: + sequence_ALSAnd(context, (ALSAnd) semanticObject); + return; + case AlloyLanguagePackage.ALS_CARDINALITY: + sequence_ALSPreficed(context, (ALSCardinality) semanticObject); + return; + case AlloyLanguagePackage.ALS_DIRECT_PRODUCT: + sequence_ALSDirectProduct(context, (ALSDirectProduct) semanticObject); + return; + case AlloyLanguagePackage.ALS_DOCUMENT: + sequence_ALSDocument(context, (ALSDocument) semanticObject); + return; + case AlloyLanguagePackage.ALS_ENUM_DECLARATION: + sequence_ALSEnumDeclaration(context, (ALSEnumDeclaration) semanticObject); + return; + case AlloyLanguagePackage.ALS_ENUM_LITERAL: + sequence_ALSEnumLiteral(context, (ALSEnumLiteral) semanticObject); + return; + case AlloyLanguagePackage.ALS_EQUALS: + sequence_ALSComparison(context, (ALSEquals) semanticObject); + return; + case AlloyLanguagePackage.ALS_FACT_DECLARATION: + sequence_ALSFactDeclaration(context, (ALSFactDeclaration) semanticObject); + return; + case AlloyLanguagePackage.ALS_FIELD_DECLARATION: + sequence_ALSFieldDeclaration(context, (ALSFieldDeclaration) semanticObject); + return; + case AlloyLanguagePackage.ALS_FUNCTION_CALL: + sequence_ALSPreficed(context, (ALSFunctionCall) semanticObject); + return; + case AlloyLanguagePackage.ALS_FUNCTION_DEFINITION: + sequence_ALSFunctionDefinition(context, (ALSFunctionDefinition) semanticObject); + return; + case AlloyLanguagePackage.ALS_IDEN: + sequence_ALSBasicRelationTerm(context, (ALSIden) semanticObject); + return; + case AlloyLanguagePackage.ALS_IFF: + sequence_ALSIff(context, (ALSIff) semanticObject); + return; + case AlloyLanguagePackage.ALS_IMPL: + sequence_ALSImpl(context, (ALSImpl) semanticObject); + return; + case AlloyLanguagePackage.ALS_INT: + sequence_ALSBasicRelationTerm(context, (ALSInt) semanticObject); + return; + case AlloyLanguagePackage.ALS_INT_SCOPE: + sequence_ALSIntScope(context, (ALSIntScope) semanticObject); + return; + case AlloyLanguagePackage.ALS_INTERSECTION: + sequence_ALSIntersection(context, (ALSIntersection) semanticObject); + return; + case AlloyLanguagePackage.ALS_INVERSE_RELATION: + sequence_ALSPreficed(context, (ALSInverseRelation) semanticObject); + return; + case AlloyLanguagePackage.ALS_JOIN: + sequence_ALSJoin(context, (ALSJoin) semanticObject); + return; + case AlloyLanguagePackage.ALS_LEQ: + sequence_ALSComparison(context, (ALSLeq) semanticObject); + return; + case AlloyLanguagePackage.ALS_LESS: + sequence_ALSComparison(context, (ALSLess) semanticObject); + return; + case AlloyLanguagePackage.ALS_MEQ: + sequence_ALSComparison(context, (ALSMeq) semanticObject); + return; + case AlloyLanguagePackage.ALS_MINUS: + sequence_ALSMinus(context, (ALSMinus) semanticObject); + return; + case AlloyLanguagePackage.ALS_MORE: + sequence_ALSComparison(context, (ALSMore) semanticObject); + return; + case AlloyLanguagePackage.ALS_NONE: + sequence_ALSBasicRelationTerm(context, (ALSNone) semanticObject); + return; + case AlloyLanguagePackage.ALS_NOT: + sequence_ALSPreficed(context, (ALSNot) semanticObject); + return; + case AlloyLanguagePackage.ALS_NOT_EQUALS: + sequence_ALSComparison(context, (ALSNotEquals) semanticObject); + return; + case AlloyLanguagePackage.ALS_NUMBER_LITERAL: + sequence_ALSBasicRelationTerm(context, (ALSNumberLiteral) semanticObject); + return; + case AlloyLanguagePackage.ALS_OR: + sequence_ALSOr(context, (ALSOr) semanticObject); + return; + case AlloyLanguagePackage.ALS_OVERRIDE: + sequence_ALSOverride(context, (ALSOverride) semanticObject); + return; + case AlloyLanguagePackage.ALS_PLUS: + sequence_ALSPlus(context, (ALSPlus) semanticObject); + return; + case AlloyLanguagePackage.ALS_QUANTIFIED_EX: + sequence_ALSQuantified(context, (ALSQuantifiedEx) semanticObject); + return; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_LEFT: + sequence_ALSRangeRestrictionLeft(context, (ALSRangeRestrictionLeft) semanticObject); + return; + case AlloyLanguagePackage.ALS_RANGE_RESTRICTION_RIGHT: + sequence_ALSRangeRestrictionRight(context, (ALSRangeRestrictionRight) semanticObject); + return; + case AlloyLanguagePackage.ALS_REFERENCE: + sequence_ALSBasicRelationTerm(context, (ALSReference) semanticObject); + return; + case AlloyLanguagePackage.ALS_REFLECTIVE_TRANSITIVE_CLOSURE: + sequence_ALSPreficed(context, (ALSReflectiveTransitiveClosure) semanticObject); + return; + case AlloyLanguagePackage.ALS_RELATION_DEFINITION: + sequence_ALSRelationDefinition(context, (ALSRelationDefinition) semanticObject); + return; + case AlloyLanguagePackage.ALS_RUN_COMMAND: + sequence_ALSRunCommand(context, (ALSRunCommand) semanticObject); + return; + case AlloyLanguagePackage.ALS_SIG_SCOPE: + sequence_ALSSigScope(context, (ALSSigScope) semanticObject); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_BODY: + sequence_ALSSignatureBody(context, (ALSSignatureBody) semanticObject); + return; + case AlloyLanguagePackage.ALS_SIGNATURE_DECLARATION: + sequence_ALSSignatureDeclaration(context, (ALSSignatureDeclaration) semanticObject); + return; + case AlloyLanguagePackage.ALS_SUBSET: + sequence_ALSComparison(context, (ALSSubset) semanticObject); + return; + case AlloyLanguagePackage.ALS_SUM: + sequence_ALSPreficed(context, (ALSSum) semanticObject); + return; + case AlloyLanguagePackage.ALS_UNARY_MINUS: + sequence_ALSPreficed(context, (ALSUnaryMinus) semanticObject); + return; + case AlloyLanguagePackage.ALS_UNIV: + sequence_ALSBasicRelationTerm(context, (ALSUniv) semanticObject); + return; + case AlloyLanguagePackage.ALS_VARIABLE_DECLARATION: + sequence_ALSVariableDeclaration(context, (ALSVariableDeclaration) semanticObject); + return; + case AlloyLanguagePackage.AL_STRANSITIVE_CLOSURE: + sequence_ALSPreficed(context, (AlSTransitiveClosure) semanticObject); + return; + } + if (errorAcceptor != null) + errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context)); + } + + /** + * Contexts: + * ALSTerm returns ALSAnd + * ALSQuantified returns ALSAnd + * ALSOr returns ALSAnd + * ALSOr.ALSOr_1_0 returns ALSAnd + * ALSIff returns ALSAnd + * ALSIff.ALSIff_1_0 returns ALSAnd + * ALSImpl returns ALSAnd + * ALSImpl.ALSImpl_1_0 returns ALSAnd + * ALSAnd returns ALSAnd + * ALSAnd.ALSAnd_1_0 returns ALSAnd + * ALSComparison returns ALSAnd + * ALSComparison.ALSEquals_1_0_0_0 returns ALSAnd + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSAnd + * ALSComparison.ALSSubset_1_0_2_0 returns ALSAnd + * ALSComparison.ALSLess_1_0_3_0 returns ALSAnd + * ALSComparison.ALSLeq_1_0_4_0 returns ALSAnd + * ALSComparison.ALSMore_1_0_5_0 returns ALSAnd + * ALSComparison.ALSMeq_1_0_6_0 returns ALSAnd + * ALSOverride returns ALSAnd + * ALSOverride.ALSOverride_1_0 returns ALSAnd + * ALSRangeRestrictionRight returns ALSAnd + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSAnd + * ALSRangeRestrictionLeft returns ALSAnd + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSAnd + * ALSJoin returns ALSAnd + * ALSJoin.ALSJoin_1_0 returns ALSAnd + * ALSMinus returns ALSAnd + * ALSMinus.ALSMinus_1_0 returns ALSAnd + * ALSPlus returns ALSAnd + * ALSPlus.ALSPlus_1_0 returns ALSAnd + * ALSIntersection returns ALSAnd + * ALSIntersection.ALSIntersection_1_0 returns ALSAnd + * ALSDirectProduct returns ALSAnd + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSAnd + * ALSPreficed returns ALSAnd + * ALSBasicRelationTerm returns ALSAnd + * + * Constraint: + * (leftOperand=ALSAnd_ALSAnd_1_0 rightOperand=ALSComparison) + */ + protected void sequence_ALSAnd(ISerializationContext context, ALSAnd semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_AND__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_AND__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_AND__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_AND__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSAndAccess().getALSAndLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSAndAccess().getRightOperandALSComparisonParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSIden + * ALSQuantified returns ALSIden + * ALSOr returns ALSIden + * ALSOr.ALSOr_1_0 returns ALSIden + * ALSIff returns ALSIden + * ALSIff.ALSIff_1_0 returns ALSIden + * ALSImpl returns ALSIden + * ALSImpl.ALSImpl_1_0 returns ALSIden + * ALSAnd returns ALSIden + * ALSAnd.ALSAnd_1_0 returns ALSIden + * ALSComparison returns ALSIden + * ALSComparison.ALSEquals_1_0_0_0 returns ALSIden + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSIden + * ALSComparison.ALSSubset_1_0_2_0 returns ALSIden + * ALSComparison.ALSLess_1_0_3_0 returns ALSIden + * ALSComparison.ALSLeq_1_0_4_0 returns ALSIden + * ALSComparison.ALSMore_1_0_5_0 returns ALSIden + * ALSComparison.ALSMeq_1_0_6_0 returns ALSIden + * ALSOverride returns ALSIden + * ALSOverride.ALSOverride_1_0 returns ALSIden + * ALSRangeRestrictionRight returns ALSIden + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSIden + * ALSRangeRestrictionLeft returns ALSIden + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSIden + * ALSJoin returns ALSIden + * ALSJoin.ALSJoin_1_0 returns ALSIden + * ALSMinus returns ALSIden + * ALSMinus.ALSMinus_1_0 returns ALSIden + * ALSPlus returns ALSIden + * ALSPlus.ALSPlus_1_0 returns ALSIden + * ALSIntersection returns ALSIden + * ALSIntersection.ALSIntersection_1_0 returns ALSIden + * ALSDirectProduct returns ALSIden + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSIden + * ALSPreficed returns ALSIden + * ALSBasicRelationTerm returns ALSIden + * + * Constraint: + * {ALSIden} + */ + protected void sequence_ALSBasicRelationTerm(ISerializationContext context, ALSIden semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSInt + * ALSQuantified returns ALSInt + * ALSOr returns ALSInt + * ALSOr.ALSOr_1_0 returns ALSInt + * ALSIff returns ALSInt + * ALSIff.ALSIff_1_0 returns ALSInt + * ALSImpl returns ALSInt + * ALSImpl.ALSImpl_1_0 returns ALSInt + * ALSAnd returns ALSInt + * ALSAnd.ALSAnd_1_0 returns ALSInt + * ALSComparison returns ALSInt + * ALSComparison.ALSEquals_1_0_0_0 returns ALSInt + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSInt + * ALSComparison.ALSSubset_1_0_2_0 returns ALSInt + * ALSComparison.ALSLess_1_0_3_0 returns ALSInt + * ALSComparison.ALSLeq_1_0_4_0 returns ALSInt + * ALSComparison.ALSMore_1_0_5_0 returns ALSInt + * ALSComparison.ALSMeq_1_0_6_0 returns ALSInt + * ALSOverride returns ALSInt + * ALSOverride.ALSOverride_1_0 returns ALSInt + * ALSRangeRestrictionRight returns ALSInt + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSInt + * ALSRangeRestrictionLeft returns ALSInt + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSInt + * ALSJoin returns ALSInt + * ALSJoin.ALSJoin_1_0 returns ALSInt + * ALSMinus returns ALSInt + * ALSMinus.ALSMinus_1_0 returns ALSInt + * ALSPlus returns ALSInt + * ALSPlus.ALSPlus_1_0 returns ALSInt + * ALSIntersection returns ALSInt + * ALSIntersection.ALSIntersection_1_0 returns ALSInt + * ALSDirectProduct returns ALSInt + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSInt + * ALSPreficed returns ALSInt + * ALSBasicRelationTerm returns ALSInt + * + * Constraint: + * {ALSInt} + */ + protected void sequence_ALSBasicRelationTerm(ISerializationContext context, ALSInt semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSNone + * ALSQuantified returns ALSNone + * ALSOr returns ALSNone + * ALSOr.ALSOr_1_0 returns ALSNone + * ALSIff returns ALSNone + * ALSIff.ALSIff_1_0 returns ALSNone + * ALSImpl returns ALSNone + * ALSImpl.ALSImpl_1_0 returns ALSNone + * ALSAnd returns ALSNone + * ALSAnd.ALSAnd_1_0 returns ALSNone + * ALSComparison returns ALSNone + * ALSComparison.ALSEquals_1_0_0_0 returns ALSNone + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSNone + * ALSComparison.ALSSubset_1_0_2_0 returns ALSNone + * ALSComparison.ALSLess_1_0_3_0 returns ALSNone + * ALSComparison.ALSLeq_1_0_4_0 returns ALSNone + * ALSComparison.ALSMore_1_0_5_0 returns ALSNone + * ALSComparison.ALSMeq_1_0_6_0 returns ALSNone + * ALSOverride returns ALSNone + * ALSOverride.ALSOverride_1_0 returns ALSNone + * ALSRangeRestrictionRight returns ALSNone + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSNone + * ALSRangeRestrictionLeft returns ALSNone + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSNone + * ALSJoin returns ALSNone + * ALSJoin.ALSJoin_1_0 returns ALSNone + * ALSMinus returns ALSNone + * ALSMinus.ALSMinus_1_0 returns ALSNone + * ALSPlus returns ALSNone + * ALSPlus.ALSPlus_1_0 returns ALSNone + * ALSIntersection returns ALSNone + * ALSIntersection.ALSIntersection_1_0 returns ALSNone + * ALSDirectProduct returns ALSNone + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSNone + * ALSPreficed returns ALSNone + * ALSBasicRelationTerm returns ALSNone + * + * Constraint: + * {ALSNone} + */ + protected void sequence_ALSBasicRelationTerm(ISerializationContext context, ALSNone semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSNumberLiteral + * ALSQuantified returns ALSNumberLiteral + * ALSOr returns ALSNumberLiteral + * ALSOr.ALSOr_1_0 returns ALSNumberLiteral + * ALSIff returns ALSNumberLiteral + * ALSIff.ALSIff_1_0 returns ALSNumberLiteral + * ALSImpl returns ALSNumberLiteral + * ALSImpl.ALSImpl_1_0 returns ALSNumberLiteral + * ALSAnd returns ALSNumberLiteral + * ALSAnd.ALSAnd_1_0 returns ALSNumberLiteral + * ALSComparison returns ALSNumberLiteral + * ALSComparison.ALSEquals_1_0_0_0 returns ALSNumberLiteral + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSNumberLiteral + * ALSComparison.ALSSubset_1_0_2_0 returns ALSNumberLiteral + * ALSComparison.ALSLess_1_0_3_0 returns ALSNumberLiteral + * ALSComparison.ALSLeq_1_0_4_0 returns ALSNumberLiteral + * ALSComparison.ALSMore_1_0_5_0 returns ALSNumberLiteral + * ALSComparison.ALSMeq_1_0_6_0 returns ALSNumberLiteral + * ALSOverride returns ALSNumberLiteral + * ALSOverride.ALSOverride_1_0 returns ALSNumberLiteral + * ALSRangeRestrictionRight returns ALSNumberLiteral + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSNumberLiteral + * ALSRangeRestrictionLeft returns ALSNumberLiteral + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSNumberLiteral + * ALSJoin returns ALSNumberLiteral + * ALSJoin.ALSJoin_1_0 returns ALSNumberLiteral + * ALSMinus returns ALSNumberLiteral + * ALSMinus.ALSMinus_1_0 returns ALSNumberLiteral + * ALSPlus returns ALSNumberLiteral + * ALSPlus.ALSPlus_1_0 returns ALSNumberLiteral + * ALSIntersection returns ALSNumberLiteral + * ALSIntersection.ALSIntersection_1_0 returns ALSNumberLiteral + * ALSDirectProduct returns ALSNumberLiteral + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSNumberLiteral + * ALSPreficed returns ALSNumberLiteral + * ALSBasicRelationTerm returns ALSNumberLiteral + * + * Constraint: + * value=INT + */ + protected void sequence_ALSBasicRelationTerm(ISerializationContext context, ALSNumberLiteral semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_NUMBER_LITERAL__VALUE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_NUMBER_LITERAL__VALUE)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSBasicRelationTermAccess().getValueINTTerminalRuleCall_5_1_0(), semanticObject.getValue()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSReference + * ALSQuantified returns ALSReference + * ALSOr returns ALSReference + * ALSOr.ALSOr_1_0 returns ALSReference + * ALSIff returns ALSReference + * ALSIff.ALSIff_1_0 returns ALSReference + * ALSImpl returns ALSReference + * ALSImpl.ALSImpl_1_0 returns ALSReference + * ALSAnd returns ALSReference + * ALSAnd.ALSAnd_1_0 returns ALSReference + * ALSComparison returns ALSReference + * ALSComparison.ALSEquals_1_0_0_0 returns ALSReference + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSReference + * ALSComparison.ALSSubset_1_0_2_0 returns ALSReference + * ALSComparison.ALSLess_1_0_3_0 returns ALSReference + * ALSComparison.ALSLeq_1_0_4_0 returns ALSReference + * ALSComparison.ALSMore_1_0_5_0 returns ALSReference + * ALSComparison.ALSMeq_1_0_6_0 returns ALSReference + * ALSOverride returns ALSReference + * ALSOverride.ALSOverride_1_0 returns ALSReference + * ALSRangeRestrictionRight returns ALSReference + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSReference + * ALSRangeRestrictionLeft returns ALSReference + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSReference + * ALSJoin returns ALSReference + * ALSJoin.ALSJoin_1_0 returns ALSReference + * ALSMinus returns ALSReference + * ALSMinus.ALSMinus_1_0 returns ALSReference + * ALSPlus returns ALSReference + * ALSPlus.ALSPlus_1_0 returns ALSReference + * ALSIntersection returns ALSReference + * ALSIntersection.ALSIntersection_1_0 returns ALSReference + * ALSDirectProduct returns ALSReference + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSReference + * ALSPreficed returns ALSReference + * ALSBasicRelationTerm returns ALSReference + * + * Constraint: + * referred=[ALSRelationDeclaration|ID] + */ + protected void sequence_ALSBasicRelationTerm(ISerializationContext context, ALSReference semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_REFERENCE__REFERRED) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_REFERENCE__REFERRED)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSBasicRelationTermAccess().getReferredALSRelationDeclarationIDTerminalRuleCall_4_1_0_1(), semanticObject.eGet(AlloyLanguagePackage.Literals.ALS_REFERENCE__REFERRED, false)); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSUniv + * ALSQuantified returns ALSUniv + * ALSOr returns ALSUniv + * ALSOr.ALSOr_1_0 returns ALSUniv + * ALSIff returns ALSUniv + * ALSIff.ALSIff_1_0 returns ALSUniv + * ALSImpl returns ALSUniv + * ALSImpl.ALSImpl_1_0 returns ALSUniv + * ALSAnd returns ALSUniv + * ALSAnd.ALSAnd_1_0 returns ALSUniv + * ALSComparison returns ALSUniv + * ALSComparison.ALSEquals_1_0_0_0 returns ALSUniv + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSUniv + * ALSComparison.ALSSubset_1_0_2_0 returns ALSUniv + * ALSComparison.ALSLess_1_0_3_0 returns ALSUniv + * ALSComparison.ALSLeq_1_0_4_0 returns ALSUniv + * ALSComparison.ALSMore_1_0_5_0 returns ALSUniv + * ALSComparison.ALSMeq_1_0_6_0 returns ALSUniv + * ALSOverride returns ALSUniv + * ALSOverride.ALSOverride_1_0 returns ALSUniv + * ALSRangeRestrictionRight returns ALSUniv + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSUniv + * ALSRangeRestrictionLeft returns ALSUniv + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSUniv + * ALSJoin returns ALSUniv + * ALSJoin.ALSJoin_1_0 returns ALSUniv + * ALSMinus returns ALSUniv + * ALSMinus.ALSMinus_1_0 returns ALSUniv + * ALSPlus returns ALSUniv + * ALSPlus.ALSPlus_1_0 returns ALSUniv + * ALSIntersection returns ALSUniv + * ALSIntersection.ALSIntersection_1_0 returns ALSUniv + * ALSDirectProduct returns ALSUniv + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSUniv + * ALSPreficed returns ALSUniv + * ALSBasicRelationTerm returns ALSUniv + * + * Constraint: + * {ALSUniv} + */ + protected void sequence_ALSBasicRelationTerm(ISerializationContext context, ALSUniv semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSEquals + * ALSQuantified returns ALSEquals + * ALSOr returns ALSEquals + * ALSOr.ALSOr_1_0 returns ALSEquals + * ALSIff returns ALSEquals + * ALSIff.ALSIff_1_0 returns ALSEquals + * ALSImpl returns ALSEquals + * ALSImpl.ALSImpl_1_0 returns ALSEquals + * ALSAnd returns ALSEquals + * ALSAnd.ALSAnd_1_0 returns ALSEquals + * ALSComparison returns ALSEquals + * ALSComparison.ALSEquals_1_0_0_0 returns ALSEquals + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSEquals + * ALSComparison.ALSSubset_1_0_2_0 returns ALSEquals + * ALSComparison.ALSLess_1_0_3_0 returns ALSEquals + * ALSComparison.ALSLeq_1_0_4_0 returns ALSEquals + * ALSComparison.ALSMore_1_0_5_0 returns ALSEquals + * ALSComparison.ALSMeq_1_0_6_0 returns ALSEquals + * ALSOverride returns ALSEquals + * ALSOverride.ALSOverride_1_0 returns ALSEquals + * ALSRangeRestrictionRight returns ALSEquals + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSEquals + * ALSRangeRestrictionLeft returns ALSEquals + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSEquals + * ALSJoin returns ALSEquals + * ALSJoin.ALSJoin_1_0 returns ALSEquals + * ALSMinus returns ALSEquals + * ALSMinus.ALSMinus_1_0 returns ALSEquals + * ALSPlus returns ALSEquals + * ALSPlus.ALSPlus_1_0 returns ALSEquals + * ALSIntersection returns ALSEquals + * ALSIntersection.ALSIntersection_1_0 returns ALSEquals + * ALSDirectProduct returns ALSEquals + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSEquals + * ALSPreficed returns ALSEquals + * ALSBasicRelationTerm returns ALSEquals + * + * Constraint: + * (leftOperand=ALSComparison_ALSEquals_1_0_0_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSEquals semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_EQUALS__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_EQUALS__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_EQUALS__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_EQUALS__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSEqualsLeftOperandAction_1_0_0_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSLeq + * ALSQuantified returns ALSLeq + * ALSOr returns ALSLeq + * ALSOr.ALSOr_1_0 returns ALSLeq + * ALSIff returns ALSLeq + * ALSIff.ALSIff_1_0 returns ALSLeq + * ALSImpl returns ALSLeq + * ALSImpl.ALSImpl_1_0 returns ALSLeq + * ALSAnd returns ALSLeq + * ALSAnd.ALSAnd_1_0 returns ALSLeq + * ALSComparison returns ALSLeq + * ALSComparison.ALSEquals_1_0_0_0 returns ALSLeq + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSLeq + * ALSComparison.ALSSubset_1_0_2_0 returns ALSLeq + * ALSComparison.ALSLess_1_0_3_0 returns ALSLeq + * ALSComparison.ALSLeq_1_0_4_0 returns ALSLeq + * ALSComparison.ALSMore_1_0_5_0 returns ALSLeq + * ALSComparison.ALSMeq_1_0_6_0 returns ALSLeq + * ALSOverride returns ALSLeq + * ALSOverride.ALSOverride_1_0 returns ALSLeq + * ALSRangeRestrictionRight returns ALSLeq + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSLeq + * ALSRangeRestrictionLeft returns ALSLeq + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSLeq + * ALSJoin returns ALSLeq + * ALSJoin.ALSJoin_1_0 returns ALSLeq + * ALSMinus returns ALSLeq + * ALSMinus.ALSMinus_1_0 returns ALSLeq + * ALSPlus returns ALSLeq + * ALSPlus.ALSPlus_1_0 returns ALSLeq + * ALSIntersection returns ALSLeq + * ALSIntersection.ALSIntersection_1_0 returns ALSLeq + * ALSDirectProduct returns ALSLeq + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSLeq + * ALSPreficed returns ALSLeq + * ALSBasicRelationTerm returns ALSLeq + * + * Constraint: + * (leftOperand=ALSComparison_ALSLeq_1_0_4_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSLeq semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_LEQ__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_LEQ__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_LEQ__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_LEQ__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSLeqLeftOperandAction_1_0_4_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSLess + * ALSQuantified returns ALSLess + * ALSOr returns ALSLess + * ALSOr.ALSOr_1_0 returns ALSLess + * ALSIff returns ALSLess + * ALSIff.ALSIff_1_0 returns ALSLess + * ALSImpl returns ALSLess + * ALSImpl.ALSImpl_1_0 returns ALSLess + * ALSAnd returns ALSLess + * ALSAnd.ALSAnd_1_0 returns ALSLess + * ALSComparison returns ALSLess + * ALSComparison.ALSEquals_1_0_0_0 returns ALSLess + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSLess + * ALSComparison.ALSSubset_1_0_2_0 returns ALSLess + * ALSComparison.ALSLess_1_0_3_0 returns ALSLess + * ALSComparison.ALSLeq_1_0_4_0 returns ALSLess + * ALSComparison.ALSMore_1_0_5_0 returns ALSLess + * ALSComparison.ALSMeq_1_0_6_0 returns ALSLess + * ALSOverride returns ALSLess + * ALSOverride.ALSOverride_1_0 returns ALSLess + * ALSRangeRestrictionRight returns ALSLess + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSLess + * ALSRangeRestrictionLeft returns ALSLess + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSLess + * ALSJoin returns ALSLess + * ALSJoin.ALSJoin_1_0 returns ALSLess + * ALSMinus returns ALSLess + * ALSMinus.ALSMinus_1_0 returns ALSLess + * ALSPlus returns ALSLess + * ALSPlus.ALSPlus_1_0 returns ALSLess + * ALSIntersection returns ALSLess + * ALSIntersection.ALSIntersection_1_0 returns ALSLess + * ALSDirectProduct returns ALSLess + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSLess + * ALSPreficed returns ALSLess + * ALSBasicRelationTerm returns ALSLess + * + * Constraint: + * (leftOperand=ALSComparison_ALSLess_1_0_3_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSLess semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_LESS__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_LESS__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_LESS__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_LESS__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSLessLeftOperandAction_1_0_3_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSMeq + * ALSQuantified returns ALSMeq + * ALSOr returns ALSMeq + * ALSOr.ALSOr_1_0 returns ALSMeq + * ALSIff returns ALSMeq + * ALSIff.ALSIff_1_0 returns ALSMeq + * ALSImpl returns ALSMeq + * ALSImpl.ALSImpl_1_0 returns ALSMeq + * ALSAnd returns ALSMeq + * ALSAnd.ALSAnd_1_0 returns ALSMeq + * ALSComparison returns ALSMeq + * ALSComparison.ALSEquals_1_0_0_0 returns ALSMeq + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSMeq + * ALSComparison.ALSSubset_1_0_2_0 returns ALSMeq + * ALSComparison.ALSLess_1_0_3_0 returns ALSMeq + * ALSComparison.ALSLeq_1_0_4_0 returns ALSMeq + * ALSComparison.ALSMore_1_0_5_0 returns ALSMeq + * ALSComparison.ALSMeq_1_0_6_0 returns ALSMeq + * ALSOverride returns ALSMeq + * ALSOverride.ALSOverride_1_0 returns ALSMeq + * ALSRangeRestrictionRight returns ALSMeq + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSMeq + * ALSRangeRestrictionLeft returns ALSMeq + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSMeq + * ALSJoin returns ALSMeq + * ALSJoin.ALSJoin_1_0 returns ALSMeq + * ALSMinus returns ALSMeq + * ALSMinus.ALSMinus_1_0 returns ALSMeq + * ALSPlus returns ALSMeq + * ALSPlus.ALSPlus_1_0 returns ALSMeq + * ALSIntersection returns ALSMeq + * ALSIntersection.ALSIntersection_1_0 returns ALSMeq + * ALSDirectProduct returns ALSMeq + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSMeq + * ALSPreficed returns ALSMeq + * ALSBasicRelationTerm returns ALSMeq + * + * Constraint: + * (leftOperand=ALSComparison_ALSMeq_1_0_6_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSMeq semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_MEQ__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_MEQ__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_MEQ__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_MEQ__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSMeqLeftOperandAction_1_0_6_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSMore + * ALSQuantified returns ALSMore + * ALSOr returns ALSMore + * ALSOr.ALSOr_1_0 returns ALSMore + * ALSIff returns ALSMore + * ALSIff.ALSIff_1_0 returns ALSMore + * ALSImpl returns ALSMore + * ALSImpl.ALSImpl_1_0 returns ALSMore + * ALSAnd returns ALSMore + * ALSAnd.ALSAnd_1_0 returns ALSMore + * ALSComparison returns ALSMore + * ALSComparison.ALSEquals_1_0_0_0 returns ALSMore + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSMore + * ALSComparison.ALSSubset_1_0_2_0 returns ALSMore + * ALSComparison.ALSLess_1_0_3_0 returns ALSMore + * ALSComparison.ALSLeq_1_0_4_0 returns ALSMore + * ALSComparison.ALSMore_1_0_5_0 returns ALSMore + * ALSComparison.ALSMeq_1_0_6_0 returns ALSMore + * ALSOverride returns ALSMore + * ALSOverride.ALSOverride_1_0 returns ALSMore + * ALSRangeRestrictionRight returns ALSMore + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSMore + * ALSRangeRestrictionLeft returns ALSMore + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSMore + * ALSJoin returns ALSMore + * ALSJoin.ALSJoin_1_0 returns ALSMore + * ALSMinus returns ALSMore + * ALSMinus.ALSMinus_1_0 returns ALSMore + * ALSPlus returns ALSMore + * ALSPlus.ALSPlus_1_0 returns ALSMore + * ALSIntersection returns ALSMore + * ALSIntersection.ALSIntersection_1_0 returns ALSMore + * ALSDirectProduct returns ALSMore + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSMore + * ALSPreficed returns ALSMore + * ALSBasicRelationTerm returns ALSMore + * + * Constraint: + * (leftOperand=ALSComparison_ALSMore_1_0_5_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSMore semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_MORE__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_MORE__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_MORE__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_MORE__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSMoreLeftOperandAction_1_0_5_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSNotEquals + * ALSQuantified returns ALSNotEquals + * ALSOr returns ALSNotEquals + * ALSOr.ALSOr_1_0 returns ALSNotEquals + * ALSIff returns ALSNotEquals + * ALSIff.ALSIff_1_0 returns ALSNotEquals + * ALSImpl returns ALSNotEquals + * ALSImpl.ALSImpl_1_0 returns ALSNotEquals + * ALSAnd returns ALSNotEquals + * ALSAnd.ALSAnd_1_0 returns ALSNotEquals + * ALSComparison returns ALSNotEquals + * ALSComparison.ALSEquals_1_0_0_0 returns ALSNotEquals + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSNotEquals + * ALSComparison.ALSSubset_1_0_2_0 returns ALSNotEquals + * ALSComparison.ALSLess_1_0_3_0 returns ALSNotEquals + * ALSComparison.ALSLeq_1_0_4_0 returns ALSNotEquals + * ALSComparison.ALSMore_1_0_5_0 returns ALSNotEquals + * ALSComparison.ALSMeq_1_0_6_0 returns ALSNotEquals + * ALSOverride returns ALSNotEquals + * ALSOverride.ALSOverride_1_0 returns ALSNotEquals + * ALSRangeRestrictionRight returns ALSNotEquals + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSNotEquals + * ALSRangeRestrictionLeft returns ALSNotEquals + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSNotEquals + * ALSJoin returns ALSNotEquals + * ALSJoin.ALSJoin_1_0 returns ALSNotEquals + * ALSMinus returns ALSNotEquals + * ALSMinus.ALSMinus_1_0 returns ALSNotEquals + * ALSPlus returns ALSNotEquals + * ALSPlus.ALSPlus_1_0 returns ALSNotEquals + * ALSIntersection returns ALSNotEquals + * ALSIntersection.ALSIntersection_1_0 returns ALSNotEquals + * ALSDirectProduct returns ALSNotEquals + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSNotEquals + * ALSPreficed returns ALSNotEquals + * ALSBasicRelationTerm returns ALSNotEquals + * + * Constraint: + * (leftOperand=ALSComparison_ALSNotEquals_1_0_1_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSNotEquals semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_NOT_EQUALS__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_NOT_EQUALS__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_NOT_EQUALS__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_NOT_EQUALS__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSNotEqualsLeftOperandAction_1_0_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSSubset + * ALSQuantified returns ALSSubset + * ALSOr returns ALSSubset + * ALSOr.ALSOr_1_0 returns ALSSubset + * ALSIff returns ALSSubset + * ALSIff.ALSIff_1_0 returns ALSSubset + * ALSImpl returns ALSSubset + * ALSImpl.ALSImpl_1_0 returns ALSSubset + * ALSAnd returns ALSSubset + * ALSAnd.ALSAnd_1_0 returns ALSSubset + * ALSComparison returns ALSSubset + * ALSComparison.ALSEquals_1_0_0_0 returns ALSSubset + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSSubset + * ALSComparison.ALSSubset_1_0_2_0 returns ALSSubset + * ALSComparison.ALSLess_1_0_3_0 returns ALSSubset + * ALSComparison.ALSLeq_1_0_4_0 returns ALSSubset + * ALSComparison.ALSMore_1_0_5_0 returns ALSSubset + * ALSComparison.ALSMeq_1_0_6_0 returns ALSSubset + * ALSOverride returns ALSSubset + * ALSOverride.ALSOverride_1_0 returns ALSSubset + * ALSRangeRestrictionRight returns ALSSubset + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSSubset + * ALSRangeRestrictionLeft returns ALSSubset + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSSubset + * ALSJoin returns ALSSubset + * ALSJoin.ALSJoin_1_0 returns ALSSubset + * ALSMinus returns ALSSubset + * ALSMinus.ALSMinus_1_0 returns ALSSubset + * ALSPlus returns ALSSubset + * ALSPlus.ALSPlus_1_0 returns ALSSubset + * ALSIntersection returns ALSSubset + * ALSIntersection.ALSIntersection_1_0 returns ALSSubset + * ALSDirectProduct returns ALSSubset + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSSubset + * ALSPreficed returns ALSSubset + * ALSBasicRelationTerm returns ALSSubset + * + * Constraint: + * (leftOperand=ALSComparison_ALSSubset_1_0_2_0 rightOperand=ALSOverride) + */ + protected void sequence_ALSComparison(ISerializationContext context, ALSSubset semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_SUBSET__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_SUBSET__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_SUBSET__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_SUBSET__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSComparisonAccess().getALSSubsetLeftOperandAction_1_0_2_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSComparisonAccess().getRightOperandALSOverrideParserRuleCall_1_1_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSDirectProduct + * ALSQuantified returns ALSDirectProduct + * ALSOr returns ALSDirectProduct + * ALSOr.ALSOr_1_0 returns ALSDirectProduct + * ALSIff returns ALSDirectProduct + * ALSIff.ALSIff_1_0 returns ALSDirectProduct + * ALSImpl returns ALSDirectProduct + * ALSImpl.ALSImpl_1_0 returns ALSDirectProduct + * ALSAnd returns ALSDirectProduct + * ALSAnd.ALSAnd_1_0 returns ALSDirectProduct + * ALSComparison returns ALSDirectProduct + * ALSComparison.ALSEquals_1_0_0_0 returns ALSDirectProduct + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSDirectProduct + * ALSComparison.ALSSubset_1_0_2_0 returns ALSDirectProduct + * ALSComparison.ALSLess_1_0_3_0 returns ALSDirectProduct + * ALSComparison.ALSLeq_1_0_4_0 returns ALSDirectProduct + * ALSComparison.ALSMore_1_0_5_0 returns ALSDirectProduct + * ALSComparison.ALSMeq_1_0_6_0 returns ALSDirectProduct + * ALSOverride returns ALSDirectProduct + * ALSOverride.ALSOverride_1_0 returns ALSDirectProduct + * ALSRangeRestrictionRight returns ALSDirectProduct + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSDirectProduct + * ALSRangeRestrictionLeft returns ALSDirectProduct + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSDirectProduct + * ALSJoin returns ALSDirectProduct + * ALSJoin.ALSJoin_1_0 returns ALSDirectProduct + * ALSMinus returns ALSDirectProduct + * ALSMinus.ALSMinus_1_0 returns ALSDirectProduct + * ALSPlus returns ALSDirectProduct + * ALSPlus.ALSPlus_1_0 returns ALSDirectProduct + * ALSIntersection returns ALSDirectProduct + * ALSIntersection.ALSIntersection_1_0 returns ALSDirectProduct + * ALSDirectProduct returns ALSDirectProduct + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSDirectProduct + * ALSPreficed returns ALSDirectProduct + * ALSBasicRelationTerm returns ALSDirectProduct + * + * Constraint: + * (leftOperand=ALSDirectProduct_ALSDirectProduct_1_0 leftMultiplicit=ALSMultiplicity? rightMultiplicit=ALSMultiplicity? rightOperand=ALSPreficed) + */ + protected void sequence_ALSDirectProduct(ISerializationContext context, ALSDirectProduct semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSDocument returns ALSDocument + * + * Constraint: + * ( + * ( + * enumDeclarations+=ALSEnumDeclaration | + * signatureBodies+=ALSSignatureBody | + * functionDefinitions+=ALSFunctionDefinition | + * relationDefinitions+=ALSRelationDefinition | + * factDeclarations+=ALSFactDeclaration + * )+ + * runCommand=ALSRunCommand + * ) + */ + protected void sequence_ALSDocument(ISerializationContext context, ALSDocument semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSRelationDeclaration returns ALSEnumDeclaration + * ALSTypeDeclaration returns ALSEnumDeclaration + * ALSEnumDeclaration returns ALSEnumDeclaration + * + * Constraint: + * (name=ALSID literal+=ALSEnumLiteral literal+=ALSEnumLiteral*) + */ + protected void sequence_ALSEnumDeclaration(ISerializationContext context, ALSEnumDeclaration semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSRelationDeclaration returns ALSEnumLiteral + * ALSEnumLiteral returns ALSEnumLiteral + * + * Constraint: + * name=ALSID + */ + protected void sequence_ALSEnumLiteral(ISerializationContext context, ALSEnumLiteral semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION__NAME)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSEnumLiteralAccess().getNameALSIDParserRuleCall_0(), semanticObject.getName()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSFactDeclaration returns ALSFactDeclaration + * + * Constraint: + * (name=ALSID? term=ALSTerm) + */ + protected void sequence_ALSFactDeclaration(ISerializationContext context, ALSFactDeclaration semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSRelationDeclaration returns ALSFieldDeclaration + * ALSFieldDeclaration returns ALSFieldDeclaration + * + * Constraint: + * (name=ALSID multiplicity=ALSMultiplicity? type=ALSTerm) + */ + protected void sequence_ALSFieldDeclaration(ISerializationContext context, ALSFieldDeclaration semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSDefinition returns ALSFunctionDefinition + * ALSFunctionDefinition returns ALSFunctionDefinition + * + * Constraint: + * (name=ALSID variables+=ALSVariableDeclaration variables+=ALSVariableDeclaration* type=ALSTerm value=ALSTerm) + */ + protected void sequence_ALSFunctionDefinition(ISerializationContext context, ALSFunctionDefinition semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSIff + * ALSQuantified returns ALSIff + * ALSOr returns ALSIff + * ALSOr.ALSOr_1_0 returns ALSIff + * ALSIff returns ALSIff + * ALSIff.ALSIff_1_0 returns ALSIff + * ALSImpl returns ALSIff + * ALSImpl.ALSImpl_1_0 returns ALSIff + * ALSAnd returns ALSIff + * ALSAnd.ALSAnd_1_0 returns ALSIff + * ALSComparison returns ALSIff + * ALSComparison.ALSEquals_1_0_0_0 returns ALSIff + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSIff + * ALSComparison.ALSSubset_1_0_2_0 returns ALSIff + * ALSComparison.ALSLess_1_0_3_0 returns ALSIff + * ALSComparison.ALSLeq_1_0_4_0 returns ALSIff + * ALSComparison.ALSMore_1_0_5_0 returns ALSIff + * ALSComparison.ALSMeq_1_0_6_0 returns ALSIff + * ALSOverride returns ALSIff + * ALSOverride.ALSOverride_1_0 returns ALSIff + * ALSRangeRestrictionRight returns ALSIff + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSIff + * ALSRangeRestrictionLeft returns ALSIff + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSIff + * ALSJoin returns ALSIff + * ALSJoin.ALSJoin_1_0 returns ALSIff + * ALSMinus returns ALSIff + * ALSMinus.ALSMinus_1_0 returns ALSIff + * ALSPlus returns ALSIff + * ALSPlus.ALSPlus_1_0 returns ALSIff + * ALSIntersection returns ALSIff + * ALSIntersection.ALSIntersection_1_0 returns ALSIff + * ALSDirectProduct returns ALSIff + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSIff + * ALSPreficed returns ALSIff + * ALSBasicRelationTerm returns ALSIff + * + * Constraint: + * (leftOperand=ALSIff_ALSIff_1_0 rightOperand=ALSImpl) + */ + protected void sequence_ALSIff(ISerializationContext context, ALSIff semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_IFF__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_IFF__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_IFF__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_IFF__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSIffAccess().getALSIffLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSIffAccess().getRightOperandALSImplParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSImpl + * ALSQuantified returns ALSImpl + * ALSOr returns ALSImpl + * ALSOr.ALSOr_1_0 returns ALSImpl + * ALSIff returns ALSImpl + * ALSIff.ALSIff_1_0 returns ALSImpl + * ALSImpl returns ALSImpl + * ALSImpl.ALSImpl_1_0 returns ALSImpl + * ALSAnd returns ALSImpl + * ALSAnd.ALSAnd_1_0 returns ALSImpl + * ALSComparison returns ALSImpl + * ALSComparison.ALSEquals_1_0_0_0 returns ALSImpl + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSImpl + * ALSComparison.ALSSubset_1_0_2_0 returns ALSImpl + * ALSComparison.ALSLess_1_0_3_0 returns ALSImpl + * ALSComparison.ALSLeq_1_0_4_0 returns ALSImpl + * ALSComparison.ALSMore_1_0_5_0 returns ALSImpl + * ALSComparison.ALSMeq_1_0_6_0 returns ALSImpl + * ALSOverride returns ALSImpl + * ALSOverride.ALSOverride_1_0 returns ALSImpl + * ALSRangeRestrictionRight returns ALSImpl + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSImpl + * ALSRangeRestrictionLeft returns ALSImpl + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSImpl + * ALSJoin returns ALSImpl + * ALSJoin.ALSJoin_1_0 returns ALSImpl + * ALSMinus returns ALSImpl + * ALSMinus.ALSMinus_1_0 returns ALSImpl + * ALSPlus returns ALSImpl + * ALSPlus.ALSPlus_1_0 returns ALSImpl + * ALSIntersection returns ALSImpl + * ALSIntersection.ALSIntersection_1_0 returns ALSImpl + * ALSDirectProduct returns ALSImpl + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSImpl + * ALSPreficed returns ALSImpl + * ALSBasicRelationTerm returns ALSImpl + * + * Constraint: + * (leftOperand=ALSImpl_ALSImpl_1_0 rightOperand=ALSAnd elseOperand=ALSAnd?) + */ + protected void sequence_ALSImpl(ISerializationContext context, ALSImpl semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTypeScope returns ALSIntScope + * ALSIntScope returns ALSIntScope + * + * Constraint: + * number=INT + */ + protected void sequence_ALSIntScope(ISerializationContext context, ALSIntScope semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_TYPE_SCOPE__NUMBER) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_TYPE_SCOPE__NUMBER)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSIntScopeAccess().getNumberINTTerminalRuleCall_0_0(), semanticObject.getNumber()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSIntersection + * ALSQuantified returns ALSIntersection + * ALSOr returns ALSIntersection + * ALSOr.ALSOr_1_0 returns ALSIntersection + * ALSIff returns ALSIntersection + * ALSIff.ALSIff_1_0 returns ALSIntersection + * ALSImpl returns ALSIntersection + * ALSImpl.ALSImpl_1_0 returns ALSIntersection + * ALSAnd returns ALSIntersection + * ALSAnd.ALSAnd_1_0 returns ALSIntersection + * ALSComparison returns ALSIntersection + * ALSComparison.ALSEquals_1_0_0_0 returns ALSIntersection + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSIntersection + * ALSComparison.ALSSubset_1_0_2_0 returns ALSIntersection + * ALSComparison.ALSLess_1_0_3_0 returns ALSIntersection + * ALSComparison.ALSLeq_1_0_4_0 returns ALSIntersection + * ALSComparison.ALSMore_1_0_5_0 returns ALSIntersection + * ALSComparison.ALSMeq_1_0_6_0 returns ALSIntersection + * ALSOverride returns ALSIntersection + * ALSOverride.ALSOverride_1_0 returns ALSIntersection + * ALSRangeRestrictionRight returns ALSIntersection + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSIntersection + * ALSRangeRestrictionLeft returns ALSIntersection + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSIntersection + * ALSJoin returns ALSIntersection + * ALSJoin.ALSJoin_1_0 returns ALSIntersection + * ALSMinus returns ALSIntersection + * ALSMinus.ALSMinus_1_0 returns ALSIntersection + * ALSPlus returns ALSIntersection + * ALSPlus.ALSPlus_1_0 returns ALSIntersection + * ALSIntersection returns ALSIntersection + * ALSIntersection.ALSIntersection_1_0 returns ALSIntersection + * ALSDirectProduct returns ALSIntersection + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSIntersection + * ALSPreficed returns ALSIntersection + * ALSBasicRelationTerm returns ALSIntersection + * + * Constraint: + * (leftOperand=ALSIntersection_ALSIntersection_1_0 rightOperand=ALSDirectProduct) + */ + protected void sequence_ALSIntersection(ISerializationContext context, ALSIntersection semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_INTERSECTION__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_INTERSECTION__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_INTERSECTION__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_INTERSECTION__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSIntersectionAccess().getALSIntersectionLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSIntersectionAccess().getRightOperandALSDirectProductParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSJoin + * ALSQuantified returns ALSJoin + * ALSOr returns ALSJoin + * ALSOr.ALSOr_1_0 returns ALSJoin + * ALSIff returns ALSJoin + * ALSIff.ALSIff_1_0 returns ALSJoin + * ALSImpl returns ALSJoin + * ALSImpl.ALSImpl_1_0 returns ALSJoin + * ALSAnd returns ALSJoin + * ALSAnd.ALSAnd_1_0 returns ALSJoin + * ALSComparison returns ALSJoin + * ALSComparison.ALSEquals_1_0_0_0 returns ALSJoin + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSJoin + * ALSComparison.ALSSubset_1_0_2_0 returns ALSJoin + * ALSComparison.ALSLess_1_0_3_0 returns ALSJoin + * ALSComparison.ALSLeq_1_0_4_0 returns ALSJoin + * ALSComparison.ALSMore_1_0_5_0 returns ALSJoin + * ALSComparison.ALSMeq_1_0_6_0 returns ALSJoin + * ALSOverride returns ALSJoin + * ALSOverride.ALSOverride_1_0 returns ALSJoin + * ALSRangeRestrictionRight returns ALSJoin + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSJoin + * ALSRangeRestrictionLeft returns ALSJoin + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSJoin + * ALSJoin returns ALSJoin + * ALSJoin.ALSJoin_1_0 returns ALSJoin + * ALSMinus returns ALSJoin + * ALSMinus.ALSMinus_1_0 returns ALSJoin + * ALSPlus returns ALSJoin + * ALSPlus.ALSPlus_1_0 returns ALSJoin + * ALSIntersection returns ALSJoin + * ALSIntersection.ALSIntersection_1_0 returns ALSJoin + * ALSDirectProduct returns ALSJoin + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSJoin + * ALSPreficed returns ALSJoin + * ALSBasicRelationTerm returns ALSJoin + * + * Constraint: + * (leftOperand=ALSJoin_ALSJoin_1_0 rightOperand=ALSMinus) + */ + protected void sequence_ALSJoin(ISerializationContext context, ALSJoin semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_JOIN__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_JOIN__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_JOIN__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_JOIN__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSJoinAccess().getALSJoinLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSJoinAccess().getRightOperandALSMinusParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSMinus + * ALSQuantified returns ALSMinus + * ALSOr returns ALSMinus + * ALSOr.ALSOr_1_0 returns ALSMinus + * ALSIff returns ALSMinus + * ALSIff.ALSIff_1_0 returns ALSMinus + * ALSImpl returns ALSMinus + * ALSImpl.ALSImpl_1_0 returns ALSMinus + * ALSAnd returns ALSMinus + * ALSAnd.ALSAnd_1_0 returns ALSMinus + * ALSComparison returns ALSMinus + * ALSComparison.ALSEquals_1_0_0_0 returns ALSMinus + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSMinus + * ALSComparison.ALSSubset_1_0_2_0 returns ALSMinus + * ALSComparison.ALSLess_1_0_3_0 returns ALSMinus + * ALSComparison.ALSLeq_1_0_4_0 returns ALSMinus + * ALSComparison.ALSMore_1_0_5_0 returns ALSMinus + * ALSComparison.ALSMeq_1_0_6_0 returns ALSMinus + * ALSOverride returns ALSMinus + * ALSOverride.ALSOverride_1_0 returns ALSMinus + * ALSRangeRestrictionRight returns ALSMinus + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSMinus + * ALSRangeRestrictionLeft returns ALSMinus + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSMinus + * ALSJoin returns ALSMinus + * ALSJoin.ALSJoin_1_0 returns ALSMinus + * ALSMinus returns ALSMinus + * ALSMinus.ALSMinus_1_0 returns ALSMinus + * ALSPlus returns ALSMinus + * ALSPlus.ALSPlus_1_0 returns ALSMinus + * ALSIntersection returns ALSMinus + * ALSIntersection.ALSIntersection_1_0 returns ALSMinus + * ALSDirectProduct returns ALSMinus + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSMinus + * ALSPreficed returns ALSMinus + * ALSBasicRelationTerm returns ALSMinus + * + * Constraint: + * (leftOperand=ALSMinus_ALSMinus_1_0 rightOperand=ALSPlus) + */ + protected void sequence_ALSMinus(ISerializationContext context, ALSMinus semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_MINUS__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_MINUS__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_MINUS__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_MINUS__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSMinusAccess().getALSMinusLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSMinusAccess().getRightOperandALSPlusParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSOr + * ALSQuantified returns ALSOr + * ALSOr returns ALSOr + * ALSOr.ALSOr_1_0 returns ALSOr + * ALSIff returns ALSOr + * ALSIff.ALSIff_1_0 returns ALSOr + * ALSImpl returns ALSOr + * ALSImpl.ALSImpl_1_0 returns ALSOr + * ALSAnd returns ALSOr + * ALSAnd.ALSAnd_1_0 returns ALSOr + * ALSComparison returns ALSOr + * ALSComparison.ALSEquals_1_0_0_0 returns ALSOr + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSOr + * ALSComparison.ALSSubset_1_0_2_0 returns ALSOr + * ALSComparison.ALSLess_1_0_3_0 returns ALSOr + * ALSComparison.ALSLeq_1_0_4_0 returns ALSOr + * ALSComparison.ALSMore_1_0_5_0 returns ALSOr + * ALSComparison.ALSMeq_1_0_6_0 returns ALSOr + * ALSOverride returns ALSOr + * ALSOverride.ALSOverride_1_0 returns ALSOr + * ALSRangeRestrictionRight returns ALSOr + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSOr + * ALSRangeRestrictionLeft returns ALSOr + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSOr + * ALSJoin returns ALSOr + * ALSJoin.ALSJoin_1_0 returns ALSOr + * ALSMinus returns ALSOr + * ALSMinus.ALSMinus_1_0 returns ALSOr + * ALSPlus returns ALSOr + * ALSPlus.ALSPlus_1_0 returns ALSOr + * ALSIntersection returns ALSOr + * ALSIntersection.ALSIntersection_1_0 returns ALSOr + * ALSDirectProduct returns ALSOr + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSOr + * ALSPreficed returns ALSOr + * ALSBasicRelationTerm returns ALSOr + * + * Constraint: + * (leftOperand=ALSOr_ALSOr_1_0 rightOperand=ALSIff) + */ + protected void sequence_ALSOr(ISerializationContext context, ALSOr semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_OR__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_OR__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_OR__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_OR__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSOrAccess().getALSOrLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSOrAccess().getRightOperandALSIffParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSOverride + * ALSQuantified returns ALSOverride + * ALSOr returns ALSOverride + * ALSOr.ALSOr_1_0 returns ALSOverride + * ALSIff returns ALSOverride + * ALSIff.ALSIff_1_0 returns ALSOverride + * ALSImpl returns ALSOverride + * ALSImpl.ALSImpl_1_0 returns ALSOverride + * ALSAnd returns ALSOverride + * ALSAnd.ALSAnd_1_0 returns ALSOverride + * ALSComparison returns ALSOverride + * ALSComparison.ALSEquals_1_0_0_0 returns ALSOverride + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSOverride + * ALSComparison.ALSSubset_1_0_2_0 returns ALSOverride + * ALSComparison.ALSLess_1_0_3_0 returns ALSOverride + * ALSComparison.ALSLeq_1_0_4_0 returns ALSOverride + * ALSComparison.ALSMore_1_0_5_0 returns ALSOverride + * ALSComparison.ALSMeq_1_0_6_0 returns ALSOverride + * ALSOverride returns ALSOverride + * ALSOverride.ALSOverride_1_0 returns ALSOverride + * ALSRangeRestrictionRight returns ALSOverride + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSOverride + * ALSRangeRestrictionLeft returns ALSOverride + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSOverride + * ALSJoin returns ALSOverride + * ALSJoin.ALSJoin_1_0 returns ALSOverride + * ALSMinus returns ALSOverride + * ALSMinus.ALSMinus_1_0 returns ALSOverride + * ALSPlus returns ALSOverride + * ALSPlus.ALSPlus_1_0 returns ALSOverride + * ALSIntersection returns ALSOverride + * ALSIntersection.ALSIntersection_1_0 returns ALSOverride + * ALSDirectProduct returns ALSOverride + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSOverride + * ALSPreficed returns ALSOverride + * ALSBasicRelationTerm returns ALSOverride + * + * Constraint: + * (leftOperand=ALSOverride_ALSOverride_1_0 rightOperand=ALSRangeRestrictionRight) + */ + protected void sequence_ALSOverride(ISerializationContext context, ALSOverride semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_OVERRIDE__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_OVERRIDE__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_OVERRIDE__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_OVERRIDE__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSOverrideAccess().getALSOverrideLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSOverrideAccess().getRightOperandALSRangeRestrictionRightParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSPlus + * ALSQuantified returns ALSPlus + * ALSOr returns ALSPlus + * ALSOr.ALSOr_1_0 returns ALSPlus + * ALSIff returns ALSPlus + * ALSIff.ALSIff_1_0 returns ALSPlus + * ALSImpl returns ALSPlus + * ALSImpl.ALSImpl_1_0 returns ALSPlus + * ALSAnd returns ALSPlus + * ALSAnd.ALSAnd_1_0 returns ALSPlus + * ALSComparison returns ALSPlus + * ALSComparison.ALSEquals_1_0_0_0 returns ALSPlus + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSPlus + * ALSComparison.ALSSubset_1_0_2_0 returns ALSPlus + * ALSComparison.ALSLess_1_0_3_0 returns ALSPlus + * ALSComparison.ALSLeq_1_0_4_0 returns ALSPlus + * ALSComparison.ALSMore_1_0_5_0 returns ALSPlus + * ALSComparison.ALSMeq_1_0_6_0 returns ALSPlus + * ALSOverride returns ALSPlus + * ALSOverride.ALSOverride_1_0 returns ALSPlus + * ALSRangeRestrictionRight returns ALSPlus + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSPlus + * ALSRangeRestrictionLeft returns ALSPlus + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSPlus + * ALSJoin returns ALSPlus + * ALSJoin.ALSJoin_1_0 returns ALSPlus + * ALSMinus returns ALSPlus + * ALSMinus.ALSMinus_1_0 returns ALSPlus + * ALSPlus returns ALSPlus + * ALSPlus.ALSPlus_1_0 returns ALSPlus + * ALSIntersection returns ALSPlus + * ALSIntersection.ALSIntersection_1_0 returns ALSPlus + * ALSDirectProduct returns ALSPlus + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSPlus + * ALSPreficed returns ALSPlus + * ALSBasicRelationTerm returns ALSPlus + * + * Constraint: + * (leftOperand=ALSPlus_ALSPlus_1_0 rightOperand=ALSIntersection) + */ + protected void sequence_ALSPlus(ISerializationContext context, ALSPlus semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_PLUS__LEFT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_PLUS__LEFT_OPERAND)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_PLUS__RIGHT_OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_PLUS__RIGHT_OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPlusAccess().getALSPlusLeftOperandAction_1_0(), semanticObject.getLeftOperand()); + feeder.accept(grammarAccess.getALSPlusAccess().getRightOperandALSIntersectionParserRuleCall_1_2_0(), semanticObject.getRightOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSCardinality + * ALSQuantified returns ALSCardinality + * ALSOr returns ALSCardinality + * ALSOr.ALSOr_1_0 returns ALSCardinality + * ALSIff returns ALSCardinality + * ALSIff.ALSIff_1_0 returns ALSCardinality + * ALSImpl returns ALSCardinality + * ALSImpl.ALSImpl_1_0 returns ALSCardinality + * ALSAnd returns ALSCardinality + * ALSAnd.ALSAnd_1_0 returns ALSCardinality + * ALSComparison returns ALSCardinality + * ALSComparison.ALSEquals_1_0_0_0 returns ALSCardinality + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSCardinality + * ALSComparison.ALSSubset_1_0_2_0 returns ALSCardinality + * ALSComparison.ALSLess_1_0_3_0 returns ALSCardinality + * ALSComparison.ALSLeq_1_0_4_0 returns ALSCardinality + * ALSComparison.ALSMore_1_0_5_0 returns ALSCardinality + * ALSComparison.ALSMeq_1_0_6_0 returns ALSCardinality + * ALSOverride returns ALSCardinality + * ALSOverride.ALSOverride_1_0 returns ALSCardinality + * ALSRangeRestrictionRight returns ALSCardinality + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSCardinality + * ALSRangeRestrictionLeft returns ALSCardinality + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSCardinality + * ALSJoin returns ALSCardinality + * ALSJoin.ALSJoin_1_0 returns ALSCardinality + * ALSMinus returns ALSCardinality + * ALSMinus.ALSMinus_1_0 returns ALSCardinality + * ALSPlus returns ALSCardinality + * ALSPlus.ALSPlus_1_0 returns ALSCardinality + * ALSIntersection returns ALSCardinality + * ALSIntersection.ALSIntersection_1_0 returns ALSCardinality + * ALSDirectProduct returns ALSCardinality + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSCardinality + * ALSPreficed returns ALSCardinality + * ALSBasicRelationTerm returns ALSCardinality + * + * Constraint: + * operand=ALSBasicRelationTerm + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSCardinality semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_CARDINALITY__OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_CARDINALITY__OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_4_2_0(), semanticObject.getOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSFunctionCall + * ALSQuantified returns ALSFunctionCall + * ALSOr returns ALSFunctionCall + * ALSOr.ALSOr_1_0 returns ALSFunctionCall + * ALSIff returns ALSFunctionCall + * ALSIff.ALSIff_1_0 returns ALSFunctionCall + * ALSImpl returns ALSFunctionCall + * ALSImpl.ALSImpl_1_0 returns ALSFunctionCall + * ALSAnd returns ALSFunctionCall + * ALSAnd.ALSAnd_1_0 returns ALSFunctionCall + * ALSComparison returns ALSFunctionCall + * ALSComparison.ALSEquals_1_0_0_0 returns ALSFunctionCall + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSFunctionCall + * ALSComparison.ALSSubset_1_0_2_0 returns ALSFunctionCall + * ALSComparison.ALSLess_1_0_3_0 returns ALSFunctionCall + * ALSComparison.ALSLeq_1_0_4_0 returns ALSFunctionCall + * ALSComparison.ALSMore_1_0_5_0 returns ALSFunctionCall + * ALSComparison.ALSMeq_1_0_6_0 returns ALSFunctionCall + * ALSOverride returns ALSFunctionCall + * ALSOverride.ALSOverride_1_0 returns ALSFunctionCall + * ALSRangeRestrictionRight returns ALSFunctionCall + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSFunctionCall + * ALSRangeRestrictionLeft returns ALSFunctionCall + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSFunctionCall + * ALSJoin returns ALSFunctionCall + * ALSJoin.ALSJoin_1_0 returns ALSFunctionCall + * ALSMinus returns ALSFunctionCall + * ALSMinus.ALSMinus_1_0 returns ALSFunctionCall + * ALSPlus returns ALSFunctionCall + * ALSPlus.ALSPlus_1_0 returns ALSFunctionCall + * ALSIntersection returns ALSFunctionCall + * ALSIntersection.ALSIntersection_1_0 returns ALSFunctionCall + * ALSDirectProduct returns ALSFunctionCall + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSFunctionCall + * ALSPreficed returns ALSFunctionCall + * ALSBasicRelationTerm returns ALSFunctionCall + * + * Constraint: + * ((referredDefinition=[ALSDefinition|ID] | referredNumericOperator=ALSNumericOperator) params+=ALSTerm params+=ALSTerm*) + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSFunctionCall semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSInverseRelation + * ALSQuantified returns ALSInverseRelation + * ALSOr returns ALSInverseRelation + * ALSOr.ALSOr_1_0 returns ALSInverseRelation + * ALSIff returns ALSInverseRelation + * ALSIff.ALSIff_1_0 returns ALSInverseRelation + * ALSImpl returns ALSInverseRelation + * ALSImpl.ALSImpl_1_0 returns ALSInverseRelation + * ALSAnd returns ALSInverseRelation + * ALSAnd.ALSAnd_1_0 returns ALSInverseRelation + * ALSComparison returns ALSInverseRelation + * ALSComparison.ALSEquals_1_0_0_0 returns ALSInverseRelation + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSInverseRelation + * ALSComparison.ALSSubset_1_0_2_0 returns ALSInverseRelation + * ALSComparison.ALSLess_1_0_3_0 returns ALSInverseRelation + * ALSComparison.ALSLeq_1_0_4_0 returns ALSInverseRelation + * ALSComparison.ALSMore_1_0_5_0 returns ALSInverseRelation + * ALSComparison.ALSMeq_1_0_6_0 returns ALSInverseRelation + * ALSOverride returns ALSInverseRelation + * ALSOverride.ALSOverride_1_0 returns ALSInverseRelation + * ALSRangeRestrictionRight returns ALSInverseRelation + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSInverseRelation + * ALSRangeRestrictionLeft returns ALSInverseRelation + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSInverseRelation + * ALSJoin returns ALSInverseRelation + * ALSJoin.ALSJoin_1_0 returns ALSInverseRelation + * ALSMinus returns ALSInverseRelation + * ALSMinus.ALSMinus_1_0 returns ALSInverseRelation + * ALSPlus returns ALSInverseRelation + * ALSPlus.ALSPlus_1_0 returns ALSInverseRelation + * ALSIntersection returns ALSInverseRelation + * ALSIntersection.ALSIntersection_1_0 returns ALSInverseRelation + * ALSDirectProduct returns ALSInverseRelation + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSInverseRelation + * ALSPreficed returns ALSInverseRelation + * ALSBasicRelationTerm returns ALSInverseRelation + * + * Constraint: + * operand=ALSBasicRelationTerm + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSInverseRelation semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_INVERSE_RELATION__OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_INVERSE_RELATION__OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_1_2_0(), semanticObject.getOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSNot + * ALSQuantified returns ALSNot + * ALSOr returns ALSNot + * ALSOr.ALSOr_1_0 returns ALSNot + * ALSIff returns ALSNot + * ALSIff.ALSIff_1_0 returns ALSNot + * ALSImpl returns ALSNot + * ALSImpl.ALSImpl_1_0 returns ALSNot + * ALSAnd returns ALSNot + * ALSAnd.ALSAnd_1_0 returns ALSNot + * ALSComparison returns ALSNot + * ALSComparison.ALSEquals_1_0_0_0 returns ALSNot + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSNot + * ALSComparison.ALSSubset_1_0_2_0 returns ALSNot + * ALSComparison.ALSLess_1_0_3_0 returns ALSNot + * ALSComparison.ALSLeq_1_0_4_0 returns ALSNot + * ALSComparison.ALSMore_1_0_5_0 returns ALSNot + * ALSComparison.ALSMeq_1_0_6_0 returns ALSNot + * ALSOverride returns ALSNot + * ALSOverride.ALSOverride_1_0 returns ALSNot + * ALSRangeRestrictionRight returns ALSNot + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSNot + * ALSRangeRestrictionLeft returns ALSNot + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSNot + * ALSJoin returns ALSNot + * ALSJoin.ALSJoin_1_0 returns ALSNot + * ALSMinus returns ALSNot + * ALSMinus.ALSMinus_1_0 returns ALSNot + * ALSPlus returns ALSNot + * ALSPlus.ALSPlus_1_0 returns ALSNot + * ALSIntersection returns ALSNot + * ALSIntersection.ALSIntersection_1_0 returns ALSNot + * ALSDirectProduct returns ALSNot + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSNot + * ALSPreficed returns ALSNot + * ALSBasicRelationTerm returns ALSNot + * + * Constraint: + * operand=ALSBasicRelationTerm + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSNot semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_NOT__OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_NOT__OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_0_2_0(), semanticObject.getOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSReflectiveTransitiveClosure + * ALSQuantified returns ALSReflectiveTransitiveClosure + * ALSOr returns ALSReflectiveTransitiveClosure + * ALSOr.ALSOr_1_0 returns ALSReflectiveTransitiveClosure + * ALSIff returns ALSReflectiveTransitiveClosure + * ALSIff.ALSIff_1_0 returns ALSReflectiveTransitiveClosure + * ALSImpl returns ALSReflectiveTransitiveClosure + * ALSImpl.ALSImpl_1_0 returns ALSReflectiveTransitiveClosure + * ALSAnd returns ALSReflectiveTransitiveClosure + * ALSAnd.ALSAnd_1_0 returns ALSReflectiveTransitiveClosure + * ALSComparison returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSEquals_1_0_0_0 returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSSubset_1_0_2_0 returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSLess_1_0_3_0 returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSLeq_1_0_4_0 returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSMore_1_0_5_0 returns ALSReflectiveTransitiveClosure + * ALSComparison.ALSMeq_1_0_6_0 returns ALSReflectiveTransitiveClosure + * ALSOverride returns ALSReflectiveTransitiveClosure + * ALSOverride.ALSOverride_1_0 returns ALSReflectiveTransitiveClosure + * ALSRangeRestrictionRight returns ALSReflectiveTransitiveClosure + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSReflectiveTransitiveClosure + * ALSRangeRestrictionLeft returns ALSReflectiveTransitiveClosure + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSReflectiveTransitiveClosure + * ALSJoin returns ALSReflectiveTransitiveClosure + * ALSJoin.ALSJoin_1_0 returns ALSReflectiveTransitiveClosure + * ALSMinus returns ALSReflectiveTransitiveClosure + * ALSMinus.ALSMinus_1_0 returns ALSReflectiveTransitiveClosure + * ALSPlus returns ALSReflectiveTransitiveClosure + * ALSPlus.ALSPlus_1_0 returns ALSReflectiveTransitiveClosure + * ALSIntersection returns ALSReflectiveTransitiveClosure + * ALSIntersection.ALSIntersection_1_0 returns ALSReflectiveTransitiveClosure + * ALSDirectProduct returns ALSReflectiveTransitiveClosure + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSReflectiveTransitiveClosure + * ALSPreficed returns ALSReflectiveTransitiveClosure + * ALSBasicRelationTerm returns ALSReflectiveTransitiveClosure + * + * Constraint: + * operand=ALSBasicRelationTerm + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSReflectiveTransitiveClosure semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_REFLECTIVE_TRANSITIVE_CLOSURE__OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_3_2_0(), semanticObject.getOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSSum + * ALSQuantified returns ALSSum + * ALSOr returns ALSSum + * ALSOr.ALSOr_1_0 returns ALSSum + * ALSIff returns ALSSum + * ALSIff.ALSIff_1_0 returns ALSSum + * ALSImpl returns ALSSum + * ALSImpl.ALSImpl_1_0 returns ALSSum + * ALSAnd returns ALSSum + * ALSAnd.ALSAnd_1_0 returns ALSSum + * ALSComparison returns ALSSum + * ALSComparison.ALSEquals_1_0_0_0 returns ALSSum + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSSum + * ALSComparison.ALSSubset_1_0_2_0 returns ALSSum + * ALSComparison.ALSLess_1_0_3_0 returns ALSSum + * ALSComparison.ALSLeq_1_0_4_0 returns ALSSum + * ALSComparison.ALSMore_1_0_5_0 returns ALSSum + * ALSComparison.ALSMeq_1_0_6_0 returns ALSSum + * ALSOverride returns ALSSum + * ALSOverride.ALSOverride_1_0 returns ALSSum + * ALSRangeRestrictionRight returns ALSSum + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSSum + * ALSRangeRestrictionLeft returns ALSSum + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSSum + * ALSJoin returns ALSSum + * ALSJoin.ALSJoin_1_0 returns ALSSum + * ALSMinus returns ALSSum + * ALSMinus.ALSMinus_1_0 returns ALSSum + * ALSPlus returns ALSSum + * ALSPlus.ALSPlus_1_0 returns ALSSum + * ALSIntersection returns ALSSum + * ALSIntersection.ALSIntersection_1_0 returns ALSSum + * ALSDirectProduct returns ALSSum + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSSum + * ALSPreficed returns ALSSum + * ALSBasicRelationTerm returns ALSSum + * + * Constraint: + * (variables+=ALSVariableDeclaration variables+=ALSVariableDeclaration* expression=ALSTerm) + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSSum semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSUnaryMinus + * ALSQuantified returns ALSUnaryMinus + * ALSOr returns ALSUnaryMinus + * ALSOr.ALSOr_1_0 returns ALSUnaryMinus + * ALSIff returns ALSUnaryMinus + * ALSIff.ALSIff_1_0 returns ALSUnaryMinus + * ALSImpl returns ALSUnaryMinus + * ALSImpl.ALSImpl_1_0 returns ALSUnaryMinus + * ALSAnd returns ALSUnaryMinus + * ALSAnd.ALSAnd_1_0 returns ALSUnaryMinus + * ALSComparison returns ALSUnaryMinus + * ALSComparison.ALSEquals_1_0_0_0 returns ALSUnaryMinus + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSUnaryMinus + * ALSComparison.ALSSubset_1_0_2_0 returns ALSUnaryMinus + * ALSComparison.ALSLess_1_0_3_0 returns ALSUnaryMinus + * ALSComparison.ALSLeq_1_0_4_0 returns ALSUnaryMinus + * ALSComparison.ALSMore_1_0_5_0 returns ALSUnaryMinus + * ALSComparison.ALSMeq_1_0_6_0 returns ALSUnaryMinus + * ALSOverride returns ALSUnaryMinus + * ALSOverride.ALSOverride_1_0 returns ALSUnaryMinus + * ALSRangeRestrictionRight returns ALSUnaryMinus + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSUnaryMinus + * ALSRangeRestrictionLeft returns ALSUnaryMinus + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSUnaryMinus + * ALSJoin returns ALSUnaryMinus + * ALSJoin.ALSJoin_1_0 returns ALSUnaryMinus + * ALSMinus returns ALSUnaryMinus + * ALSMinus.ALSMinus_1_0 returns ALSUnaryMinus + * ALSPlus returns ALSUnaryMinus + * ALSPlus.ALSPlus_1_0 returns ALSUnaryMinus + * ALSIntersection returns ALSUnaryMinus + * ALSIntersection.ALSIntersection_1_0 returns ALSUnaryMinus + * ALSDirectProduct returns ALSUnaryMinus + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSUnaryMinus + * ALSPreficed returns ALSUnaryMinus + * ALSBasicRelationTerm returns ALSUnaryMinus + * + * Constraint: + * operand=ALSBasicRelationTerm + */ + protected void sequence_ALSPreficed(ISerializationContext context, ALSUnaryMinus semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_UNARY_MINUS__OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_UNARY_MINUS__OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_5_2_0(), semanticObject.getOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns AlSTransitiveClosure + * ALSQuantified returns AlSTransitiveClosure + * ALSOr returns AlSTransitiveClosure + * ALSOr.ALSOr_1_0 returns AlSTransitiveClosure + * ALSIff returns AlSTransitiveClosure + * ALSIff.ALSIff_1_0 returns AlSTransitiveClosure + * ALSImpl returns AlSTransitiveClosure + * ALSImpl.ALSImpl_1_0 returns AlSTransitiveClosure + * ALSAnd returns AlSTransitiveClosure + * ALSAnd.ALSAnd_1_0 returns AlSTransitiveClosure + * ALSComparison returns AlSTransitiveClosure + * ALSComparison.ALSEquals_1_0_0_0 returns AlSTransitiveClosure + * ALSComparison.ALSNotEquals_1_0_1_0 returns AlSTransitiveClosure + * ALSComparison.ALSSubset_1_0_2_0 returns AlSTransitiveClosure + * ALSComparison.ALSLess_1_0_3_0 returns AlSTransitiveClosure + * ALSComparison.ALSLeq_1_0_4_0 returns AlSTransitiveClosure + * ALSComparison.ALSMore_1_0_5_0 returns AlSTransitiveClosure + * ALSComparison.ALSMeq_1_0_6_0 returns AlSTransitiveClosure + * ALSOverride returns AlSTransitiveClosure + * ALSOverride.ALSOverride_1_0 returns AlSTransitiveClosure + * ALSRangeRestrictionRight returns AlSTransitiveClosure + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns AlSTransitiveClosure + * ALSRangeRestrictionLeft returns AlSTransitiveClosure + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns AlSTransitiveClosure + * ALSJoin returns AlSTransitiveClosure + * ALSJoin.ALSJoin_1_0 returns AlSTransitiveClosure + * ALSMinus returns AlSTransitiveClosure + * ALSMinus.ALSMinus_1_0 returns AlSTransitiveClosure + * ALSPlus returns AlSTransitiveClosure + * ALSPlus.ALSPlus_1_0 returns AlSTransitiveClosure + * ALSIntersection returns AlSTransitiveClosure + * ALSIntersection.ALSIntersection_1_0 returns AlSTransitiveClosure + * ALSDirectProduct returns AlSTransitiveClosure + * ALSDirectProduct.ALSDirectProduct_1_0 returns AlSTransitiveClosure + * ALSPreficed returns AlSTransitiveClosure + * ALSBasicRelationTerm returns AlSTransitiveClosure + * + * Constraint: + * operand=ALSBasicRelationTerm + */ + protected void sequence_ALSPreficed(ISerializationContext context, AlSTransitiveClosure semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.AL_STRANSITIVE_CLOSURE__OPERAND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.AL_STRANSITIVE_CLOSURE__OPERAND)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSPreficedAccess().getOperandALSBasicRelationTermParserRuleCall_2_2_0(), semanticObject.getOperand()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSQuantifiedEx + * ALSQuantified returns ALSQuantifiedEx + * ALSOr returns ALSQuantifiedEx + * ALSOr.ALSOr_1_0 returns ALSQuantifiedEx + * ALSIff returns ALSQuantifiedEx + * ALSIff.ALSIff_1_0 returns ALSQuantifiedEx + * ALSImpl returns ALSQuantifiedEx + * ALSImpl.ALSImpl_1_0 returns ALSQuantifiedEx + * ALSAnd returns ALSQuantifiedEx + * ALSAnd.ALSAnd_1_0 returns ALSQuantifiedEx + * ALSComparison returns ALSQuantifiedEx + * ALSComparison.ALSEquals_1_0_0_0 returns ALSQuantifiedEx + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSQuantifiedEx + * ALSComparison.ALSSubset_1_0_2_0 returns ALSQuantifiedEx + * ALSComparison.ALSLess_1_0_3_0 returns ALSQuantifiedEx + * ALSComparison.ALSLeq_1_0_4_0 returns ALSQuantifiedEx + * ALSComparison.ALSMore_1_0_5_0 returns ALSQuantifiedEx + * ALSComparison.ALSMeq_1_0_6_0 returns ALSQuantifiedEx + * ALSOverride returns ALSQuantifiedEx + * ALSOverride.ALSOverride_1_0 returns ALSQuantifiedEx + * ALSRangeRestrictionRight returns ALSQuantifiedEx + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSQuantifiedEx + * ALSRangeRestrictionLeft returns ALSQuantifiedEx + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSQuantifiedEx + * ALSJoin returns ALSQuantifiedEx + * ALSJoin.ALSJoin_1_0 returns ALSQuantifiedEx + * ALSMinus returns ALSQuantifiedEx + * ALSMinus.ALSMinus_1_0 returns ALSQuantifiedEx + * ALSPlus returns ALSQuantifiedEx + * ALSPlus.ALSPlus_1_0 returns ALSQuantifiedEx + * ALSIntersection returns ALSQuantifiedEx + * ALSIntersection.ALSIntersection_1_0 returns ALSQuantifiedEx + * ALSDirectProduct returns ALSQuantifiedEx + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSQuantifiedEx + * ALSPreficed returns ALSQuantifiedEx + * ALSBasicRelationTerm returns ALSQuantifiedEx + * + * Constraint: + * (type=ALSMultiplicity disj?='disj'? variables+=ALSVariableDeclaration variables+=ALSVariableDeclaration* expression=ALSTerm) + */ + protected void sequence_ALSQuantified(ISerializationContext context, ALSQuantifiedEx semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTerm returns ALSRangeRestrictionLeft + * ALSQuantified returns ALSRangeRestrictionLeft + * ALSOr returns ALSRangeRestrictionLeft + * ALSOr.ALSOr_1_0 returns ALSRangeRestrictionLeft + * ALSIff returns ALSRangeRestrictionLeft + * ALSIff.ALSIff_1_0 returns ALSRangeRestrictionLeft + * ALSImpl returns ALSRangeRestrictionLeft + * ALSImpl.ALSImpl_1_0 returns ALSRangeRestrictionLeft + * ALSAnd returns ALSRangeRestrictionLeft + * ALSAnd.ALSAnd_1_0 returns ALSRangeRestrictionLeft + * ALSComparison returns ALSRangeRestrictionLeft + * ALSComparison.ALSEquals_1_0_0_0 returns ALSRangeRestrictionLeft + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSRangeRestrictionLeft + * ALSComparison.ALSSubset_1_0_2_0 returns ALSRangeRestrictionLeft + * ALSComparison.ALSLess_1_0_3_0 returns ALSRangeRestrictionLeft + * ALSComparison.ALSLeq_1_0_4_0 returns ALSRangeRestrictionLeft + * ALSComparison.ALSMore_1_0_5_0 returns ALSRangeRestrictionLeft + * ALSComparison.ALSMeq_1_0_6_0 returns ALSRangeRestrictionLeft + * ALSOverride returns ALSRangeRestrictionLeft + * ALSOverride.ALSOverride_1_0 returns ALSRangeRestrictionLeft + * ALSRangeRestrictionRight returns ALSRangeRestrictionLeft + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSRangeRestrictionLeft + * ALSRangeRestrictionLeft returns ALSRangeRestrictionLeft + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSRangeRestrictionLeft + * ALSJoin returns ALSRangeRestrictionLeft + * ALSJoin.ALSJoin_1_0 returns ALSRangeRestrictionLeft + * ALSMinus returns ALSRangeRestrictionLeft + * ALSMinus.ALSMinus_1_0 returns ALSRangeRestrictionLeft + * ALSPlus returns ALSRangeRestrictionLeft + * ALSPlus.ALSPlus_1_0 returns ALSRangeRestrictionLeft + * ALSIntersection returns ALSRangeRestrictionLeft + * ALSIntersection.ALSIntersection_1_0 returns ALSRangeRestrictionLeft + * ALSDirectProduct returns ALSRangeRestrictionLeft + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSRangeRestrictionLeft + * ALSPreficed returns ALSRangeRestrictionLeft + * ALSBasicRelationTerm returns ALSRangeRestrictionLeft + * + * Constraint: + * (filter=ALSRangeRestrictionLeft_ALSRangeRestrictionLeft_1_0 relation=ALSJoin) + */ + protected void sequence_ALSRangeRestrictionLeft(ISerializationContext context, ALSRangeRestrictionLeft semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_LEFT__FILTER) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_LEFT__FILTER)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_LEFT__RELATION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_LEFT__RELATION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSRangeRestrictionLeftAccess().getALSRangeRestrictionLeftFilterAction_1_0(), semanticObject.getFilter()); + feeder.accept(grammarAccess.getALSRangeRestrictionLeftAccess().getRelationALSJoinParserRuleCall_1_2_0(), semanticObject.getRelation()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSTerm returns ALSRangeRestrictionRight + * ALSQuantified returns ALSRangeRestrictionRight + * ALSOr returns ALSRangeRestrictionRight + * ALSOr.ALSOr_1_0 returns ALSRangeRestrictionRight + * ALSIff returns ALSRangeRestrictionRight + * ALSIff.ALSIff_1_0 returns ALSRangeRestrictionRight + * ALSImpl returns ALSRangeRestrictionRight + * ALSImpl.ALSImpl_1_0 returns ALSRangeRestrictionRight + * ALSAnd returns ALSRangeRestrictionRight + * ALSAnd.ALSAnd_1_0 returns ALSRangeRestrictionRight + * ALSComparison returns ALSRangeRestrictionRight + * ALSComparison.ALSEquals_1_0_0_0 returns ALSRangeRestrictionRight + * ALSComparison.ALSNotEquals_1_0_1_0 returns ALSRangeRestrictionRight + * ALSComparison.ALSSubset_1_0_2_0 returns ALSRangeRestrictionRight + * ALSComparison.ALSLess_1_0_3_0 returns ALSRangeRestrictionRight + * ALSComparison.ALSLeq_1_0_4_0 returns ALSRangeRestrictionRight + * ALSComparison.ALSMore_1_0_5_0 returns ALSRangeRestrictionRight + * ALSComparison.ALSMeq_1_0_6_0 returns ALSRangeRestrictionRight + * ALSOverride returns ALSRangeRestrictionRight + * ALSOverride.ALSOverride_1_0 returns ALSRangeRestrictionRight + * ALSRangeRestrictionRight returns ALSRangeRestrictionRight + * ALSRangeRestrictionRight.ALSRangeRestrictionRight_1_0 returns ALSRangeRestrictionRight + * ALSRangeRestrictionLeft returns ALSRangeRestrictionRight + * ALSRangeRestrictionLeft.ALSRangeRestrictionLeft_1_0 returns ALSRangeRestrictionRight + * ALSJoin returns ALSRangeRestrictionRight + * ALSJoin.ALSJoin_1_0 returns ALSRangeRestrictionRight + * ALSMinus returns ALSRangeRestrictionRight + * ALSMinus.ALSMinus_1_0 returns ALSRangeRestrictionRight + * ALSPlus returns ALSRangeRestrictionRight + * ALSPlus.ALSPlus_1_0 returns ALSRangeRestrictionRight + * ALSIntersection returns ALSRangeRestrictionRight + * ALSIntersection.ALSIntersection_1_0 returns ALSRangeRestrictionRight + * ALSDirectProduct returns ALSRangeRestrictionRight + * ALSDirectProduct.ALSDirectProduct_1_0 returns ALSRangeRestrictionRight + * ALSPreficed returns ALSRangeRestrictionRight + * ALSBasicRelationTerm returns ALSRangeRestrictionRight + * + * Constraint: + * (relation=ALSRangeRestrictionRight_ALSRangeRestrictionRight_1_0 filter=ALSRangeRestrictionLeft) + */ + protected void sequence_ALSRangeRestrictionRight(ISerializationContext context, ALSRangeRestrictionRight semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_RIGHT__RELATION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_RIGHT__RELATION)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_RIGHT__FILTER) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RANGE_RESTRICTION_RIGHT__FILTER)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSRangeRestrictionRightAccess().getALSRangeRestrictionRightRelationAction_1_0(), semanticObject.getRelation()); + feeder.accept(grammarAccess.getALSRangeRestrictionRightAccess().getFilterALSRangeRestrictionLeftParserRuleCall_1_2_0(), semanticObject.getFilter()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSDefinition returns ALSRelationDefinition + * ALSRelationDefinition returns ALSRelationDefinition + * + * Constraint: + * (name=ALSID variables+=ALSVariableDeclaration variables+=ALSVariableDeclaration* value=ALSTerm) + */ + protected void sequence_ALSRelationDefinition(ISerializationContext context, ALSRelationDefinition semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSRunCommand returns ALSRunCommand + * + * Constraint: + * (typeScopes+=ALSTypeScope typeScopes+=ALSTypeScope*)? + */ + protected void sequence_ALSRunCommand(ISerializationContext context, ALSRunCommand semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSTypeScope returns ALSSigScope + * ALSSigScope returns ALSSigScope + * + * Constraint: + * (exactly?='exactly'? number=INT type=[ALSSignatureDeclaration|ID]) + */ + protected void sequence_ALSSigScope(ISerializationContext context, ALSSigScope semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSSignatureBody returns ALSSignatureBody + * + * Constraint: + * ( + * (multiplicity=ALSMultiplicity | abstract?='abstract')* + * declarations+=ALSSignatureDeclaration + * declarations+=ALSSignatureDeclaration* + * (supertype=[ALSSignatureDeclaration|ID] | (superset+=[ALSSignatureDeclaration|ID] superset+=[ALSSignatureDeclaration|ID]*))? + * (fields+=ALSFieldDeclaration fields+=ALSFieldDeclaration*)? + * ) + */ + protected void sequence_ALSSignatureBody(ISerializationContext context, ALSSignatureBody semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * ALSRelationDeclaration returns ALSSignatureDeclaration + * ALSTypeDeclaration returns ALSSignatureDeclaration + * ALSSignatureDeclaration returns ALSSignatureDeclaration + * + * Constraint: + * name=ALSID + */ + protected void sequence_ALSSignatureDeclaration(ISerializationContext context, ALSSignatureDeclaration semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION__NAME)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSSignatureDeclarationAccess().getNameALSIDParserRuleCall_0(), semanticObject.getName()); + feeder.finish(); + } + + + /** + * Contexts: + * ALSRelationDeclaration returns ALSVariableDeclaration + * ALSVariableDeclaration returns ALSVariableDeclaration + * + * Constraint: + * (name=ALSID range=ALSTerm) + */ + protected void sequence_ALSVariableDeclaration(ISerializationContext context, ALSVariableDeclaration semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_RELATION_DECLARATION__NAME)); + if (transientValues.isValueTransient(semanticObject, AlloyLanguagePackage.Literals.ALS_VARIABLE_DECLARATION__RANGE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, AlloyLanguagePackage.Literals.ALS_VARIABLE_DECLARATION__RANGE)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getALSVariableDeclarationAccess().getNameALSIDParserRuleCall_0_0(), semanticObject.getName()); + feeder.accept(grammarAccess.getALSVariableDeclarationAccess().getRangeALSTermParserRuleCall_2_0(), semanticObject.getRange()); + feeder.finish(); + } + + +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSyntacticSequencer.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSyntacticSequencer.java new file mode 100644 index 00000000..4c1eaf02 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/serializer/AlloyLanguageSyntacticSequencer.java @@ -0,0 +1,214 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner.serializer; + +import com.google.inject.Inject; +import hu.bme.mit.inf.dslreasoner.services.AlloyLanguageGrammarAccess; +import java.util.List; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.xtext.IGrammarAccess; +import org.eclipse.xtext.RuleCall; +import org.eclipse.xtext.nodemodel.INode; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.AbstractElementAlias; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.AlternativeAlias; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.TokenAlias; +import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynNavigable; +import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynTransition; +import org.eclipse.xtext.serializer.sequencer.AbstractSyntacticSequencer; + +@SuppressWarnings("all") +public class AlloyLanguageSyntacticSequencer extends AbstractSyntacticSequencer { + + protected AlloyLanguageGrammarAccess grammarAccess; + protected AbstractElementAlias match_ALSAnd_AmpersandAmpersandKeyword_1_1_0_or_AndKeyword_1_1_1; + protected AbstractElementAlias match_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_a; + protected AbstractElementAlias match_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_p; + protected AbstractElementAlias match_ALSIff_IffKeyword_1_1_1_or_LessThanSignEqualsSignGreaterThanSignKeyword_1_1_0; + protected AbstractElementAlias match_ALSImpl_EqualsSignGreaterThanSignKeyword_1_1_0_or_ImpliesKeyword_1_1_1; + protected AbstractElementAlias match_ALSOr_OrKeyword_1_1_1_or_VerticalLineVerticalLineKeyword_1_1_0; + protected AbstractElementAlias match_ALSPreficed_ExclamationMarkKeyword_0_1_0_0_or_NotKeyword_0_1_0_1; + + @Inject + protected void init(IGrammarAccess access) { + grammarAccess = (AlloyLanguageGrammarAccess) access; + match_ALSAnd_AmpersandAmpersandKeyword_1_1_0_or_AndKeyword_1_1_1 = new AlternativeAlias(false, false, new TokenAlias(false, false, grammarAccess.getALSAndAccess().getAmpersandAmpersandKeyword_1_1_0()), new TokenAlias(false, false, grammarAccess.getALSAndAccess().getAndKeyword_1_1_1())); + match_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_a = new TokenAlias(true, true, grammarAccess.getALSBasicRelationTermAccess().getLeftParenthesisKeyword_6_0()); + match_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_p = new TokenAlias(true, false, grammarAccess.getALSBasicRelationTermAccess().getLeftParenthesisKeyword_6_0()); + match_ALSIff_IffKeyword_1_1_1_or_LessThanSignEqualsSignGreaterThanSignKeyword_1_1_0 = new AlternativeAlias(false, false, new TokenAlias(false, false, grammarAccess.getALSIffAccess().getIffKeyword_1_1_1()), new TokenAlias(false, false, grammarAccess.getALSIffAccess().getLessThanSignEqualsSignGreaterThanSignKeyword_1_1_0())); + match_ALSImpl_EqualsSignGreaterThanSignKeyword_1_1_0_or_ImpliesKeyword_1_1_1 = new AlternativeAlias(false, false, new TokenAlias(false, false, grammarAccess.getALSImplAccess().getEqualsSignGreaterThanSignKeyword_1_1_0()), new TokenAlias(false, false, grammarAccess.getALSImplAccess().getImpliesKeyword_1_1_1())); + match_ALSOr_OrKeyword_1_1_1_or_VerticalLineVerticalLineKeyword_1_1_0 = new AlternativeAlias(false, false, new TokenAlias(false, false, grammarAccess.getALSOrAccess().getOrKeyword_1_1_1()), new TokenAlias(false, false, grammarAccess.getALSOrAccess().getVerticalLineVerticalLineKeyword_1_1_0())); + match_ALSPreficed_ExclamationMarkKeyword_0_1_0_0_or_NotKeyword_0_1_0_1 = new AlternativeAlias(false, false, new TokenAlias(false, false, grammarAccess.getALSPreficedAccess().getExclamationMarkKeyword_0_1_0_0()), new TokenAlias(false, false, grammarAccess.getALSPreficedAccess().getNotKeyword_0_1_0_1())); + } + + @Override + protected String getUnassignedRuleCallToken(EObject semanticObject, RuleCall ruleCall, INode node) { + return ""; + } + + + @Override + protected void emitUnassignedTokens(EObject semanticObject, ISynTransition transition, INode fromNode, INode toNode) { + if (transition.getAmbiguousSyntaxes().isEmpty()) return; + List transitionNodes = collectNodes(fromNode, toNode); + for (AbstractElementAlias syntax : transition.getAmbiguousSyntaxes()) { + List syntaxNodes = getNodesFor(transitionNodes, syntax); + if (match_ALSAnd_AmpersandAmpersandKeyword_1_1_0_or_AndKeyword_1_1_1.equals(syntax)) + emit_ALSAnd_AmpersandAmpersandKeyword_1_1_0_or_AndKeyword_1_1_1(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_a.equals(syntax)) + emit_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_a(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_p.equals(syntax)) + emit_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_p(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ALSIff_IffKeyword_1_1_1_or_LessThanSignEqualsSignGreaterThanSignKeyword_1_1_0.equals(syntax)) + emit_ALSIff_IffKeyword_1_1_1_or_LessThanSignEqualsSignGreaterThanSignKeyword_1_1_0(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ALSImpl_EqualsSignGreaterThanSignKeyword_1_1_0_or_ImpliesKeyword_1_1_1.equals(syntax)) + emit_ALSImpl_EqualsSignGreaterThanSignKeyword_1_1_0_or_ImpliesKeyword_1_1_1(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ALSOr_OrKeyword_1_1_1_or_VerticalLineVerticalLineKeyword_1_1_0.equals(syntax)) + emit_ALSOr_OrKeyword_1_1_1_or_VerticalLineVerticalLineKeyword_1_1_0(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ALSPreficed_ExclamationMarkKeyword_0_1_0_0_or_NotKeyword_0_1_0_1.equals(syntax)) + emit_ALSPreficed_ExclamationMarkKeyword_0_1_0_0_or_NotKeyword_0_1_0_1(semanticObject, getLastNavigableState(), syntaxNodes); + else acceptNodes(getLastNavigableState(), syntaxNodes); + } + } + + /** + * Ambiguous syntax: + * 'and' | '&&' + * + * This ambiguous syntax occurs at: + * {ALSAnd.leftOperand=} (ambiguity) rightOperand=ALSComparison + */ + protected void emit_ALSAnd_AmpersandAmpersandKeyword_1_1_0_or_AndKeyword_1_1_1(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * '('* + * + * This ambiguous syntax occurs at: + * (rule start) (ambiguity) '#' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) '*' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) '-' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) 'Int' (rule start) + * (rule start) (ambiguity) '^' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) 'iden' (rule start) + * (rule start) (ambiguity) 'none' (rule start) + * (rule start) (ambiguity) 'sum' variables+=ALSVariableDeclaration + * (rule start) (ambiguity) 'univ' (rule start) + * (rule start) (ambiguity) '~' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) ('!' | 'not') operand=ALSBasicRelationTerm + * (rule start) (ambiguity) referred=[ALSRelationDeclaration|ID] + * (rule start) (ambiguity) referredDefinition=[ALSDefinition|ID] + * (rule start) (ambiguity) referredNumericOperator=ALSNumericOperator + * (rule start) (ambiguity) type=ALSMultiplicity + * (rule start) (ambiguity) value=INT + * (rule start) (ambiguity) {ALSAnd.leftOperand=} + * (rule start) (ambiguity) {ALSDirectProduct.leftOperand=} + * (rule start) (ambiguity) {ALSEquals.leftOperand=} + * (rule start) (ambiguity) {ALSIff.leftOperand=} + * (rule start) (ambiguity) {ALSImpl.leftOperand=} + * (rule start) (ambiguity) {ALSIntersection.leftOperand=} + * (rule start) (ambiguity) {ALSJoin.leftOperand=} + * (rule start) (ambiguity) {ALSLeq.leftOperand=} + * (rule start) (ambiguity) {ALSLess.leftOperand=} + * (rule start) (ambiguity) {ALSMeq.leftOperand=} + * (rule start) (ambiguity) {ALSMinus.leftOperand=} + * (rule start) (ambiguity) {ALSMore.leftOperand=} + * (rule start) (ambiguity) {ALSNotEquals.leftOperand=} + * (rule start) (ambiguity) {ALSOr.leftOperand=} + * (rule start) (ambiguity) {ALSOverride.leftOperand=} + * (rule start) (ambiguity) {ALSPlus.leftOperand=} + * (rule start) (ambiguity) {ALSRangeRestrictionLeft.filter=} + * (rule start) (ambiguity) {ALSRangeRestrictionRight.relation=} + * (rule start) (ambiguity) {ALSSubset.leftOperand=} + */ + protected void emit_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_a(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * '('+ + * + * This ambiguous syntax occurs at: + * (rule start) (ambiguity) '#' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) '*' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) '-' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) '^' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) 'sum' variables+=ALSVariableDeclaration + * (rule start) (ambiguity) '~' operand=ALSBasicRelationTerm + * (rule start) (ambiguity) ('!' | 'not') operand=ALSBasicRelationTerm + * (rule start) (ambiguity) referredDefinition=[ALSDefinition|ID] + * (rule start) (ambiguity) referredNumericOperator=ALSNumericOperator + * (rule start) (ambiguity) type=ALSMultiplicity + * (rule start) (ambiguity) {ALSAnd.leftOperand=} + * (rule start) (ambiguity) {ALSDirectProduct.leftOperand=} + * (rule start) (ambiguity) {ALSEquals.leftOperand=} + * (rule start) (ambiguity) {ALSIff.leftOperand=} + * (rule start) (ambiguity) {ALSImpl.leftOperand=} + * (rule start) (ambiguity) {ALSIntersection.leftOperand=} + * (rule start) (ambiguity) {ALSJoin.leftOperand=} + * (rule start) (ambiguity) {ALSLeq.leftOperand=} + * (rule start) (ambiguity) {ALSLess.leftOperand=} + * (rule start) (ambiguity) {ALSMeq.leftOperand=} + * (rule start) (ambiguity) {ALSMinus.leftOperand=} + * (rule start) (ambiguity) {ALSMore.leftOperand=} + * (rule start) (ambiguity) {ALSNotEquals.leftOperand=} + * (rule start) (ambiguity) {ALSOr.leftOperand=} + * (rule start) (ambiguity) {ALSOverride.leftOperand=} + * (rule start) (ambiguity) {ALSPlus.leftOperand=} + * (rule start) (ambiguity) {ALSRangeRestrictionLeft.filter=} + * (rule start) (ambiguity) {ALSRangeRestrictionRight.relation=} + * (rule start) (ambiguity) {ALSSubset.leftOperand=} + */ + protected void emit_ALSBasicRelationTerm_LeftParenthesisKeyword_6_0_p(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * 'iff' | '<=>' + * + * This ambiguous syntax occurs at: + * {ALSIff.leftOperand=} (ambiguity) rightOperand=ALSImpl + */ + protected void emit_ALSIff_IffKeyword_1_1_1_or_LessThanSignEqualsSignGreaterThanSignKeyword_1_1_0(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * '=>' | 'implies' + * + * This ambiguous syntax occurs at: + * {ALSImpl.leftOperand=} (ambiguity) rightOperand=ALSAnd + */ + protected void emit_ALSImpl_EqualsSignGreaterThanSignKeyword_1_1_0_or_ImpliesKeyword_1_1_1(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * '||' | 'or' + * + * This ambiguous syntax occurs at: + * {ALSOr.leftOperand=} (ambiguity) rightOperand=ALSIff + */ + protected void emit_ALSOr_OrKeyword_1_1_1_or_VerticalLineVerticalLineKeyword_1_1_0(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * '!' | 'not' + * + * This ambiguous syntax occurs at: + * (rule start) '('* (ambiguity) operand=ALSBasicRelationTerm + * (rule start) '('+ (ambiguity) operand=ALSBasicRelationTerm + */ + protected void emit_ALSPreficed_ExclamationMarkKeyword_0_1_0_0_or_NotKeyword_0_1_0_1(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/services/AlloyLanguageGrammarAccess.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/services/AlloyLanguageGrammarAccess.java new file mode 100644 index 00000000..1ccf8905 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/services/AlloyLanguageGrammarAccess.java @@ -0,0 +1,2649 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner.services; + +import com.google.inject.Singleton; +import com.google.inject.Inject; + +import java.util.List; + +import org.eclipse.xtext.*; +import org.eclipse.xtext.service.GrammarProvider; +import org.eclipse.xtext.service.AbstractElementFinder.*; + +import org.eclipse.xtext.common.services.TerminalsGrammarAccess; + +@Singleton +public class AlloyLanguageGrammarAccess extends AbstractGrammarElementFinder { + + + public class ALSDocumentElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSDocument"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0); + private final Assignment cEnumDeclarationsAssignment_0_0 = (Assignment)cAlternatives_0.eContents().get(0); + private final RuleCall cEnumDeclarationsALSEnumDeclarationParserRuleCall_0_0_0 = (RuleCall)cEnumDeclarationsAssignment_0_0.eContents().get(0); + private final Assignment cSignatureBodiesAssignment_0_1 = (Assignment)cAlternatives_0.eContents().get(1); + private final RuleCall cSignatureBodiesALSSignatureBodyParserRuleCall_0_1_0 = (RuleCall)cSignatureBodiesAssignment_0_1.eContents().get(0); + private final Assignment cFunctionDefinitionsAssignment_0_2 = (Assignment)cAlternatives_0.eContents().get(2); + private final RuleCall cFunctionDefinitionsALSFunctionDefinitionParserRuleCall_0_2_0 = (RuleCall)cFunctionDefinitionsAssignment_0_2.eContents().get(0); + private final Assignment cRelationDefinitionsAssignment_0_3 = (Assignment)cAlternatives_0.eContents().get(3); + private final RuleCall cRelationDefinitionsALSRelationDefinitionParserRuleCall_0_3_0 = (RuleCall)cRelationDefinitionsAssignment_0_3.eContents().get(0); + private final Assignment cFactDeclarationsAssignment_0_4 = (Assignment)cAlternatives_0.eContents().get(4); + private final RuleCall cFactDeclarationsALSFactDeclarationParserRuleCall_0_4_0 = (RuleCall)cFactDeclarationsAssignment_0_4.eContents().get(0); + private final Assignment cRunCommandAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cRunCommandALSRunCommandParserRuleCall_1_0 = (RuleCall)cRunCommandAssignment_1.eContents().get(0); + + //ALSDocument: + // (enumDeclarations+=ALSEnumDeclaration | signatureBodies+=ALSSignatureBody | + // functionDefinitions+=ALSFunctionDefinition | relationDefinitions+=ALSRelationDefinition | + // factDeclarations+=ALSFactDeclaration)+ + // runCommand=ALSRunCommand; + @Override public ParserRule getRule() { return rule; } + + //(enumDeclarations+=ALSEnumDeclaration | signatureBodies+=ALSSignatureBody | functionDefinitions+=ALSFunctionDefinition | + //relationDefinitions+=ALSRelationDefinition | factDeclarations+=ALSFactDeclaration)+ runCommand=ALSRunCommand + public Group getGroup() { return cGroup; } + + //(enumDeclarations+=ALSEnumDeclaration | signatureBodies+=ALSSignatureBody | functionDefinitions+=ALSFunctionDefinition | + //relationDefinitions+=ALSRelationDefinition | factDeclarations+=ALSFactDeclaration)+ + public Alternatives getAlternatives_0() { return cAlternatives_0; } + + //enumDeclarations+=ALSEnumDeclaration + public Assignment getEnumDeclarationsAssignment_0_0() { return cEnumDeclarationsAssignment_0_0; } + + //ALSEnumDeclaration + public RuleCall getEnumDeclarationsALSEnumDeclarationParserRuleCall_0_0_0() { return cEnumDeclarationsALSEnumDeclarationParserRuleCall_0_0_0; } + + //signatureBodies+=ALSSignatureBody + public Assignment getSignatureBodiesAssignment_0_1() { return cSignatureBodiesAssignment_0_1; } + + //ALSSignatureBody + public RuleCall getSignatureBodiesALSSignatureBodyParserRuleCall_0_1_0() { return cSignatureBodiesALSSignatureBodyParserRuleCall_0_1_0; } + + //functionDefinitions+=ALSFunctionDefinition + public Assignment getFunctionDefinitionsAssignment_0_2() { return cFunctionDefinitionsAssignment_0_2; } + + //ALSFunctionDefinition + public RuleCall getFunctionDefinitionsALSFunctionDefinitionParserRuleCall_0_2_0() { return cFunctionDefinitionsALSFunctionDefinitionParserRuleCall_0_2_0; } + + //relationDefinitions+=ALSRelationDefinition + public Assignment getRelationDefinitionsAssignment_0_3() { return cRelationDefinitionsAssignment_0_3; } + + //ALSRelationDefinition + public RuleCall getRelationDefinitionsALSRelationDefinitionParserRuleCall_0_3_0() { return cRelationDefinitionsALSRelationDefinitionParserRuleCall_0_3_0; } + + //factDeclarations+=ALSFactDeclaration + public Assignment getFactDeclarationsAssignment_0_4() { return cFactDeclarationsAssignment_0_4; } + + //ALSFactDeclaration + public RuleCall getFactDeclarationsALSFactDeclarationParserRuleCall_0_4_0() { return cFactDeclarationsALSFactDeclarationParserRuleCall_0_4_0; } + + //runCommand=ALSRunCommand + public Assignment getRunCommandAssignment_1() { return cRunCommandAssignment_1; } + + //ALSRunCommand + public RuleCall getRunCommandALSRunCommandParserRuleCall_1_0() { return cRunCommandALSRunCommandParserRuleCall_1_0; } + } + + public class ALSIDElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSID"); + private final RuleCall cIDTerminalRuleCall = (RuleCall)rule.eContents().get(1); + + //ALSID: + // ID; + @Override public ParserRule getRule() { return rule; } + + //ID + public RuleCall getIDTerminalRuleCall() { return cIDTerminalRuleCall; } + } + + public class ALSRelationDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRelationDeclaration"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cALSTypeDeclarationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cALSEnumLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cALSFieldDeclarationParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cALSVariableDeclarationParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3); + + //////////////////////////////////// + //// ALS types + //////////////////////////////////// + //ALSRelationDeclaration: + // ALSTypeDeclaration | ALSEnumLiteral | ALSFieldDeclaration | ALSVariableDeclaration; + @Override public ParserRule getRule() { return rule; } + + //ALSTypeDeclaration | ALSEnumLiteral | ALSFieldDeclaration | ALSVariableDeclaration + public Alternatives getAlternatives() { return cAlternatives; } + + //ALSTypeDeclaration + public RuleCall getALSTypeDeclarationParserRuleCall_0() { return cALSTypeDeclarationParserRuleCall_0; } + + //ALSEnumLiteral + public RuleCall getALSEnumLiteralParserRuleCall_1() { return cALSEnumLiteralParserRuleCall_1; } + + //ALSFieldDeclaration + public RuleCall getALSFieldDeclarationParserRuleCall_2() { return cALSFieldDeclarationParserRuleCall_2; } + + //ALSVariableDeclaration + public RuleCall getALSVariableDeclarationParserRuleCall_3() { return cALSVariableDeclarationParserRuleCall_3; } + } + + public class ALSTypeDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTypeDeclaration"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cALSEnumDeclarationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cALSSignatureDeclarationParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //ALSTypeDeclaration: + // ALSEnumDeclaration | ALSSignatureDeclaration; + @Override public ParserRule getRule() { return rule; } + + //ALSEnumDeclaration | ALSSignatureDeclaration + public Alternatives getAlternatives() { return cAlternatives; } + + //ALSEnumDeclaration + public RuleCall getALSEnumDeclarationParserRuleCall_0() { return cALSEnumDeclarationParserRuleCall_0; } + + //ALSSignatureDeclaration + public RuleCall getALSSignatureDeclarationParserRuleCall_1() { return cALSSignatureDeclarationParserRuleCall_1; } + } + + public class ALSEnumDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumDeclaration"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cEnumKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameALSIDParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cLiteralAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cLiteralALSEnumLiteralParserRuleCall_3_0 = (RuleCall)cLiteralAssignment_3.eContents().get(0); + private final Group cGroup_4 = (Group)cGroup.eContents().get(4); + private final Keyword cCommaKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); + private final Assignment cLiteralAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); + private final RuleCall cLiteralALSEnumLiteralParserRuleCall_4_1_0 = (RuleCall)cLiteralAssignment_4_1.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); + + //ALSEnumDeclaration: + // 'enum' name=ALSID '{' + // literal+=ALSEnumLiteral ("," literal+=ALSEnumLiteral)* + // '}'; + @Override public ParserRule getRule() { return rule; } + + //'enum' name=ALSID '{' literal+=ALSEnumLiteral ("," literal+=ALSEnumLiteral)* '}' + public Group getGroup() { return cGroup; } + + //'enum' + public Keyword getEnumKeyword_0() { return cEnumKeyword_0; } + + //name=ALSID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_1_0() { return cNameALSIDParserRuleCall_1_0; } + + //'{' + public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; } + + //literal+=ALSEnumLiteral + public Assignment getLiteralAssignment_3() { return cLiteralAssignment_3; } + + //ALSEnumLiteral + public RuleCall getLiteralALSEnumLiteralParserRuleCall_3_0() { return cLiteralALSEnumLiteralParserRuleCall_3_0; } + + //("," literal+=ALSEnumLiteral)* + public Group getGroup_4() { return cGroup_4; } + + //"," + public Keyword getCommaKeyword_4_0() { return cCommaKeyword_4_0; } + + //literal+=ALSEnumLiteral + public Assignment getLiteralAssignment_4_1() { return cLiteralAssignment_4_1; } + + //ALSEnumLiteral + public RuleCall getLiteralALSEnumLiteralParserRuleCall_4_1_0() { return cLiteralALSEnumLiteralParserRuleCall_4_1_0; } + + //'}' + public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; } + } + + public class ALSEnumLiteralElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSEnumLiteral"); + private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1); + private final RuleCall cNameALSIDParserRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0); + + //ALSEnumLiteral: + // name=ALSID; + @Override public ParserRule getRule() { return rule; } + + //name=ALSID + public Assignment getNameAssignment() { return cNameAssignment; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_0() { return cNameALSIDParserRuleCall_0; } + } + + public class ALSSignatureDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureDeclaration"); + private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1); + private final RuleCall cNameALSIDParserRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0); + + //ALSSignatureDeclaration: + // name=ALSID; + @Override public ParserRule getRule() { return rule; } + + //name=ALSID + public Assignment getNameAssignment() { return cNameAssignment; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_0() { return cNameALSIDParserRuleCall_0; } + } + + public class ALSSignatureBodyElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSignatureBody"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final UnorderedGroup cUnorderedGroup_0 = (UnorderedGroup)cGroup.eContents().get(0); + private final Assignment cMultiplicityAssignment_0_0 = (Assignment)cUnorderedGroup_0.eContents().get(0); + private final RuleCall cMultiplicityALSMultiplicityEnumRuleCall_0_0_0 = (RuleCall)cMultiplicityAssignment_0_0.eContents().get(0); + private final Assignment cAbstractAssignment_0_1 = (Assignment)cUnorderedGroup_0.eContents().get(1); + private final Keyword cAbstractAbstractKeyword_0_1_0 = (Keyword)cAbstractAssignment_0_1.eContents().get(0); + private final Keyword cSigKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cDeclarationsAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cDeclarationsALSSignatureDeclarationParserRuleCall_2_0 = (RuleCall)cDeclarationsAssignment_2.eContents().get(0); + private final Group cGroup_3 = (Group)cGroup.eContents().get(3); + private final Keyword cCommaKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0); + private final Assignment cDeclarationsAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1); + private final RuleCall cDeclarationsALSSignatureDeclarationParserRuleCall_3_1_0 = (RuleCall)cDeclarationsAssignment_3_1.eContents().get(0); + private final Alternatives cAlternatives_4 = (Alternatives)cGroup.eContents().get(4); + private final Group cGroup_4_0 = (Group)cAlternatives_4.eContents().get(0); + private final Keyword cExtendsKeyword_4_0_0 = (Keyword)cGroup_4_0.eContents().get(0); + private final Assignment cSupertypeAssignment_4_0_1 = (Assignment)cGroup_4_0.eContents().get(1); + private final CrossReference cSupertypeALSSignatureDeclarationCrossReference_4_0_1_0 = (CrossReference)cSupertypeAssignment_4_0_1.eContents().get(0); + private final RuleCall cSupertypeALSSignatureDeclarationIDTerminalRuleCall_4_0_1_0_1 = (RuleCall)cSupertypeALSSignatureDeclarationCrossReference_4_0_1_0.eContents().get(1); + private final Group cGroup_4_1 = (Group)cAlternatives_4.eContents().get(1); + private final Keyword cInKeyword_4_1_0 = (Keyword)cGroup_4_1.eContents().get(0); + private final Assignment cSupersetAssignment_4_1_1 = (Assignment)cGroup_4_1.eContents().get(1); + private final CrossReference cSupersetALSSignatureDeclarationCrossReference_4_1_1_0 = (CrossReference)cSupersetAssignment_4_1_1.eContents().get(0); + private final RuleCall cSupersetALSSignatureDeclarationIDTerminalRuleCall_4_1_1_0_1 = (RuleCall)cSupersetALSSignatureDeclarationCrossReference_4_1_1_0.eContents().get(1); + private final Group cGroup_4_1_2 = (Group)cGroup_4_1.eContents().get(2); + private final Keyword cPlusSignKeyword_4_1_2_0 = (Keyword)cGroup_4_1_2.eContents().get(0); + private final Assignment cSupersetAssignment_4_1_2_1 = (Assignment)cGroup_4_1_2.eContents().get(1); + private final CrossReference cSupersetALSSignatureDeclarationCrossReference_4_1_2_1_0 = (CrossReference)cSupersetAssignment_4_1_2_1.eContents().get(0); + private final RuleCall cSupersetALSSignatureDeclarationIDTerminalRuleCall_4_1_2_1_0_1 = (RuleCall)cSupersetALSSignatureDeclarationCrossReference_4_1_2_1_0.eContents().get(1); + private final Keyword cLeftCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); + private final Group cGroup_6 = (Group)cGroup.eContents().get(6); + private final Assignment cFieldsAssignment_6_0 = (Assignment)cGroup_6.eContents().get(0); + private final RuleCall cFieldsALSFieldDeclarationParserRuleCall_6_0_0 = (RuleCall)cFieldsAssignment_6_0.eContents().get(0); + private final Group cGroup_6_1 = (Group)cGroup_6.eContents().get(1); + private final Keyword cCommaKeyword_6_1_0 = (Keyword)cGroup_6_1.eContents().get(0); + private final Assignment cFieldsAssignment_6_1_1 = (Assignment)cGroup_6_1.eContents().get(1); + private final RuleCall cFieldsALSFieldDeclarationParserRuleCall_6_1_1_0 = (RuleCall)cFieldsAssignment_6_1_1.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_7 = (Keyword)cGroup.eContents().get(7); + + //ALSSignatureBody: + // (multiplicity=ALSMultiplicity? & abstract?='abstract'?) + // 'sig' + // declarations+=ALSSignatureDeclaration (',' declarations+=ALSSignatureDeclaration)* ('extends' + // supertype=[ALSSignatureDeclaration] | 'in' superset+=[ALSSignatureDeclaration] ('+' + // superset+=[ALSSignatureDeclaration])*)? + // '{' (fields+=ALSFieldDeclaration ("," fields+=ALSFieldDeclaration)*)? '}'; + @Override public ParserRule getRule() { return rule; } + + //(multiplicity=ALSMultiplicity? & abstract?='abstract'?) 'sig' declarations+=ALSSignatureDeclaration (',' + //declarations+=ALSSignatureDeclaration)* ('extends' supertype=[ALSSignatureDeclaration] | 'in' + //superset+=[ALSSignatureDeclaration] ('+' superset+=[ALSSignatureDeclaration])*)? '{' (fields+=ALSFieldDeclaration ("," + //fields+=ALSFieldDeclaration)*)? '}' + public Group getGroup() { return cGroup; } + + //multiplicity=ALSMultiplicity? & abstract?='abstract'? + public UnorderedGroup getUnorderedGroup_0() { return cUnorderedGroup_0; } + + //multiplicity=ALSMultiplicity? + public Assignment getMultiplicityAssignment_0_0() { return cMultiplicityAssignment_0_0; } + + //ALSMultiplicity + public RuleCall getMultiplicityALSMultiplicityEnumRuleCall_0_0_0() { return cMultiplicityALSMultiplicityEnumRuleCall_0_0_0; } + + //abstract?='abstract'? + public Assignment getAbstractAssignment_0_1() { return cAbstractAssignment_0_1; } + + //'abstract' + public Keyword getAbstractAbstractKeyword_0_1_0() { return cAbstractAbstractKeyword_0_1_0; } + + //'sig' + public Keyword getSigKeyword_1() { return cSigKeyword_1; } + + //declarations+=ALSSignatureDeclaration + public Assignment getDeclarationsAssignment_2() { return cDeclarationsAssignment_2; } + + //ALSSignatureDeclaration + public RuleCall getDeclarationsALSSignatureDeclarationParserRuleCall_2_0() { return cDeclarationsALSSignatureDeclarationParserRuleCall_2_0; } + + //(',' declarations+=ALSSignatureDeclaration)* + public Group getGroup_3() { return cGroup_3; } + + //',' + public Keyword getCommaKeyword_3_0() { return cCommaKeyword_3_0; } + + //declarations+=ALSSignatureDeclaration + public Assignment getDeclarationsAssignment_3_1() { return cDeclarationsAssignment_3_1; } + + //ALSSignatureDeclaration + public RuleCall getDeclarationsALSSignatureDeclarationParserRuleCall_3_1_0() { return cDeclarationsALSSignatureDeclarationParserRuleCall_3_1_0; } + + //('extends' supertype=[ALSSignatureDeclaration] | 'in' superset+=[ALSSignatureDeclaration] ('+' + //superset+=[ALSSignatureDeclaration])*)? + public Alternatives getAlternatives_4() { return cAlternatives_4; } + + //'extends' supertype=[ALSSignatureDeclaration] + public Group getGroup_4_0() { return cGroup_4_0; } + + //'extends' + public Keyword getExtendsKeyword_4_0_0() { return cExtendsKeyword_4_0_0; } + + //supertype=[ALSSignatureDeclaration] + public Assignment getSupertypeAssignment_4_0_1() { return cSupertypeAssignment_4_0_1; } + + //[ALSSignatureDeclaration] + public CrossReference getSupertypeALSSignatureDeclarationCrossReference_4_0_1_0() { return cSupertypeALSSignatureDeclarationCrossReference_4_0_1_0; } + + //ID + public RuleCall getSupertypeALSSignatureDeclarationIDTerminalRuleCall_4_0_1_0_1() { return cSupertypeALSSignatureDeclarationIDTerminalRuleCall_4_0_1_0_1; } + + //'in' superset+=[ALSSignatureDeclaration] ('+' superset+=[ALSSignatureDeclaration])* + public Group getGroup_4_1() { return cGroup_4_1; } + + //'in' + public Keyword getInKeyword_4_1_0() { return cInKeyword_4_1_0; } + + //superset+=[ALSSignatureDeclaration] + public Assignment getSupersetAssignment_4_1_1() { return cSupersetAssignment_4_1_1; } + + //[ALSSignatureDeclaration] + public CrossReference getSupersetALSSignatureDeclarationCrossReference_4_1_1_0() { return cSupersetALSSignatureDeclarationCrossReference_4_1_1_0; } + + //ID + public RuleCall getSupersetALSSignatureDeclarationIDTerminalRuleCall_4_1_1_0_1() { return cSupersetALSSignatureDeclarationIDTerminalRuleCall_4_1_1_0_1; } + + //('+' superset+=[ALSSignatureDeclaration])* + public Group getGroup_4_1_2() { return cGroup_4_1_2; } + + //'+' + public Keyword getPlusSignKeyword_4_1_2_0() { return cPlusSignKeyword_4_1_2_0; } + + //superset+=[ALSSignatureDeclaration] + public Assignment getSupersetAssignment_4_1_2_1() { return cSupersetAssignment_4_1_2_1; } + + //[ALSSignatureDeclaration] + public CrossReference getSupersetALSSignatureDeclarationCrossReference_4_1_2_1_0() { return cSupersetALSSignatureDeclarationCrossReference_4_1_2_1_0; } + + //ID + public RuleCall getSupersetALSSignatureDeclarationIDTerminalRuleCall_4_1_2_1_0_1() { return cSupersetALSSignatureDeclarationIDTerminalRuleCall_4_1_2_1_0_1; } + + //'{' + public Keyword getLeftCurlyBracketKeyword_5() { return cLeftCurlyBracketKeyword_5; } + + //(fields+=ALSFieldDeclaration ("," fields+=ALSFieldDeclaration)*)? + public Group getGroup_6() { return cGroup_6; } + + //fields+=ALSFieldDeclaration + public Assignment getFieldsAssignment_6_0() { return cFieldsAssignment_6_0; } + + //ALSFieldDeclaration + public RuleCall getFieldsALSFieldDeclarationParserRuleCall_6_0_0() { return cFieldsALSFieldDeclarationParserRuleCall_6_0_0; } + + //("," fields+=ALSFieldDeclaration)* + public Group getGroup_6_1() { return cGroup_6_1; } + + //"," + public Keyword getCommaKeyword_6_1_0() { return cCommaKeyword_6_1_0; } + + //fields+=ALSFieldDeclaration + public Assignment getFieldsAssignment_6_1_1() { return cFieldsAssignment_6_1_1; } + + //ALSFieldDeclaration + public RuleCall getFieldsALSFieldDeclarationParserRuleCall_6_1_1_0() { return cFieldsALSFieldDeclarationParserRuleCall_6_1_1_0; } + + //'}' + public Keyword getRightCurlyBracketKeyword_7() { return cRightCurlyBracketKeyword_7; } + } + + public class ALSFieldDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFieldDeclaration"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cNameAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cNameALSIDParserRuleCall_0_0 = (RuleCall)cNameAssignment_0.eContents().get(0); + private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cMultiplicityAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cMultiplicityALSMultiplicityEnumRuleCall_2_0 = (RuleCall)cMultiplicityAssignment_2.eContents().get(0); + private final Assignment cTypeAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cTypeALSTermParserRuleCall_3_0 = (RuleCall)cTypeAssignment_3.eContents().get(0); + + //ALSFieldDeclaration: + // name=ALSID ':' multiplicity=ALSMultiplicity? type=ALSTerm; + @Override public ParserRule getRule() { return rule; } + + //name=ALSID ':' multiplicity=ALSMultiplicity? type=ALSTerm + public Group getGroup() { return cGroup; } + + //name=ALSID + public Assignment getNameAssignment_0() { return cNameAssignment_0; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_0_0() { return cNameALSIDParserRuleCall_0_0; } + + //':' + public Keyword getColonKeyword_1() { return cColonKeyword_1; } + + //multiplicity=ALSMultiplicity? + public Assignment getMultiplicityAssignment_2() { return cMultiplicityAssignment_2; } + + //ALSMultiplicity + public RuleCall getMultiplicityALSMultiplicityEnumRuleCall_2_0() { return cMultiplicityALSMultiplicityEnumRuleCall_2_0; } + + //type=ALSTerm + public Assignment getTypeAssignment_3() { return cTypeAssignment_3; } + + //ALSTerm + public RuleCall getTypeALSTermParserRuleCall_3_0() { return cTypeALSTermParserRuleCall_3_0; } + } + + public class ALSDefinitionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSDefinition"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cALSFunctionDefinitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cALSRelationDefinitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //ALSDefinition: + // ALSFunctionDefinition | ALSRelationDefinition; + @Override public ParserRule getRule() { return rule; } + + //ALSFunctionDefinition | ALSRelationDefinition + public Alternatives getAlternatives() { return cAlternatives; } + + //ALSFunctionDefinition + public RuleCall getALSFunctionDefinitionParserRuleCall_0() { return cALSFunctionDefinitionParserRuleCall_0; } + + //ALSRelationDefinition + public RuleCall getALSRelationDefinitionParserRuleCall_1() { return cALSRelationDefinitionParserRuleCall_1; } + } + + public class ALSFunctionDefinitionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFunctionDefinition"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cFunKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameALSIDParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cLeftSquareBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cVariablesAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_3_0 = (RuleCall)cVariablesAssignment_3.eContents().get(0); + private final Group cGroup_4 = (Group)cGroup.eContents().get(4); + private final Keyword cCommaKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); + private final Assignment cVariablesAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_4_1_0 = (RuleCall)cVariablesAssignment_4_1.eContents().get(0); + private final Keyword cRightSquareBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); + private final Keyword cColonKeyword_6 = (Keyword)cGroup.eContents().get(6); + private final Assignment cTypeAssignment_7 = (Assignment)cGroup.eContents().get(7); + private final RuleCall cTypeALSTermParserRuleCall_7_0 = (RuleCall)cTypeAssignment_7.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8); + private final Assignment cValueAssignment_9 = (Assignment)cGroup.eContents().get(9); + private final RuleCall cValueALSTermParserRuleCall_9_0 = (RuleCall)cValueAssignment_9.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_10 = (Keyword)cGroup.eContents().get(10); + + //ALSFunctionDefinition: + // "fun" name=ALSID "[" variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* "]" ":" type=ALSTerm + // "{" value=ALSTerm "}"; + @Override public ParserRule getRule() { return rule; } + + //"fun" name=ALSID "[" variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* "]" ":" type=ALSTerm "{" + //value=ALSTerm "}" + public Group getGroup() { return cGroup; } + + //"fun" + public Keyword getFunKeyword_0() { return cFunKeyword_0; } + + //name=ALSID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_1_0() { return cNameALSIDParserRuleCall_1_0; } + + //"[" + public Keyword getLeftSquareBracketKeyword_2() { return cLeftSquareBracketKeyword_2; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_3() { return cVariablesAssignment_3; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_3_0() { return cVariablesALSVariableDeclarationParserRuleCall_3_0; } + + //(',' variables+=ALSVariableDeclaration)* + public Group getGroup_4() { return cGroup_4; } + + //',' + public Keyword getCommaKeyword_4_0() { return cCommaKeyword_4_0; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_4_1() { return cVariablesAssignment_4_1; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_4_1_0() { return cVariablesALSVariableDeclarationParserRuleCall_4_1_0; } + + //"]" + public Keyword getRightSquareBracketKeyword_5() { return cRightSquareBracketKeyword_5; } + + //":" + public Keyword getColonKeyword_6() { return cColonKeyword_6; } + + //type=ALSTerm + public Assignment getTypeAssignment_7() { return cTypeAssignment_7; } + + //ALSTerm + public RuleCall getTypeALSTermParserRuleCall_7_0() { return cTypeALSTermParserRuleCall_7_0; } + + //"{" + public Keyword getLeftCurlyBracketKeyword_8() { return cLeftCurlyBracketKeyword_8; } + + //value=ALSTerm + public Assignment getValueAssignment_9() { return cValueAssignment_9; } + + //ALSTerm + public RuleCall getValueALSTermParserRuleCall_9_0() { return cValueALSTermParserRuleCall_9_0; } + + //"}" + public Keyword getRightCurlyBracketKeyword_10() { return cRightCurlyBracketKeyword_10; } + } + + public class ALSRelationDefinitionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRelationDefinition"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cPredKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameALSIDParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cLeftSquareBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cVariablesAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_3_0 = (RuleCall)cVariablesAssignment_3.eContents().get(0); + private final Group cGroup_4 = (Group)cGroup.eContents().get(4); + private final Keyword cCommaKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); + private final Assignment cVariablesAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_4_1_0 = (RuleCall)cVariablesAssignment_4_1.eContents().get(0); + private final Keyword cRightSquareBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); + private final Keyword cLeftCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6); + private final Assignment cValueAssignment_7 = (Assignment)cGroup.eContents().get(7); + private final RuleCall cValueALSTermParserRuleCall_7_0 = (RuleCall)cValueAssignment_7.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_8 = (Keyword)cGroup.eContents().get(8); + + //ALSRelationDefinition: + // "pred" name=ALSID "[" variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* "]" + // "{" value=ALSTerm "}"; + @Override public ParserRule getRule() { return rule; } + + //"pred" name=ALSID "[" variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* "]" "{" value=ALSTerm + //"}" + public Group getGroup() { return cGroup; } + + //"pred" + public Keyword getPredKeyword_0() { return cPredKeyword_0; } + + //name=ALSID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_1_0() { return cNameALSIDParserRuleCall_1_0; } + + //"[" + public Keyword getLeftSquareBracketKeyword_2() { return cLeftSquareBracketKeyword_2; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_3() { return cVariablesAssignment_3; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_3_0() { return cVariablesALSVariableDeclarationParserRuleCall_3_0; } + + //(',' variables+=ALSVariableDeclaration)* + public Group getGroup_4() { return cGroup_4; } + + //',' + public Keyword getCommaKeyword_4_0() { return cCommaKeyword_4_0; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_4_1() { return cVariablesAssignment_4_1; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_4_1_0() { return cVariablesALSVariableDeclarationParserRuleCall_4_1_0; } + + //"]" + public Keyword getRightSquareBracketKeyword_5() { return cRightSquareBracketKeyword_5; } + + //"{" + public Keyword getLeftCurlyBracketKeyword_6() { return cLeftCurlyBracketKeyword_6; } + + //value=ALSTerm + public Assignment getValueAssignment_7() { return cValueAssignment_7; } + + //ALSTerm + public RuleCall getValueALSTermParserRuleCall_7_0() { return cValueALSTermParserRuleCall_7_0; } + + //"}" + public Keyword getRightCurlyBracketKeyword_8() { return cRightCurlyBracketKeyword_8; } + } + + public class ALSFactDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSFactDeclaration"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cALSFactDeclarationAction_0 = (Action)cGroup.eContents().get(0); + private final Keyword cFactKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cNameALSIDParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); + private final Assignment cTermAssignment_4 = (Assignment)cGroup.eContents().get(4); + private final RuleCall cTermALSTermParserRuleCall_4_0 = (RuleCall)cTermAssignment_4.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); + + //ALSFactDeclaration: + // {ALSFactDeclaration} 'fact' name=ALSID? '{' term=ALSTerm '}'; + @Override public ParserRule getRule() { return rule; } + + //{ALSFactDeclaration} 'fact' name=ALSID? '{' term=ALSTerm '}' + public Group getGroup() { return cGroup; } + + //{ALSFactDeclaration} + public Action getALSFactDeclarationAction_0() { return cALSFactDeclarationAction_0; } + + //'fact' + public Keyword getFactKeyword_1() { return cFactKeyword_1; } + + //name=ALSID? + public Assignment getNameAssignment_2() { return cNameAssignment_2; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_2_0() { return cNameALSIDParserRuleCall_2_0; } + + //'{' + public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; } + + //term=ALSTerm + public Assignment getTermAssignment_4() { return cTermAssignment_4; } + + //ALSTerm + public RuleCall getTermALSTermParserRuleCall_4_0() { return cTermALSTermParserRuleCall_4_0; } + + //'}' + public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; } + } + + public class ALSTermElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTerm"); + private final RuleCall cALSQuantifiedParserRuleCall = (RuleCall)rule.eContents().get(1); + + //////////////////////////////////// + //// ALS terms + //////////////////////////////////// + //ALSTerm: + // ALSQuantified; + @Override public ParserRule getRule() { return rule; } + + //ALSQuantified + public RuleCall getALSQuantifiedParserRuleCall() { return cALSQuantifiedParserRuleCall; } + } + + public class ALSQuantifiedElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSQuantified"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0); + private final Action cALSQuantifiedExAction_0_0 = (Action)cGroup_0.eContents().get(0); + private final Assignment cTypeAssignment_0_1 = (Assignment)cGroup_0.eContents().get(1); + private final RuleCall cTypeALSMultiplicityEnumRuleCall_0_1_0 = (RuleCall)cTypeAssignment_0_1.eContents().get(0); + private final Assignment cDisjAssignment_0_2 = (Assignment)cGroup_0.eContents().get(2); + private final Keyword cDisjDisjKeyword_0_2_0 = (Keyword)cDisjAssignment_0_2.eContents().get(0); + private final Assignment cVariablesAssignment_0_3 = (Assignment)cGroup_0.eContents().get(3); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_0_3_0 = (RuleCall)cVariablesAssignment_0_3.eContents().get(0); + private final Group cGroup_0_4 = (Group)cGroup_0.eContents().get(4); + private final Keyword cCommaKeyword_0_4_0 = (Keyword)cGroup_0_4.eContents().get(0); + private final Assignment cVariablesAssignment_0_4_1 = (Assignment)cGroup_0_4.eContents().get(1); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_0_4_1_0 = (RuleCall)cVariablesAssignment_0_4_1.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_0_5 = (Keyword)cGroup_0.eContents().get(5); + private final Assignment cExpressionAssignment_0_6 = (Assignment)cGroup_0.eContents().get(6); + private final RuleCall cExpressionALSTermParserRuleCall_0_6_0 = (RuleCall)cExpressionAssignment_0_6.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_0_7 = (Keyword)cGroup_0.eContents().get(7); + private final RuleCall cALSOrParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //ALSQuantified ALSTerm: + // {ALSQuantifiedEx} type=ALSMultiplicity + // disj?='disj'? variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' | + // ALSOr; + @Override public ParserRule getRule() { return rule; } + + //{ALSQuantifiedEx} type=ALSMultiplicity disj?='disj'? variables+=ALSVariableDeclaration (',' + //variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' | ALSOr + public Alternatives getAlternatives() { return cAlternatives; } + + //{ALSQuantifiedEx} type=ALSMultiplicity disj?='disj'? variables+=ALSVariableDeclaration (',' + //variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' + public Group getGroup_0() { return cGroup_0; } + + //{ALSQuantifiedEx} + public Action getALSQuantifiedExAction_0_0() { return cALSQuantifiedExAction_0_0; } + + //type=ALSMultiplicity + public Assignment getTypeAssignment_0_1() { return cTypeAssignment_0_1; } + + //ALSMultiplicity + public RuleCall getTypeALSMultiplicityEnumRuleCall_0_1_0() { return cTypeALSMultiplicityEnumRuleCall_0_1_0; } + + //disj?='disj'? + public Assignment getDisjAssignment_0_2() { return cDisjAssignment_0_2; } + + //'disj' + public Keyword getDisjDisjKeyword_0_2_0() { return cDisjDisjKeyword_0_2_0; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_0_3() { return cVariablesAssignment_0_3; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_0_3_0() { return cVariablesALSVariableDeclarationParserRuleCall_0_3_0; } + + //(',' variables+=ALSVariableDeclaration)* + public Group getGroup_0_4() { return cGroup_0_4; } + + //',' + public Keyword getCommaKeyword_0_4_0() { return cCommaKeyword_0_4_0; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_0_4_1() { return cVariablesAssignment_0_4_1; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_0_4_1_0() { return cVariablesALSVariableDeclarationParserRuleCall_0_4_1_0; } + + //'{' + public Keyword getLeftCurlyBracketKeyword_0_5() { return cLeftCurlyBracketKeyword_0_5; } + + //expression=ALSTerm + public Assignment getExpressionAssignment_0_6() { return cExpressionAssignment_0_6; } + + //ALSTerm + public RuleCall getExpressionALSTermParserRuleCall_0_6_0() { return cExpressionALSTermParserRuleCall_0_6_0; } + + //'}' + public Keyword getRightCurlyBracketKeyword_0_7() { return cRightCurlyBracketKeyword_0_7; } + + //ALSOr + public RuleCall getALSOrParserRuleCall_1() { return cALSOrParserRuleCall_1; } + } + + public class ALSOrElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSOr"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSIffParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSOrLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Alternatives cAlternatives_1_1 = (Alternatives)cGroup_1.eContents().get(1); + private final Keyword cVerticalLineVerticalLineKeyword_1_1_0 = (Keyword)cAlternatives_1_1.eContents().get(0); + private final Keyword cOrKeyword_1_1_1 = (Keyword)cAlternatives_1_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSIffParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSOr ALSTerm: + // ALSIff ({ALSOr.leftOperand=current} ("||" | "or") rightOperand=ALSIff)?; + @Override public ParserRule getRule() { return rule; } + + //ALSIff ({ALSOr.leftOperand=current} ("||" | "or") rightOperand=ALSIff)? + public Group getGroup() { return cGroup; } + + //ALSIff + public RuleCall getALSIffParserRuleCall_0() { return cALSIffParserRuleCall_0; } + + //({ALSOr.leftOperand=current} ("||" | "or") rightOperand=ALSIff)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSOr.leftOperand=current} + public Action getALSOrLeftOperandAction_1_0() { return cALSOrLeftOperandAction_1_0; } + + //"||" | "or" + public Alternatives getAlternatives_1_1() { return cAlternatives_1_1; } + + //"||" + public Keyword getVerticalLineVerticalLineKeyword_1_1_0() { return cVerticalLineVerticalLineKeyword_1_1_0; } + + //"or" + public Keyword getOrKeyword_1_1_1() { return cOrKeyword_1_1_1; } + + //rightOperand=ALSIff + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSIff + public RuleCall getRightOperandALSIffParserRuleCall_1_2_0() { return cRightOperandALSIffParserRuleCall_1_2_0; } + } + + public class ALSIffElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIff"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSImplParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSIffLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Alternatives cAlternatives_1_1 = (Alternatives)cGroup_1.eContents().get(1); + private final Keyword cLessThanSignEqualsSignGreaterThanSignKeyword_1_1_0 = (Keyword)cAlternatives_1_1.eContents().get(0); + private final Keyword cIffKeyword_1_1_1 = (Keyword)cAlternatives_1_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSImplParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSIff ALSTerm: + // ALSImpl ({ALSIff.leftOperand=current} ("<=>" | "iff") rightOperand=ALSImpl)?; + @Override public ParserRule getRule() { return rule; } + + //ALSImpl ({ALSIff.leftOperand=current} ("<=>" | "iff") rightOperand=ALSImpl)? + public Group getGroup() { return cGroup; } + + //ALSImpl + public RuleCall getALSImplParserRuleCall_0() { return cALSImplParserRuleCall_0; } + + //({ALSIff.leftOperand=current} ("<=>" | "iff") rightOperand=ALSImpl)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSIff.leftOperand=current} + public Action getALSIffLeftOperandAction_1_0() { return cALSIffLeftOperandAction_1_0; } + + //"<=>" | "iff" + public Alternatives getAlternatives_1_1() { return cAlternatives_1_1; } + + //"<=>" + public Keyword getLessThanSignEqualsSignGreaterThanSignKeyword_1_1_0() { return cLessThanSignEqualsSignGreaterThanSignKeyword_1_1_0; } + + //"iff" + public Keyword getIffKeyword_1_1_1() { return cIffKeyword_1_1_1; } + + //rightOperand=ALSImpl + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSImpl + public RuleCall getRightOperandALSImplParserRuleCall_1_2_0() { return cRightOperandALSImplParserRuleCall_1_2_0; } + } + + public class ALSImplElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSImpl"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSAndParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSImplLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Alternatives cAlternatives_1_1 = (Alternatives)cGroup_1.eContents().get(1); + private final Keyword cEqualsSignGreaterThanSignKeyword_1_1_0 = (Keyword)cAlternatives_1_1.eContents().get(0); + private final Keyword cImpliesKeyword_1_1_1 = (Keyword)cAlternatives_1_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSAndParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + private final Group cGroup_1_3 = (Group)cGroup_1.eContents().get(3); + private final Keyword cElseKeyword_1_3_0 = (Keyword)cGroup_1_3.eContents().get(0); + private final Assignment cElseOperandAssignment_1_3_1 = (Assignment)cGroup_1_3.eContents().get(1); + private final RuleCall cElseOperandALSAndParserRuleCall_1_3_1_0 = (RuleCall)cElseOperandAssignment_1_3_1.eContents().get(0); + + //ALSImpl ALSTerm: + // ALSAnd ({ALSImpl.leftOperand=current} ("=>" | "implies") rightOperand=ALSAnd ('else' elseOperand=ALSAnd)?)?; + @Override public ParserRule getRule() { return rule; } + + //ALSAnd ({ALSImpl.leftOperand=current} ("=>" | "implies") rightOperand=ALSAnd ('else' elseOperand=ALSAnd)?)? + public Group getGroup() { return cGroup; } + + //ALSAnd + public RuleCall getALSAndParserRuleCall_0() { return cALSAndParserRuleCall_0; } + + //({ALSImpl.leftOperand=current} ("=>" | "implies") rightOperand=ALSAnd ('else' elseOperand=ALSAnd)?)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSImpl.leftOperand=current} + public Action getALSImplLeftOperandAction_1_0() { return cALSImplLeftOperandAction_1_0; } + + //"=>" | "implies" + public Alternatives getAlternatives_1_1() { return cAlternatives_1_1; } + + //"=>" + public Keyword getEqualsSignGreaterThanSignKeyword_1_1_0() { return cEqualsSignGreaterThanSignKeyword_1_1_0; } + + //"implies" + public Keyword getImpliesKeyword_1_1_1() { return cImpliesKeyword_1_1_1; } + + //rightOperand=ALSAnd + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSAnd + public RuleCall getRightOperandALSAndParserRuleCall_1_2_0() { return cRightOperandALSAndParserRuleCall_1_2_0; } + + //('else' elseOperand=ALSAnd)? + public Group getGroup_1_3() { return cGroup_1_3; } + + //'else' + public Keyword getElseKeyword_1_3_0() { return cElseKeyword_1_3_0; } + + //elseOperand=ALSAnd + public Assignment getElseOperandAssignment_1_3_1() { return cElseOperandAssignment_1_3_1; } + + //ALSAnd + public RuleCall getElseOperandALSAndParserRuleCall_1_3_1_0() { return cElseOperandALSAndParserRuleCall_1_3_1_0; } + } + + public class ALSAndElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSAnd"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSComparisonParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSAndLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Alternatives cAlternatives_1_1 = (Alternatives)cGroup_1.eContents().get(1); + private final Keyword cAmpersandAmpersandKeyword_1_1_0 = (Keyword)cAlternatives_1_1.eContents().get(0); + private final Keyword cAndKeyword_1_1_1 = (Keyword)cAlternatives_1_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSComparisonParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSAnd ALSTerm: + // ALSComparison ({ALSAnd.leftOperand=current} ("&&" | "and") rightOperand=ALSComparison)?; + @Override public ParserRule getRule() { return rule; } + + //ALSComparison ({ALSAnd.leftOperand=current} ("&&" | "and") rightOperand=ALSComparison)? + public Group getGroup() { return cGroup; } + + //ALSComparison + public RuleCall getALSComparisonParserRuleCall_0() { return cALSComparisonParserRuleCall_0; } + + //({ALSAnd.leftOperand=current} ("&&" | "and") rightOperand=ALSComparison)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSAnd.leftOperand=current} + public Action getALSAndLeftOperandAction_1_0() { return cALSAndLeftOperandAction_1_0; } + + //"&&" | "and" + public Alternatives getAlternatives_1_1() { return cAlternatives_1_1; } + + //"&&" + public Keyword getAmpersandAmpersandKeyword_1_1_0() { return cAmpersandAmpersandKeyword_1_1_0; } + + //"and" + public Keyword getAndKeyword_1_1_1() { return cAndKeyword_1_1_1; } + + //rightOperand=ALSComparison + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSComparison + public RuleCall getRightOperandALSComparisonParserRuleCall_1_2_0() { return cRightOperandALSComparisonParserRuleCall_1_2_0; } + } + + public class ALSComparisonElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSComparison"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSOverrideParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Alternatives cAlternatives_1_0 = (Alternatives)cGroup_1.eContents().get(0); + private final Group cGroup_1_0_0 = (Group)cAlternatives_1_0.eContents().get(0); + private final Action cALSEqualsLeftOperandAction_1_0_0_0 = (Action)cGroup_1_0_0.eContents().get(0); + private final Keyword cEqualsSignKeyword_1_0_0_1 = (Keyword)cGroup_1_0_0.eContents().get(1); + private final Group cGroup_1_0_1 = (Group)cAlternatives_1_0.eContents().get(1); + private final Action cALSNotEqualsLeftOperandAction_1_0_1_0 = (Action)cGroup_1_0_1.eContents().get(0); + private final Keyword cExclamationMarkEqualsSignKeyword_1_0_1_1 = (Keyword)cGroup_1_0_1.eContents().get(1); + private final Group cGroup_1_0_2 = (Group)cAlternatives_1_0.eContents().get(2); + private final Action cALSSubsetLeftOperandAction_1_0_2_0 = (Action)cGroup_1_0_2.eContents().get(0); + private final Keyword cInKeyword_1_0_2_1 = (Keyword)cGroup_1_0_2.eContents().get(1); + private final Group cGroup_1_0_3 = (Group)cAlternatives_1_0.eContents().get(3); + private final Action cALSLessLeftOperandAction_1_0_3_0 = (Action)cGroup_1_0_3.eContents().get(0); + private final Keyword cGreaterThanSignKeyword_1_0_3_1 = (Keyword)cGroup_1_0_3.eContents().get(1); + private final Group cGroup_1_0_4 = (Group)cAlternatives_1_0.eContents().get(4); + private final Action cALSLeqLeftOperandAction_1_0_4_0 = (Action)cGroup_1_0_4.eContents().get(0); + private final Keyword cGreaterThanSignEqualsSignKeyword_1_0_4_1 = (Keyword)cGroup_1_0_4.eContents().get(1); + private final Group cGroup_1_0_5 = (Group)cAlternatives_1_0.eContents().get(5); + private final Action cALSMoreLeftOperandAction_1_0_5_0 = (Action)cGroup_1_0_5.eContents().get(0); + private final Keyword cLessThanSignKeyword_1_0_5_1 = (Keyword)cGroup_1_0_5.eContents().get(1); + private final Group cGroup_1_0_6 = (Group)cAlternatives_1_0.eContents().get(6); + private final Action cALSMeqLeftOperandAction_1_0_6_0 = (Action)cGroup_1_0_6.eContents().get(0); + private final Keyword cLessThanSignEqualsSignKeyword_1_0_6_1 = (Keyword)cGroup_1_0_6.eContents().get(1); + private final Assignment cRightOperandAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); + private final RuleCall cRightOperandALSOverrideParserRuleCall_1_1_0 = (RuleCall)cRightOperandAssignment_1_1.eContents().get(0); + + //ALSComparison ALSTerm: + // ALSOverride (({ALSEquals.leftOperand=current} "=" | {ALSNotEquals.leftOperand=current} "!=" | + // {ALSSubset.leftOperand=current} "in" | {ALSLess.leftOperand=current} ">" | {ALSLeq.leftOperand=current} ">=" | + // {ALSMore.leftOperand=current} "<" | {ALSMeq.leftOperand=current} "<=") rightOperand=ALSOverride)?; + @Override public ParserRule getRule() { return rule; } + + //ALSOverride (({ALSEquals.leftOperand=current} "=" | {ALSNotEquals.leftOperand=current} "!=" | + //{ALSSubset.leftOperand=current} "in" | {ALSLess.leftOperand=current} ">" | {ALSLeq.leftOperand=current} ">=" | + //{ALSMore.leftOperand=current} "<" | {ALSMeq.leftOperand=current} "<=") rightOperand=ALSOverride)? + public Group getGroup() { return cGroup; } + + //ALSOverride + public RuleCall getALSOverrideParserRuleCall_0() { return cALSOverrideParserRuleCall_0; } + + //(({ALSEquals.leftOperand=current} "=" | {ALSNotEquals.leftOperand=current} "!=" | {ALSSubset.leftOperand=current} "in" | + //{ALSLess.leftOperand=current} ">" | {ALSLeq.leftOperand=current} ">=" | {ALSMore.leftOperand=current} "<" | + //{ALSMeq.leftOperand=current} "<=") rightOperand=ALSOverride)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSEquals.leftOperand=current} "=" | {ALSNotEquals.leftOperand=current} "!=" | {ALSSubset.leftOperand=current} "in" | + //{ALSLess.leftOperand=current} ">" | {ALSLeq.leftOperand=current} ">=" | {ALSMore.leftOperand=current} "<" | + //{ALSMeq.leftOperand=current} "<=" + public Alternatives getAlternatives_1_0() { return cAlternatives_1_0; } + + //{ALSEquals.leftOperand=current} "=" + public Group getGroup_1_0_0() { return cGroup_1_0_0; } + + //{ALSEquals.leftOperand=current} + public Action getALSEqualsLeftOperandAction_1_0_0_0() { return cALSEqualsLeftOperandAction_1_0_0_0; } + + //"=" + public Keyword getEqualsSignKeyword_1_0_0_1() { return cEqualsSignKeyword_1_0_0_1; } + + //{ALSNotEquals.leftOperand=current} "!=" + public Group getGroup_1_0_1() { return cGroup_1_0_1; } + + //{ALSNotEquals.leftOperand=current} + public Action getALSNotEqualsLeftOperandAction_1_0_1_0() { return cALSNotEqualsLeftOperandAction_1_0_1_0; } + + //"!=" + public Keyword getExclamationMarkEqualsSignKeyword_1_0_1_1() { return cExclamationMarkEqualsSignKeyword_1_0_1_1; } + + //{ALSSubset.leftOperand=current} "in" + public Group getGroup_1_0_2() { return cGroup_1_0_2; } + + //{ALSSubset.leftOperand=current} + public Action getALSSubsetLeftOperandAction_1_0_2_0() { return cALSSubsetLeftOperandAction_1_0_2_0; } + + //"in" + public Keyword getInKeyword_1_0_2_1() { return cInKeyword_1_0_2_1; } + + //{ALSLess.leftOperand=current} ">" + public Group getGroup_1_0_3() { return cGroup_1_0_3; } + + //{ALSLess.leftOperand=current} + public Action getALSLessLeftOperandAction_1_0_3_0() { return cALSLessLeftOperandAction_1_0_3_0; } + + //">" + public Keyword getGreaterThanSignKeyword_1_0_3_1() { return cGreaterThanSignKeyword_1_0_3_1; } + + //{ALSLeq.leftOperand=current} ">=" + public Group getGroup_1_0_4() { return cGroup_1_0_4; } + + //{ALSLeq.leftOperand=current} + public Action getALSLeqLeftOperandAction_1_0_4_0() { return cALSLeqLeftOperandAction_1_0_4_0; } + + //">=" + public Keyword getGreaterThanSignEqualsSignKeyword_1_0_4_1() { return cGreaterThanSignEqualsSignKeyword_1_0_4_1; } + + //{ALSMore.leftOperand=current} "<" + public Group getGroup_1_0_5() { return cGroup_1_0_5; } + + //{ALSMore.leftOperand=current} + public Action getALSMoreLeftOperandAction_1_0_5_0() { return cALSMoreLeftOperandAction_1_0_5_0; } + + //"<" + public Keyword getLessThanSignKeyword_1_0_5_1() { return cLessThanSignKeyword_1_0_5_1; } + + //{ALSMeq.leftOperand=current} "<=" + public Group getGroup_1_0_6() { return cGroup_1_0_6; } + + //{ALSMeq.leftOperand=current} + public Action getALSMeqLeftOperandAction_1_0_6_0() { return cALSMeqLeftOperandAction_1_0_6_0; } + + //"<=" + public Keyword getLessThanSignEqualsSignKeyword_1_0_6_1() { return cLessThanSignEqualsSignKeyword_1_0_6_1; } + + //rightOperand=ALSOverride + public Assignment getRightOperandAssignment_1_1() { return cRightOperandAssignment_1_1; } + + //ALSOverride + public RuleCall getRightOperandALSOverrideParserRuleCall_1_1_0() { return cRightOperandALSOverrideParserRuleCall_1_1_0; } + } + + public class ALSOverrideElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSOverride"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSRangeRestrictionRightParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSOverrideLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cPlusSignPlusSignKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSRangeRestrictionRightParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSOverride ALSTerm: + // ALSRangeRestrictionRight ({ALSOverride.leftOperand=current} '++' rightOperand=ALSRangeRestrictionRight)?; + @Override public ParserRule getRule() { return rule; } + + //ALSRangeRestrictionRight ({ALSOverride.leftOperand=current} '++' rightOperand=ALSRangeRestrictionRight)? + public Group getGroup() { return cGroup; } + + //ALSRangeRestrictionRight + public RuleCall getALSRangeRestrictionRightParserRuleCall_0() { return cALSRangeRestrictionRightParserRuleCall_0; } + + //({ALSOverride.leftOperand=current} '++' rightOperand=ALSRangeRestrictionRight)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSOverride.leftOperand=current} + public Action getALSOverrideLeftOperandAction_1_0() { return cALSOverrideLeftOperandAction_1_0; } + + //'++' + public Keyword getPlusSignPlusSignKeyword_1_1() { return cPlusSignPlusSignKeyword_1_1; } + + //rightOperand=ALSRangeRestrictionRight + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSRangeRestrictionRight + public RuleCall getRightOperandALSRangeRestrictionRightParserRuleCall_1_2_0() { return cRightOperandALSRangeRestrictionRightParserRuleCall_1_2_0; } + } + + public class ALSRangeRestrictionRightElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRangeRestrictionRight"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSRangeRestrictionLeftParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSRangeRestrictionRightRelationAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cColonGreaterThanSignKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cFilterAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cFilterALSRangeRestrictionLeftParserRuleCall_1_2_0 = (RuleCall)cFilterAssignment_1_2.eContents().get(0); + + //ALSRangeRestrictionRight ALSTerm: + // ALSRangeRestrictionLeft ({ALSRangeRestrictionRight.relation=current} ':>' filter=ALSRangeRestrictionLeft)?; + @Override public ParserRule getRule() { return rule; } + + //ALSRangeRestrictionLeft ({ALSRangeRestrictionRight.relation=current} ':>' filter=ALSRangeRestrictionLeft)? + public Group getGroup() { return cGroup; } + + //ALSRangeRestrictionLeft + public RuleCall getALSRangeRestrictionLeftParserRuleCall_0() { return cALSRangeRestrictionLeftParserRuleCall_0; } + + //({ALSRangeRestrictionRight.relation=current} ':>' filter=ALSRangeRestrictionLeft)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSRangeRestrictionRight.relation=current} + public Action getALSRangeRestrictionRightRelationAction_1_0() { return cALSRangeRestrictionRightRelationAction_1_0; } + + //':>' + public Keyword getColonGreaterThanSignKeyword_1_1() { return cColonGreaterThanSignKeyword_1_1; } + + //filter=ALSRangeRestrictionLeft + public Assignment getFilterAssignment_1_2() { return cFilterAssignment_1_2; } + + //ALSRangeRestrictionLeft + public RuleCall getFilterALSRangeRestrictionLeftParserRuleCall_1_2_0() { return cFilterALSRangeRestrictionLeftParserRuleCall_1_2_0; } + } + + public class ALSRangeRestrictionLeftElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRangeRestrictionLeft"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSJoinParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSRangeRestrictionLeftFilterAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cLessThanSignColonKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cRelationAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRelationALSJoinParserRuleCall_1_2_0 = (RuleCall)cRelationAssignment_1_2.eContents().get(0); + + //ALSRangeRestrictionLeft ALSTerm: + // ALSJoin ({ALSRangeRestrictionLeft.filter=current} '<:' relation=ALSJoin)?; + @Override public ParserRule getRule() { return rule; } + + //ALSJoin ({ALSRangeRestrictionLeft.filter=current} '<:' relation=ALSJoin)? + public Group getGroup() { return cGroup; } + + //ALSJoin + public RuleCall getALSJoinParserRuleCall_0() { return cALSJoinParserRuleCall_0; } + + //({ALSRangeRestrictionLeft.filter=current} '<:' relation=ALSJoin)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSRangeRestrictionLeft.filter=current} + public Action getALSRangeRestrictionLeftFilterAction_1_0() { return cALSRangeRestrictionLeftFilterAction_1_0; } + + //'<:' + public Keyword getLessThanSignColonKeyword_1_1() { return cLessThanSignColonKeyword_1_1; } + + //relation=ALSJoin + public Assignment getRelationAssignment_1_2() { return cRelationAssignment_1_2; } + + //ALSJoin + public RuleCall getRelationALSJoinParserRuleCall_1_2_0() { return cRelationALSJoinParserRuleCall_1_2_0; } + } + + public class ALSJoinElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSJoin"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSMinusParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSJoinLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cFullStopKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSMinusParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSJoin ALSTerm: + // ALSMinus ({ALSJoin.leftOperand=current} '.' rightOperand=ALSMinus)*; + @Override public ParserRule getRule() { return rule; } + + //ALSMinus ({ALSJoin.leftOperand=current} '.' rightOperand=ALSMinus)* + public Group getGroup() { return cGroup; } + + //ALSMinus + public RuleCall getALSMinusParserRuleCall_0() { return cALSMinusParserRuleCall_0; } + + //({ALSJoin.leftOperand=current} '.' rightOperand=ALSMinus)* + public Group getGroup_1() { return cGroup_1; } + + //{ALSJoin.leftOperand=current} + public Action getALSJoinLeftOperandAction_1_0() { return cALSJoinLeftOperandAction_1_0; } + + //'.' + public Keyword getFullStopKeyword_1_1() { return cFullStopKeyword_1_1; } + + //rightOperand=ALSMinus + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSMinus + public RuleCall getRightOperandALSMinusParserRuleCall_1_2_0() { return cRightOperandALSMinusParserRuleCall_1_2_0; } + } + + public class ALSMinusElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMinus"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSPlusParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSMinusLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cHyphenMinusKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSPlusParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSMinus ALSTerm: + // ALSPlus ({ALSMinus.leftOperand=current} '-' rightOperand=ALSPlus)*; + @Override public ParserRule getRule() { return rule; } + + //ALSPlus ({ALSMinus.leftOperand=current} '-' rightOperand=ALSPlus)* + public Group getGroup() { return cGroup; } + + //ALSPlus + public RuleCall getALSPlusParserRuleCall_0() { return cALSPlusParserRuleCall_0; } + + //({ALSMinus.leftOperand=current} '-' rightOperand=ALSPlus)* + public Group getGroup_1() { return cGroup_1; } + + //{ALSMinus.leftOperand=current} + public Action getALSMinusLeftOperandAction_1_0() { return cALSMinusLeftOperandAction_1_0; } + + //'-' + public Keyword getHyphenMinusKeyword_1_1() { return cHyphenMinusKeyword_1_1; } + + //rightOperand=ALSPlus + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSPlus + public RuleCall getRightOperandALSPlusParserRuleCall_1_2_0() { return cRightOperandALSPlusParserRuleCall_1_2_0; } + } + + public class ALSPlusElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSPlus"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSIntersectionParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSPlusLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cPlusSignKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSIntersectionParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSPlus ALSTerm: + // ALSIntersection ({ALSPlus.leftOperand=current} '+' rightOperand=ALSIntersection)*; + @Override public ParserRule getRule() { return rule; } + + //ALSIntersection ({ALSPlus.leftOperand=current} '+' rightOperand=ALSIntersection)* + public Group getGroup() { return cGroup; } + + //ALSIntersection + public RuleCall getALSIntersectionParserRuleCall_0() { return cALSIntersectionParserRuleCall_0; } + + //({ALSPlus.leftOperand=current} '+' rightOperand=ALSIntersection)* + public Group getGroup_1() { return cGroup_1; } + + //{ALSPlus.leftOperand=current} + public Action getALSPlusLeftOperandAction_1_0() { return cALSPlusLeftOperandAction_1_0; } + + //'+' + public Keyword getPlusSignKeyword_1_1() { return cPlusSignKeyword_1_1; } + + //rightOperand=ALSIntersection + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSIntersection + public RuleCall getRightOperandALSIntersectionParserRuleCall_1_2_0() { return cRightOperandALSIntersectionParserRuleCall_1_2_0; } + } + + public class ALSIntersectionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIntersection"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSDirectProductParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSIntersectionLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cAmpersandKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cRightOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cRightOperandALSDirectProductParserRuleCall_1_2_0 = (RuleCall)cRightOperandAssignment_1_2.eContents().get(0); + + //ALSIntersection ALSTerm: + // ALSDirectProduct ({ALSIntersection.leftOperand=current} '&' rightOperand=ALSDirectProduct)*; + @Override public ParserRule getRule() { return rule; } + + //ALSDirectProduct ({ALSIntersection.leftOperand=current} '&' rightOperand=ALSDirectProduct)* + public Group getGroup() { return cGroup; } + + //ALSDirectProduct + public RuleCall getALSDirectProductParserRuleCall_0() { return cALSDirectProductParserRuleCall_0; } + + //({ALSIntersection.leftOperand=current} '&' rightOperand=ALSDirectProduct)* + public Group getGroup_1() { return cGroup_1; } + + //{ALSIntersection.leftOperand=current} + public Action getALSIntersectionLeftOperandAction_1_0() { return cALSIntersectionLeftOperandAction_1_0; } + + //'&' + public Keyword getAmpersandKeyword_1_1() { return cAmpersandKeyword_1_1; } + + //rightOperand=ALSDirectProduct + public Assignment getRightOperandAssignment_1_2() { return cRightOperandAssignment_1_2; } + + //ALSDirectProduct + public RuleCall getRightOperandALSDirectProductParserRuleCall_1_2_0() { return cRightOperandALSDirectProductParserRuleCall_1_2_0; } + } + + public class ALSDirectProductElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSDirectProduct"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cALSPreficedParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Action cALSDirectProductLeftOperandAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Assignment cLeftMultiplicitAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); + private final RuleCall cLeftMultiplicitALSMultiplicityEnumRuleCall_1_1_0 = (RuleCall)cLeftMultiplicitAssignment_1_1.eContents().get(0); + private final Keyword cHyphenMinusGreaterThanSignKeyword_1_2 = (Keyword)cGroup_1.eContents().get(2); + private final Assignment cRightMultiplicitAssignment_1_3 = (Assignment)cGroup_1.eContents().get(3); + private final RuleCall cRightMultiplicitALSMultiplicityEnumRuleCall_1_3_0 = (RuleCall)cRightMultiplicitAssignment_1_3.eContents().get(0); + private final Assignment cRightOperandAssignment_1_4 = (Assignment)cGroup_1.eContents().get(4); + private final RuleCall cRightOperandALSPreficedParserRuleCall_1_4_0 = (RuleCall)cRightOperandAssignment_1_4.eContents().get(0); + + ////ALSMultiply returns ALSTerm: ALSDirectProduct ({ALSMultiply.leftOperand = current} '*' rightOperand = ALSDirectProduct)*; + //ALSDirectProduct ALSTerm: + // ALSPreficed ({ALSDirectProduct.leftOperand=current} leftMultiplicit=ALSMultiplicity? + // '->' + // rightMultiplicit=ALSMultiplicity? + // rightOperand=ALSPreficed)?; + @Override public ParserRule getRule() { return rule; } + + //ALSPreficed ({ALSDirectProduct.leftOperand=current} leftMultiplicit=ALSMultiplicity? '->' + //rightMultiplicit=ALSMultiplicity? rightOperand=ALSPreficed)? + public Group getGroup() { return cGroup; } + + //ALSPreficed + public RuleCall getALSPreficedParserRuleCall_0() { return cALSPreficedParserRuleCall_0; } + + //({ALSDirectProduct.leftOperand=current} leftMultiplicit=ALSMultiplicity? '->' rightMultiplicit=ALSMultiplicity? + //rightOperand=ALSPreficed)? + public Group getGroup_1() { return cGroup_1; } + + //{ALSDirectProduct.leftOperand=current} + public Action getALSDirectProductLeftOperandAction_1_0() { return cALSDirectProductLeftOperandAction_1_0; } + + //leftMultiplicit=ALSMultiplicity? + public Assignment getLeftMultiplicitAssignment_1_1() { return cLeftMultiplicitAssignment_1_1; } + + //ALSMultiplicity + public RuleCall getLeftMultiplicitALSMultiplicityEnumRuleCall_1_1_0() { return cLeftMultiplicitALSMultiplicityEnumRuleCall_1_1_0; } + + //'->' + public Keyword getHyphenMinusGreaterThanSignKeyword_1_2() { return cHyphenMinusGreaterThanSignKeyword_1_2; } + + //rightMultiplicit=ALSMultiplicity? + public Assignment getRightMultiplicitAssignment_1_3() { return cRightMultiplicitAssignment_1_3; } + + //ALSMultiplicity + public RuleCall getRightMultiplicitALSMultiplicityEnumRuleCall_1_3_0() { return cRightMultiplicitALSMultiplicityEnumRuleCall_1_3_0; } + + //rightOperand=ALSPreficed + public Assignment getRightOperandAssignment_1_4() { return cRightOperandAssignment_1_4; } + + //ALSPreficed + public RuleCall getRightOperandALSPreficedParserRuleCall_1_4_0() { return cRightOperandALSPreficedParserRuleCall_1_4_0; } + } + + public class ALSPreficedElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSPreficed"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0); + private final Action cALSNotAction_0_0 = (Action)cGroup_0.eContents().get(0); + private final Group cGroup_0_1 = (Group)cGroup_0.eContents().get(1); + private final Alternatives cAlternatives_0_1_0 = (Alternatives)cGroup_0_1.eContents().get(0); + private final Keyword cExclamationMarkKeyword_0_1_0_0 = (Keyword)cAlternatives_0_1_0.eContents().get(0); + private final Keyword cNotKeyword_0_1_0_1 = (Keyword)cAlternatives_0_1_0.eContents().get(1); + private final Assignment cOperandAssignment_0_2 = (Assignment)cGroup_0.eContents().get(2); + private final RuleCall cOperandALSBasicRelationTermParserRuleCall_0_2_0 = (RuleCall)cOperandAssignment_0_2.eContents().get(0); + private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1); + private final Action cALSInverseRelationAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cTildeKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Assignment cOperandAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final RuleCall cOperandALSBasicRelationTermParserRuleCall_1_2_0 = (RuleCall)cOperandAssignment_1_2.eContents().get(0); + private final Group cGroup_2 = (Group)cAlternatives.eContents().get(2); + private final Action cAlSTransitiveClosureAction_2_0 = (Action)cGroup_2.eContents().get(0); + private final Keyword cCircumflexAccentKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1); + private final Assignment cOperandAssignment_2_2 = (Assignment)cGroup_2.eContents().get(2); + private final RuleCall cOperandALSBasicRelationTermParserRuleCall_2_2_0 = (RuleCall)cOperandAssignment_2_2.eContents().get(0); + private final Group cGroup_3 = (Group)cAlternatives.eContents().get(3); + private final Action cALSReflectiveTransitiveClosureAction_3_0 = (Action)cGroup_3.eContents().get(0); + private final Keyword cAsteriskKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1); + private final Assignment cOperandAssignment_3_2 = (Assignment)cGroup_3.eContents().get(2); + private final RuleCall cOperandALSBasicRelationTermParserRuleCall_3_2_0 = (RuleCall)cOperandAssignment_3_2.eContents().get(0); + private final Group cGroup_4 = (Group)cAlternatives.eContents().get(4); + private final Action cALSCardinalityAction_4_0 = (Action)cGroup_4.eContents().get(0); + private final Keyword cNumberSignKeyword_4_1 = (Keyword)cGroup_4.eContents().get(1); + private final Assignment cOperandAssignment_4_2 = (Assignment)cGroup_4.eContents().get(2); + private final RuleCall cOperandALSBasicRelationTermParserRuleCall_4_2_0 = (RuleCall)cOperandAssignment_4_2.eContents().get(0); + private final Group cGroup_5 = (Group)cAlternatives.eContents().get(5); + private final Action cALSUnaryMinusAction_5_0 = (Action)cGroup_5.eContents().get(0); + private final Keyword cHyphenMinusKeyword_5_1 = (Keyword)cGroup_5.eContents().get(1); + private final Assignment cOperandAssignment_5_2 = (Assignment)cGroup_5.eContents().get(2); + private final RuleCall cOperandALSBasicRelationTermParserRuleCall_5_2_0 = (RuleCall)cOperandAssignment_5_2.eContents().get(0); + private final Group cGroup_6 = (Group)cAlternatives.eContents().get(6); + private final Action cALSSumAction_6_0 = (Action)cGroup_6.eContents().get(0); + private final Keyword cSumKeyword_6_1 = (Keyword)cGroup_6.eContents().get(1); + private final Assignment cVariablesAssignment_6_2 = (Assignment)cGroup_6.eContents().get(2); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_6_2_0 = (RuleCall)cVariablesAssignment_6_2.eContents().get(0); + private final Group cGroup_6_3 = (Group)cGroup_6.eContents().get(3); + private final Keyword cCommaKeyword_6_3_0 = (Keyword)cGroup_6_3.eContents().get(0); + private final Assignment cVariablesAssignment_6_3_1 = (Assignment)cGroup_6_3.eContents().get(1); + private final RuleCall cVariablesALSVariableDeclarationParserRuleCall_6_3_1_0 = (RuleCall)cVariablesAssignment_6_3_1.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_6_4 = (Keyword)cGroup_6.eContents().get(4); + private final Assignment cExpressionAssignment_6_5 = (Assignment)cGroup_6.eContents().get(5); + private final RuleCall cExpressionALSTermParserRuleCall_6_5_0 = (RuleCall)cExpressionAssignment_6_5.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_6_6 = (Keyword)cGroup_6.eContents().get(6); + private final Group cGroup_7 = (Group)cAlternatives.eContents().get(7); + private final Action cALSFunctionCallAction_7_0 = (Action)cGroup_7.eContents().get(0); + private final Alternatives cAlternatives_7_1 = (Alternatives)cGroup_7.eContents().get(1); + private final Assignment cReferredDefinitionAssignment_7_1_0 = (Assignment)cAlternatives_7_1.eContents().get(0); + private final CrossReference cReferredDefinitionALSDefinitionCrossReference_7_1_0_0 = (CrossReference)cReferredDefinitionAssignment_7_1_0.eContents().get(0); + private final RuleCall cReferredDefinitionALSDefinitionIDTerminalRuleCall_7_1_0_0_1 = (RuleCall)cReferredDefinitionALSDefinitionCrossReference_7_1_0_0.eContents().get(1); + private final Assignment cReferredNumericOperatorAssignment_7_1_1 = (Assignment)cAlternatives_7_1.eContents().get(1); + private final RuleCall cReferredNumericOperatorALSNumericOperatorEnumRuleCall_7_1_1_0 = (RuleCall)cReferredNumericOperatorAssignment_7_1_1.eContents().get(0); + private final Keyword cLeftSquareBracketKeyword_7_2 = (Keyword)cGroup_7.eContents().get(2); + private final Assignment cParamsAssignment_7_3 = (Assignment)cGroup_7.eContents().get(3); + private final RuleCall cParamsALSTermParserRuleCall_7_3_0 = (RuleCall)cParamsAssignment_7_3.eContents().get(0); + private final Group cGroup_7_4 = (Group)cGroup_7.eContents().get(4); + private final Keyword cCommaKeyword_7_4_0 = (Keyword)cGroup_7_4.eContents().get(0); + private final Assignment cParamsAssignment_7_4_1 = (Assignment)cGroup_7_4.eContents().get(1); + private final RuleCall cParamsALSTermParserRuleCall_7_4_1_0 = (RuleCall)cParamsAssignment_7_4_1.eContents().get(0); + private final Keyword cRightSquareBracketKeyword_7_5 = (Keyword)cGroup_7.eContents().get(5); + private final RuleCall cALSBasicRelationTermParserRuleCall_8 = (RuleCall)cAlternatives.eContents().get(8); + + //ALSPreficed ALSTerm: + // {ALSNot} => ("!" | 'not') operand=ALSBasicRelationTerm | {ALSInverseRelation} => "~" operand=ALSBasicRelationTerm | + // {AlSTransitiveClosure} "^" operand=ALSBasicRelationTerm | {ALSReflectiveTransitiveClosure} "*" + // operand=ALSBasicRelationTerm | {ALSCardinality} '#' operand=ALSBasicRelationTerm | {ALSUnaryMinus} => '-' + // operand=ALSBasicRelationTerm | {ALSSum} 'sum' variables+=ALSVariableDeclaration (',' + // variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' | {ALSFunctionCall} + // (referredDefinition=[ALSDefinition] | referredNumericOperator=ALSNumericOperator) '[' params+=ALSTerm (',' + // params+=ALSTerm)* ']' | ALSBasicRelationTerm; + @Override public ParserRule getRule() { return rule; } + + //{ALSNot} => ("!" | 'not') operand=ALSBasicRelationTerm | {ALSInverseRelation} => "~" operand=ALSBasicRelationTerm | + //{AlSTransitiveClosure} "^" operand=ALSBasicRelationTerm | {ALSReflectiveTransitiveClosure} "*" + //operand=ALSBasicRelationTerm | {ALSCardinality} '#' operand=ALSBasicRelationTerm | {ALSUnaryMinus} => '-' + //operand=ALSBasicRelationTerm | {ALSSum} 'sum' variables+=ALSVariableDeclaration (',' + //variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' | {ALSFunctionCall} (referredDefinition=[ALSDefinition] + //| referredNumericOperator=ALSNumericOperator) '[' params+=ALSTerm (',' params+=ALSTerm)* ']' | ALSBasicRelationTerm + public Alternatives getAlternatives() { return cAlternatives; } + + //{ALSNot} => ("!" | 'not') operand=ALSBasicRelationTerm + public Group getGroup_0() { return cGroup_0; } + + //{ALSNot} + public Action getALSNotAction_0_0() { return cALSNotAction_0_0; } + + //=> ("!" | 'not') + public Group getGroup_0_1() { return cGroup_0_1; } + + //"!" | 'not' + public Alternatives getAlternatives_0_1_0() { return cAlternatives_0_1_0; } + + //"!" + public Keyword getExclamationMarkKeyword_0_1_0_0() { return cExclamationMarkKeyword_0_1_0_0; } + + //'not' + public Keyword getNotKeyword_0_1_0_1() { return cNotKeyword_0_1_0_1; } + + //operand=ALSBasicRelationTerm + public Assignment getOperandAssignment_0_2() { return cOperandAssignment_0_2; } + + //ALSBasicRelationTerm + public RuleCall getOperandALSBasicRelationTermParserRuleCall_0_2_0() { return cOperandALSBasicRelationTermParserRuleCall_0_2_0; } + + //{ALSInverseRelation} => "~" operand=ALSBasicRelationTerm + public Group getGroup_1() { return cGroup_1; } + + //{ALSInverseRelation} + public Action getALSInverseRelationAction_1_0() { return cALSInverseRelationAction_1_0; } + + //=> "~" + public Keyword getTildeKeyword_1_1() { return cTildeKeyword_1_1; } + + //operand=ALSBasicRelationTerm + public Assignment getOperandAssignment_1_2() { return cOperandAssignment_1_2; } + + //ALSBasicRelationTerm + public RuleCall getOperandALSBasicRelationTermParserRuleCall_1_2_0() { return cOperandALSBasicRelationTermParserRuleCall_1_2_0; } + + //{AlSTransitiveClosure} "^" operand=ALSBasicRelationTerm + public Group getGroup_2() { return cGroup_2; } + + //{AlSTransitiveClosure} + public Action getAlSTransitiveClosureAction_2_0() { return cAlSTransitiveClosureAction_2_0; } + + //"^" + public Keyword getCircumflexAccentKeyword_2_1() { return cCircumflexAccentKeyword_2_1; } + + //operand=ALSBasicRelationTerm + public Assignment getOperandAssignment_2_2() { return cOperandAssignment_2_2; } + + //ALSBasicRelationTerm + public RuleCall getOperandALSBasicRelationTermParserRuleCall_2_2_0() { return cOperandALSBasicRelationTermParserRuleCall_2_2_0; } + + //{ALSReflectiveTransitiveClosure} "*" operand=ALSBasicRelationTerm + public Group getGroup_3() { return cGroup_3; } + + //{ALSReflectiveTransitiveClosure} + public Action getALSReflectiveTransitiveClosureAction_3_0() { return cALSReflectiveTransitiveClosureAction_3_0; } + + //"*" + public Keyword getAsteriskKeyword_3_1() { return cAsteriskKeyword_3_1; } + + //operand=ALSBasicRelationTerm + public Assignment getOperandAssignment_3_2() { return cOperandAssignment_3_2; } + + //ALSBasicRelationTerm + public RuleCall getOperandALSBasicRelationTermParserRuleCall_3_2_0() { return cOperandALSBasicRelationTermParserRuleCall_3_2_0; } + + //{ALSCardinality} '#' operand=ALSBasicRelationTerm + public Group getGroup_4() { return cGroup_4; } + + //{ALSCardinality} + public Action getALSCardinalityAction_4_0() { return cALSCardinalityAction_4_0; } + + //'#' + public Keyword getNumberSignKeyword_4_1() { return cNumberSignKeyword_4_1; } + + //operand=ALSBasicRelationTerm + public Assignment getOperandAssignment_4_2() { return cOperandAssignment_4_2; } + + //ALSBasicRelationTerm + public RuleCall getOperandALSBasicRelationTermParserRuleCall_4_2_0() { return cOperandALSBasicRelationTermParserRuleCall_4_2_0; } + + //{ALSUnaryMinus} => '-' operand=ALSBasicRelationTerm + public Group getGroup_5() { return cGroup_5; } + + //{ALSUnaryMinus} + public Action getALSUnaryMinusAction_5_0() { return cALSUnaryMinusAction_5_0; } + + //=> '-' + public Keyword getHyphenMinusKeyword_5_1() { return cHyphenMinusKeyword_5_1; } + + //operand=ALSBasicRelationTerm + public Assignment getOperandAssignment_5_2() { return cOperandAssignment_5_2; } + + //ALSBasicRelationTerm + public RuleCall getOperandALSBasicRelationTermParserRuleCall_5_2_0() { return cOperandALSBasicRelationTermParserRuleCall_5_2_0; } + + //{ALSSum} 'sum' variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' + public Group getGroup_6() { return cGroup_6; } + + //{ALSSum} + public Action getALSSumAction_6_0() { return cALSSumAction_6_0; } + + //'sum' + public Keyword getSumKeyword_6_1() { return cSumKeyword_6_1; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_6_2() { return cVariablesAssignment_6_2; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_6_2_0() { return cVariablesALSVariableDeclarationParserRuleCall_6_2_0; } + + //(',' variables+=ALSVariableDeclaration)* + public Group getGroup_6_3() { return cGroup_6_3; } + + //',' + public Keyword getCommaKeyword_6_3_0() { return cCommaKeyword_6_3_0; } + + //variables+=ALSVariableDeclaration + public Assignment getVariablesAssignment_6_3_1() { return cVariablesAssignment_6_3_1; } + + //ALSVariableDeclaration + public RuleCall getVariablesALSVariableDeclarationParserRuleCall_6_3_1_0() { return cVariablesALSVariableDeclarationParserRuleCall_6_3_1_0; } + + //'{' + public Keyword getLeftCurlyBracketKeyword_6_4() { return cLeftCurlyBracketKeyword_6_4; } + + //expression=ALSTerm + public Assignment getExpressionAssignment_6_5() { return cExpressionAssignment_6_5; } + + //ALSTerm + public RuleCall getExpressionALSTermParserRuleCall_6_5_0() { return cExpressionALSTermParserRuleCall_6_5_0; } + + //'}' + public Keyword getRightCurlyBracketKeyword_6_6() { return cRightCurlyBracketKeyword_6_6; } + + //{ALSFunctionCall} (referredDefinition=[ALSDefinition] | referredNumericOperator=ALSNumericOperator) '[' params+=ALSTerm + //(',' params+=ALSTerm)* ']' + public Group getGroup_7() { return cGroup_7; } + + //{ALSFunctionCall} + public Action getALSFunctionCallAction_7_0() { return cALSFunctionCallAction_7_0; } + + //referredDefinition=[ALSDefinition] | referredNumericOperator=ALSNumericOperator + public Alternatives getAlternatives_7_1() { return cAlternatives_7_1; } + + //referredDefinition=[ALSDefinition] + public Assignment getReferredDefinitionAssignment_7_1_0() { return cReferredDefinitionAssignment_7_1_0; } + + //[ALSDefinition] + public CrossReference getReferredDefinitionALSDefinitionCrossReference_7_1_0_0() { return cReferredDefinitionALSDefinitionCrossReference_7_1_0_0; } + + //ID + public RuleCall getReferredDefinitionALSDefinitionIDTerminalRuleCall_7_1_0_0_1() { return cReferredDefinitionALSDefinitionIDTerminalRuleCall_7_1_0_0_1; } + + //referredNumericOperator=ALSNumericOperator + public Assignment getReferredNumericOperatorAssignment_7_1_1() { return cReferredNumericOperatorAssignment_7_1_1; } + + //ALSNumericOperator + public RuleCall getReferredNumericOperatorALSNumericOperatorEnumRuleCall_7_1_1_0() { return cReferredNumericOperatorALSNumericOperatorEnumRuleCall_7_1_1_0; } + + //'[' + public Keyword getLeftSquareBracketKeyword_7_2() { return cLeftSquareBracketKeyword_7_2; } + + //params+=ALSTerm + public Assignment getParamsAssignment_7_3() { return cParamsAssignment_7_3; } + + //ALSTerm + public RuleCall getParamsALSTermParserRuleCall_7_3_0() { return cParamsALSTermParserRuleCall_7_3_0; } + + //(',' params+=ALSTerm)* + public Group getGroup_7_4() { return cGroup_7_4; } + + //',' + public Keyword getCommaKeyword_7_4_0() { return cCommaKeyword_7_4_0; } + + //params+=ALSTerm + public Assignment getParamsAssignment_7_4_1() { return cParamsAssignment_7_4_1; } + + //ALSTerm + public RuleCall getParamsALSTermParserRuleCall_7_4_1_0() { return cParamsALSTermParserRuleCall_7_4_1_0; } + + //']' + public Keyword getRightSquareBracketKeyword_7_5() { return cRightSquareBracketKeyword_7_5; } + + //ALSBasicRelationTerm + public RuleCall getALSBasicRelationTermParserRuleCall_8() { return cALSBasicRelationTermParserRuleCall_8; } + } + + public class ALSVariableDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSVariableDeclaration"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cNameAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cNameALSIDParserRuleCall_0_0 = (RuleCall)cNameAssignment_0.eContents().get(0); + private final Keyword cColonKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cRangeAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cRangeALSTermParserRuleCall_2_0 = (RuleCall)cRangeAssignment_2.eContents().get(0); + + ////ALSVariable: name = ALSID; + //ALSVariableDeclaration: + // name=ALSID ':' range=ALSTerm; + @Override public ParserRule getRule() { return rule; } + + //name=ALSID ':' range=ALSTerm + public Group getGroup() { return cGroup; } + + //name=ALSID + public Assignment getNameAssignment_0() { return cNameAssignment_0; } + + //ALSID + public RuleCall getNameALSIDParserRuleCall_0_0() { return cNameALSIDParserRuleCall_0_0; } + + //':' + public Keyword getColonKeyword_1() { return cColonKeyword_1; } + + //range=ALSTerm + public Assignment getRangeAssignment_2() { return cRangeAssignment_2; } + + //ALSTerm + public RuleCall getRangeALSTermParserRuleCall_2_0() { return cRangeALSTermParserRuleCall_2_0; } + } + + public class ALSBasicRelationTermElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSBasicRelationTerm"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0); + private final Action cALSNoneAction_0_0 = (Action)cGroup_0.eContents().get(0); + private final Keyword cNoneKeyword_0_1 = (Keyword)cGroup_0.eContents().get(1); + private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1); + private final Action cALSIdenAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Keyword cIdenKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); + private final Group cGroup_2 = (Group)cAlternatives.eContents().get(2); + private final Action cALSUnivAction_2_0 = (Action)cGroup_2.eContents().get(0); + private final Keyword cUnivKeyword_2_1 = (Keyword)cGroup_2.eContents().get(1); + private final Group cGroup_3 = (Group)cAlternatives.eContents().get(3); + private final Action cALSIntAction_3_0 = (Action)cGroup_3.eContents().get(0); + private final Keyword cIntKeyword_3_1 = (Keyword)cGroup_3.eContents().get(1); + private final Group cGroup_4 = (Group)cAlternatives.eContents().get(4); + private final Action cALSReferenceAction_4_0 = (Action)cGroup_4.eContents().get(0); + private final Assignment cReferredAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); + private final CrossReference cReferredALSRelationDeclarationCrossReference_4_1_0 = (CrossReference)cReferredAssignment_4_1.eContents().get(0); + private final RuleCall cReferredALSRelationDeclarationIDTerminalRuleCall_4_1_0_1 = (RuleCall)cReferredALSRelationDeclarationCrossReference_4_1_0.eContents().get(1); + private final Group cGroup_5 = (Group)cAlternatives.eContents().get(5); + private final Action cALSNumberLiteralAction_5_0 = (Action)cGroup_5.eContents().get(0); + private final Assignment cValueAssignment_5_1 = (Assignment)cGroup_5.eContents().get(1); + private final RuleCall cValueINTTerminalRuleCall_5_1_0 = (RuleCall)cValueAssignment_5_1.eContents().get(0); + private final Group cGroup_6 = (Group)cAlternatives.eContents().get(6); + private final Keyword cLeftParenthesisKeyword_6_0 = (Keyword)cGroup_6.eContents().get(0); + private final RuleCall cALSTermParserRuleCall_6_1 = (RuleCall)cGroup_6.eContents().get(1); + private final Keyword cRightParenthesisKeyword_6_2 = (Keyword)cGroup_6.eContents().get(2); + + //ALSBasicRelationTerm ALSTerm: + // {ALSNone} 'none' | {ALSIden} 'iden' | {ALSUniv} 'univ' | {ALSInt} 'Int' | {ALSReference} + // referred=[ALSRelationDeclaration] | {ALSNumberLiteral} value=INT | + // '(' ALSTerm ')'; + @Override public ParserRule getRule() { return rule; } + + //{ALSNone} 'none' | {ALSIden} 'iden' | {ALSUniv} 'univ' | {ALSInt} 'Int' | {ALSReference} + //referred=[ALSRelationDeclaration] | {ALSNumberLiteral} value=INT | '(' ALSTerm ')' + public Alternatives getAlternatives() { return cAlternatives; } + + //{ALSNone} 'none' + public Group getGroup_0() { return cGroup_0; } + + //{ALSNone} + public Action getALSNoneAction_0_0() { return cALSNoneAction_0_0; } + + //'none' + public Keyword getNoneKeyword_0_1() { return cNoneKeyword_0_1; } + + //{ALSIden} 'iden' + public Group getGroup_1() { return cGroup_1; } + + //{ALSIden} + public Action getALSIdenAction_1_0() { return cALSIdenAction_1_0; } + + //'iden' + public Keyword getIdenKeyword_1_1() { return cIdenKeyword_1_1; } + + //{ALSUniv} 'univ' + public Group getGroup_2() { return cGroup_2; } + + //{ALSUniv} + public Action getALSUnivAction_2_0() { return cALSUnivAction_2_0; } + + //'univ' + public Keyword getUnivKeyword_2_1() { return cUnivKeyword_2_1; } + + //{ALSInt} 'Int' + public Group getGroup_3() { return cGroup_3; } + + //{ALSInt} + public Action getALSIntAction_3_0() { return cALSIntAction_3_0; } + + //'Int' + public Keyword getIntKeyword_3_1() { return cIntKeyword_3_1; } + + //{ALSReference} referred=[ALSRelationDeclaration] + public Group getGroup_4() { return cGroup_4; } + + //{ALSReference} + public Action getALSReferenceAction_4_0() { return cALSReferenceAction_4_0; } + + //referred=[ALSRelationDeclaration] + public Assignment getReferredAssignment_4_1() { return cReferredAssignment_4_1; } + + //[ALSRelationDeclaration] + public CrossReference getReferredALSRelationDeclarationCrossReference_4_1_0() { return cReferredALSRelationDeclarationCrossReference_4_1_0; } + + //ID + public RuleCall getReferredALSRelationDeclarationIDTerminalRuleCall_4_1_0_1() { return cReferredALSRelationDeclarationIDTerminalRuleCall_4_1_0_1; } + + //{ALSNumberLiteral} value=INT + public Group getGroup_5() { return cGroup_5; } + + //{ALSNumberLiteral} + public Action getALSNumberLiteralAction_5_0() { return cALSNumberLiteralAction_5_0; } + + //value=INT + public Assignment getValueAssignment_5_1() { return cValueAssignment_5_1; } + + //INT + public RuleCall getValueINTTerminalRuleCall_5_1_0() { return cValueINTTerminalRuleCall_5_1_0; } + + //'(' ALSTerm ')' + public Group getGroup_6() { return cGroup_6; } + + //'(' + public Keyword getLeftParenthesisKeyword_6_0() { return cLeftParenthesisKeyword_6_0; } + + //ALSTerm + public RuleCall getALSTermParserRuleCall_6_1() { return cALSTermParserRuleCall_6_1; } + + //')' + public Keyword getRightParenthesisKeyword_6_2() { return cRightParenthesisKeyword_6_2; } + } + + public class ALSRunCommandElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSRunCommand"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Action cALSRunCommandAction_0 = (Action)cGroup.eContents().get(0); + private final Keyword cRunKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); + private final Group cGroup_4 = (Group)cGroup.eContents().get(4); + private final Keyword cForKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); + private final Assignment cTypeScopesAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); + private final RuleCall cTypeScopesALSTypeScopeParserRuleCall_4_1_0 = (RuleCall)cTypeScopesAssignment_4_1.eContents().get(0); + private final Group cGroup_4_2 = (Group)cGroup_4.eContents().get(2); + private final Keyword cCommaKeyword_4_2_0 = (Keyword)cGroup_4_2.eContents().get(0); + private final Assignment cTypeScopesAssignment_4_2_1 = (Assignment)cGroup_4_2.eContents().get(1); + private final RuleCall cTypeScopesALSTypeScopeParserRuleCall_4_2_1_0 = (RuleCall)cTypeScopesAssignment_4_2_1.eContents().get(0); + + //////////////////////////////////// + //// ALS Commands and scopes + //////////////////////////////////// + //ALSRunCommand: + // {ALSRunCommand} 'run' '{' '}' ('for' typeScopes+=ALSTypeScope (',' typeScopes+=ALSTypeScope)*)?; + @Override public ParserRule getRule() { return rule; } + + //{ALSRunCommand} 'run' '{' '}' ('for' typeScopes+=ALSTypeScope (',' typeScopes+=ALSTypeScope)*)? + public Group getGroup() { return cGroup; } + + //{ALSRunCommand} + public Action getALSRunCommandAction_0() { return cALSRunCommandAction_0; } + + //'run' + public Keyword getRunKeyword_1() { return cRunKeyword_1; } + + //'{' + public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; } + + //'}' + public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; } + + //('for' typeScopes+=ALSTypeScope (',' typeScopes+=ALSTypeScope)*)? + public Group getGroup_4() { return cGroup_4; } + + //'for' + public Keyword getForKeyword_4_0() { return cForKeyword_4_0; } + + //typeScopes+=ALSTypeScope + public Assignment getTypeScopesAssignment_4_1() { return cTypeScopesAssignment_4_1; } + + //ALSTypeScope + public RuleCall getTypeScopesALSTypeScopeParserRuleCall_4_1_0() { return cTypeScopesALSTypeScopeParserRuleCall_4_1_0; } + + //(',' typeScopes+=ALSTypeScope)* + public Group getGroup_4_2() { return cGroup_4_2; } + + //',' + public Keyword getCommaKeyword_4_2_0() { return cCommaKeyword_4_2_0; } + + //typeScopes+=ALSTypeScope + public Assignment getTypeScopesAssignment_4_2_1() { return cTypeScopesAssignment_4_2_1; } + + //ALSTypeScope + public RuleCall getTypeScopesALSTypeScopeParserRuleCall_4_2_1_0() { return cTypeScopesALSTypeScopeParserRuleCall_4_2_1_0; } + } + + public class ALSTypeScopeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSTypeScope"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cALSSigScopeParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cALSIntScopeParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + + //ALSTypeScope: + // ALSSigScope | ALSIntScope; + @Override public ParserRule getRule() { return rule; } + + //ALSSigScope | ALSIntScope + public Alternatives getAlternatives() { return cAlternatives; } + + //ALSSigScope + public RuleCall getALSSigScopeParserRuleCall_0() { return cALSSigScopeParserRuleCall_0; } + + //ALSIntScope + public RuleCall getALSIntScopeParserRuleCall_1() { return cALSIntScopeParserRuleCall_1; } + } + + public class ALSSigScopeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSSigScope"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cExactlyAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final Keyword cExactlyExactlyKeyword_0_0 = (Keyword)cExactlyAssignment_0.eContents().get(0); + private final Assignment cNumberAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNumberINTTerminalRuleCall_1_0 = (RuleCall)cNumberAssignment_1.eContents().get(0); + private final Assignment cTypeAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final CrossReference cTypeALSSignatureDeclarationCrossReference_2_0 = (CrossReference)cTypeAssignment_2.eContents().get(0); + private final RuleCall cTypeALSSignatureDeclarationIDTerminalRuleCall_2_0_1 = (RuleCall)cTypeALSSignatureDeclarationCrossReference_2_0.eContents().get(1); + + //ALSSigScope: + // exactly?='exactly'? number=INT type=[ALSSignatureDeclaration]; + @Override public ParserRule getRule() { return rule; } + + //exactly?='exactly'? number=INT type=[ALSSignatureDeclaration] + public Group getGroup() { return cGroup; } + + //exactly?='exactly'? + public Assignment getExactlyAssignment_0() { return cExactlyAssignment_0; } + + //'exactly' + public Keyword getExactlyExactlyKeyword_0_0() { return cExactlyExactlyKeyword_0_0; } + + //number=INT + public Assignment getNumberAssignment_1() { return cNumberAssignment_1; } + + //INT + public RuleCall getNumberINTTerminalRuleCall_1_0() { return cNumberINTTerminalRuleCall_1_0; } + + //type=[ALSSignatureDeclaration] + public Assignment getTypeAssignment_2() { return cTypeAssignment_2; } + + //[ALSSignatureDeclaration] + public CrossReference getTypeALSSignatureDeclarationCrossReference_2_0() { return cTypeALSSignatureDeclarationCrossReference_2_0; } + + //ID + public RuleCall getTypeALSSignatureDeclarationIDTerminalRuleCall_2_0_1() { return cTypeALSSignatureDeclarationIDTerminalRuleCall_2_0_1; } + } + + public class ALSIntScopeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSIntScope"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cNumberAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cNumberINTTerminalRuleCall_0_0 = (RuleCall)cNumberAssignment_0.eContents().get(0); + private final Keyword cIntKeyword_1 = (Keyword)cGroup.eContents().get(1); + + //ALSIntScope: + // number=INT 'Int'; + @Override public ParserRule getRule() { return rule; } + + //number=INT 'Int' + public Group getGroup() { return cGroup; } + + //number=INT + public Assignment getNumberAssignment_0() { return cNumberAssignment_0; } + + //INT + public RuleCall getNumberINTTerminalRuleCall_0_0() { return cNumberINTTerminalRuleCall_0_0; } + + //'Int' + public Keyword getIntKeyword_1() { return cIntKeyword_1; } + } + + + public class ALSMultiplicityElements extends AbstractEnumRuleElementFinder { + private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSMultiplicity"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final EnumLiteralDeclaration cAllEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cAllAllKeyword_0_0 = (Keyword)cAllEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cNoEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cNoNoKeyword_1_0 = (Keyword)cNoEnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cSomeEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2); + private final Keyword cSomeSomeKeyword_2_0 = (Keyword)cSomeEnumLiteralDeclaration_2.eContents().get(0); + private final EnumLiteralDeclaration cLoneEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); + private final Keyword cLoneLoneKeyword_3_0 = (Keyword)cLoneEnumLiteralDeclaration_3.eContents().get(0); + private final EnumLiteralDeclaration cOneEnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4); + private final Keyword cOneOneKeyword_4_0 = (Keyword)cOneEnumLiteralDeclaration_4.eContents().get(0); + private final EnumLiteralDeclaration cSetEnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5); + private final Keyword cSetSetKeyword_5_0 = (Keyword)cSetEnumLiteralDeclaration_5.eContents().get(0); + + //enum ALSMultiplicity: + // all | no | some | lone | one | set; + public EnumRule getRule() { return rule; } + + //all | no | some | lone | one | set + public Alternatives getAlternatives() { return cAlternatives; } + + //all + public EnumLiteralDeclaration getAllEnumLiteralDeclaration_0() { return cAllEnumLiteralDeclaration_0; } + + //"all" + public Keyword getAllAllKeyword_0_0() { return cAllAllKeyword_0_0; } + + //no + public EnumLiteralDeclaration getNoEnumLiteralDeclaration_1() { return cNoEnumLiteralDeclaration_1; } + + //"no" + public Keyword getNoNoKeyword_1_0() { return cNoNoKeyword_1_0; } + + //some + public EnumLiteralDeclaration getSomeEnumLiteralDeclaration_2() { return cSomeEnumLiteralDeclaration_2; } + + //"some" + public Keyword getSomeSomeKeyword_2_0() { return cSomeSomeKeyword_2_0; } + + //lone + public EnumLiteralDeclaration getLoneEnumLiteralDeclaration_3() { return cLoneEnumLiteralDeclaration_3; } + + //"lone" + public Keyword getLoneLoneKeyword_3_0() { return cLoneLoneKeyword_3_0; } + + //one + public EnumLiteralDeclaration getOneEnumLiteralDeclaration_4() { return cOneEnumLiteralDeclaration_4; } + + //"one" + public Keyword getOneOneKeyword_4_0() { return cOneOneKeyword_4_0; } + + //set + public EnumLiteralDeclaration getSetEnumLiteralDeclaration_5() { return cSetEnumLiteralDeclaration_5; } + + //"set" + public Keyword getSetSetKeyword_5_0() { return cSetSetKeyword_5_0; } + } + + public class ALSNumericOperatorElements extends AbstractEnumRuleElementFinder { + private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ALSNumericOperator"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final EnumLiteralDeclaration cPlusEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cPlusPlusKeyword_0_0 = (Keyword)cPlusEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cSubEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cSubSubKeyword_1_0 = (Keyword)cSubEnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cMulEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2); + private final Keyword cMulMulKeyword_2_0 = (Keyword)cMulEnumLiteralDeclaration_2.eContents().get(0); + private final EnumLiteralDeclaration cRemEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); + private final Keyword cRemRemKeyword_3_0 = (Keyword)cRemEnumLiteralDeclaration_3.eContents().get(0); + private final EnumLiteralDeclaration cDivEnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4); + private final Keyword cDivDivKeyword_4_0 = (Keyword)cDivEnumLiteralDeclaration_4.eContents().get(0); + + //enum ALSNumericOperator: + // plus | sub | mul | rem | div; + public EnumRule getRule() { return rule; } + + //plus | sub | mul | rem | div + public Alternatives getAlternatives() { return cAlternatives; } + + //plus + public EnumLiteralDeclaration getPlusEnumLiteralDeclaration_0() { return cPlusEnumLiteralDeclaration_0; } + + //"plus" + public Keyword getPlusPlusKeyword_0_0() { return cPlusPlusKeyword_0_0; } + + //sub + public EnumLiteralDeclaration getSubEnumLiteralDeclaration_1() { return cSubEnumLiteralDeclaration_1; } + + //"sub" + public Keyword getSubSubKeyword_1_0() { return cSubSubKeyword_1_0; } + + //mul + public EnumLiteralDeclaration getMulEnumLiteralDeclaration_2() { return cMulEnumLiteralDeclaration_2; } + + //"mul" + public Keyword getMulMulKeyword_2_0() { return cMulMulKeyword_2_0; } + + //rem + public EnumLiteralDeclaration getRemEnumLiteralDeclaration_3() { return cRemEnumLiteralDeclaration_3; } + + //"rem" + public Keyword getRemRemKeyword_3_0() { return cRemRemKeyword_3_0; } + + //div + public EnumLiteralDeclaration getDivEnumLiteralDeclaration_4() { return cDivEnumLiteralDeclaration_4; } + + //"div" + public Keyword getDivDivKeyword_4_0() { return cDivDivKeyword_4_0; } + } + + private final ALSDocumentElements pALSDocument; + private final TerminalRule tID; + private final ALSIDElements pALSID; + private final ALSMultiplicityElements eALSMultiplicity; + private final ALSRelationDeclarationElements pALSRelationDeclaration; + private final ALSTypeDeclarationElements pALSTypeDeclaration; + private final ALSEnumDeclarationElements pALSEnumDeclaration; + private final ALSEnumLiteralElements pALSEnumLiteral; + private final ALSSignatureDeclarationElements pALSSignatureDeclaration; + private final ALSSignatureBodyElements pALSSignatureBody; + private final ALSFieldDeclarationElements pALSFieldDeclaration; + private final ALSDefinitionElements pALSDefinition; + private final ALSFunctionDefinitionElements pALSFunctionDefinition; + private final ALSRelationDefinitionElements pALSRelationDefinition; + private final ALSFactDeclarationElements pALSFactDeclaration; + private final ALSTermElements pALSTerm; + private final ALSQuantifiedElements pALSQuantified; + private final ALSOrElements pALSOr; + private final ALSIffElements pALSIff; + private final ALSImplElements pALSImpl; + private final ALSAndElements pALSAnd; + private final ALSComparisonElements pALSComparison; + private final ALSOverrideElements pALSOverride; + private final ALSRangeRestrictionRightElements pALSRangeRestrictionRight; + private final ALSRangeRestrictionLeftElements pALSRangeRestrictionLeft; + private final ALSJoinElements pALSJoin; + private final ALSMinusElements pALSMinus; + private final ALSPlusElements pALSPlus; + private final ALSIntersectionElements pALSIntersection; + private final ALSDirectProductElements pALSDirectProduct; + private final ALSPreficedElements pALSPreficed; + private final ALSNumericOperatorElements eALSNumericOperator; + private final ALSVariableDeclarationElements pALSVariableDeclaration; + private final ALSBasicRelationTermElements pALSBasicRelationTerm; + private final ALSRunCommandElements pALSRunCommand; + private final ALSTypeScopeElements pALSTypeScope; + private final ALSSigScopeElements pALSSigScope; + private final ALSIntScopeElements pALSIntScope; + + private final Grammar grammar; + + private final TerminalsGrammarAccess gaTerminals; + + @Inject + public AlloyLanguageGrammarAccess(GrammarProvider grammarProvider, + TerminalsGrammarAccess gaTerminals) { + this.grammar = internalFindGrammar(grammarProvider); + this.gaTerminals = gaTerminals; + this.pALSDocument = new ALSDocumentElements(); + this.tID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "hu.bme.mit.inf.dslreasoner.AlloyLanguage.ID"); + this.pALSID = new ALSIDElements(); + this.eALSMultiplicity = new ALSMultiplicityElements(); + this.pALSRelationDeclaration = new ALSRelationDeclarationElements(); + this.pALSTypeDeclaration = new ALSTypeDeclarationElements(); + this.pALSEnumDeclaration = new ALSEnumDeclarationElements(); + this.pALSEnumLiteral = new ALSEnumLiteralElements(); + this.pALSSignatureDeclaration = new ALSSignatureDeclarationElements(); + this.pALSSignatureBody = new ALSSignatureBodyElements(); + this.pALSFieldDeclaration = new ALSFieldDeclarationElements(); + this.pALSDefinition = new ALSDefinitionElements(); + this.pALSFunctionDefinition = new ALSFunctionDefinitionElements(); + this.pALSRelationDefinition = new ALSRelationDefinitionElements(); + this.pALSFactDeclaration = new ALSFactDeclarationElements(); + this.pALSTerm = new ALSTermElements(); + this.pALSQuantified = new ALSQuantifiedElements(); + this.pALSOr = new ALSOrElements(); + this.pALSIff = new ALSIffElements(); + this.pALSImpl = new ALSImplElements(); + this.pALSAnd = new ALSAndElements(); + this.pALSComparison = new ALSComparisonElements(); + this.pALSOverride = new ALSOverrideElements(); + this.pALSRangeRestrictionRight = new ALSRangeRestrictionRightElements(); + this.pALSRangeRestrictionLeft = new ALSRangeRestrictionLeftElements(); + this.pALSJoin = new ALSJoinElements(); + this.pALSMinus = new ALSMinusElements(); + this.pALSPlus = new ALSPlusElements(); + this.pALSIntersection = new ALSIntersectionElements(); + this.pALSDirectProduct = new ALSDirectProductElements(); + this.pALSPreficed = new ALSPreficedElements(); + this.eALSNumericOperator = new ALSNumericOperatorElements(); + this.pALSVariableDeclaration = new ALSVariableDeclarationElements(); + this.pALSBasicRelationTerm = new ALSBasicRelationTermElements(); + this.pALSRunCommand = new ALSRunCommandElements(); + this.pALSTypeScope = new ALSTypeScopeElements(); + this.pALSSigScope = new ALSSigScopeElements(); + this.pALSIntScope = new ALSIntScopeElements(); + } + + protected Grammar internalFindGrammar(GrammarProvider grammarProvider) { + Grammar grammar = grammarProvider.getGrammar(this); + while (grammar != null) { + if ("hu.bme.mit.inf.dslreasoner.AlloyLanguage".equals(grammar.getName())) { + return grammar; + } + List grammars = grammar.getUsedGrammars(); + if (!grammars.isEmpty()) { + grammar = grammars.iterator().next(); + } else { + return null; + } + } + return grammar; + } + + @Override + public Grammar getGrammar() { + return grammar; + } + + + public TerminalsGrammarAccess getTerminalsGrammarAccess() { + return gaTerminals; + } + + + //ALSDocument: + // (enumDeclarations+=ALSEnumDeclaration | signatureBodies+=ALSSignatureBody | + // functionDefinitions+=ALSFunctionDefinition | relationDefinitions+=ALSRelationDefinition | + // factDeclarations+=ALSFactDeclaration)+ + // runCommand=ALSRunCommand; + public ALSDocumentElements getALSDocumentAccess() { + return pALSDocument; + } + + public ParserRule getALSDocumentRule() { + return getALSDocumentAccess().getRule(); + } + + //@ Override terminal ID: + // ('a'..'z' | 'A'..'Z' | '_') ('a'..'z' | 'A'..'Z' | '_' | "'" | '"' | '0'..'9')*; + public TerminalRule getIDRule() { + return tID; + } + + //ALSID: + // ID; + public ALSIDElements getALSIDAccess() { + return pALSID; + } + + public ParserRule getALSIDRule() { + return getALSIDAccess().getRule(); + } + + //enum ALSMultiplicity: + // all | no | some | lone | one | set; + public ALSMultiplicityElements getALSMultiplicityAccess() { + return eALSMultiplicity; + } + + public EnumRule getALSMultiplicityRule() { + return getALSMultiplicityAccess().getRule(); + } + + //////////////////////////////////// + //// ALS types + //////////////////////////////////// + //ALSRelationDeclaration: + // ALSTypeDeclaration | ALSEnumLiteral | ALSFieldDeclaration | ALSVariableDeclaration; + public ALSRelationDeclarationElements getALSRelationDeclarationAccess() { + return pALSRelationDeclaration; + } + + public ParserRule getALSRelationDeclarationRule() { + return getALSRelationDeclarationAccess().getRule(); + } + + //ALSTypeDeclaration: + // ALSEnumDeclaration | ALSSignatureDeclaration; + public ALSTypeDeclarationElements getALSTypeDeclarationAccess() { + return pALSTypeDeclaration; + } + + public ParserRule getALSTypeDeclarationRule() { + return getALSTypeDeclarationAccess().getRule(); + } + + //ALSEnumDeclaration: + // 'enum' name=ALSID '{' + // literal+=ALSEnumLiteral ("," literal+=ALSEnumLiteral)* + // '}'; + public ALSEnumDeclarationElements getALSEnumDeclarationAccess() { + return pALSEnumDeclaration; + } + + public ParserRule getALSEnumDeclarationRule() { + return getALSEnumDeclarationAccess().getRule(); + } + + //ALSEnumLiteral: + // name=ALSID; + public ALSEnumLiteralElements getALSEnumLiteralAccess() { + return pALSEnumLiteral; + } + + public ParserRule getALSEnumLiteralRule() { + return getALSEnumLiteralAccess().getRule(); + } + + //ALSSignatureDeclaration: + // name=ALSID; + public ALSSignatureDeclarationElements getALSSignatureDeclarationAccess() { + return pALSSignatureDeclaration; + } + + public ParserRule getALSSignatureDeclarationRule() { + return getALSSignatureDeclarationAccess().getRule(); + } + + //ALSSignatureBody: + // (multiplicity=ALSMultiplicity? & abstract?='abstract'?) + // 'sig' + // declarations+=ALSSignatureDeclaration (',' declarations+=ALSSignatureDeclaration)* ('extends' + // supertype=[ALSSignatureDeclaration] | 'in' superset+=[ALSSignatureDeclaration] ('+' + // superset+=[ALSSignatureDeclaration])*)? + // '{' (fields+=ALSFieldDeclaration ("," fields+=ALSFieldDeclaration)*)? '}'; + public ALSSignatureBodyElements getALSSignatureBodyAccess() { + return pALSSignatureBody; + } + + public ParserRule getALSSignatureBodyRule() { + return getALSSignatureBodyAccess().getRule(); + } + + //ALSFieldDeclaration: + // name=ALSID ':' multiplicity=ALSMultiplicity? type=ALSTerm; + public ALSFieldDeclarationElements getALSFieldDeclarationAccess() { + return pALSFieldDeclaration; + } + + public ParserRule getALSFieldDeclarationRule() { + return getALSFieldDeclarationAccess().getRule(); + } + + //ALSDefinition: + // ALSFunctionDefinition | ALSRelationDefinition; + public ALSDefinitionElements getALSDefinitionAccess() { + return pALSDefinition; + } + + public ParserRule getALSDefinitionRule() { + return getALSDefinitionAccess().getRule(); + } + + //ALSFunctionDefinition: + // "fun" name=ALSID "[" variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* "]" ":" type=ALSTerm + // "{" value=ALSTerm "}"; + public ALSFunctionDefinitionElements getALSFunctionDefinitionAccess() { + return pALSFunctionDefinition; + } + + public ParserRule getALSFunctionDefinitionRule() { + return getALSFunctionDefinitionAccess().getRule(); + } + + //ALSRelationDefinition: + // "pred" name=ALSID "[" variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* "]" + // "{" value=ALSTerm "}"; + public ALSRelationDefinitionElements getALSRelationDefinitionAccess() { + return pALSRelationDefinition; + } + + public ParserRule getALSRelationDefinitionRule() { + return getALSRelationDefinitionAccess().getRule(); + } + + //ALSFactDeclaration: + // {ALSFactDeclaration} 'fact' name=ALSID? '{' term=ALSTerm '}'; + public ALSFactDeclarationElements getALSFactDeclarationAccess() { + return pALSFactDeclaration; + } + + public ParserRule getALSFactDeclarationRule() { + return getALSFactDeclarationAccess().getRule(); + } + + //////////////////////////////////// + //// ALS terms + //////////////////////////////////// + //ALSTerm: + // ALSQuantified; + public ALSTermElements getALSTermAccess() { + return pALSTerm; + } + + public ParserRule getALSTermRule() { + return getALSTermAccess().getRule(); + } + + //ALSQuantified ALSTerm: + // {ALSQuantifiedEx} type=ALSMultiplicity + // disj?='disj'? variables+=ALSVariableDeclaration (',' variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' | + // ALSOr; + public ALSQuantifiedElements getALSQuantifiedAccess() { + return pALSQuantified; + } + + public ParserRule getALSQuantifiedRule() { + return getALSQuantifiedAccess().getRule(); + } + + //ALSOr ALSTerm: + // ALSIff ({ALSOr.leftOperand=current} ("||" | "or") rightOperand=ALSIff)?; + public ALSOrElements getALSOrAccess() { + return pALSOr; + } + + public ParserRule getALSOrRule() { + return getALSOrAccess().getRule(); + } + + //ALSIff ALSTerm: + // ALSImpl ({ALSIff.leftOperand=current} ("<=>" | "iff") rightOperand=ALSImpl)?; + public ALSIffElements getALSIffAccess() { + return pALSIff; + } + + public ParserRule getALSIffRule() { + return getALSIffAccess().getRule(); + } + + //ALSImpl ALSTerm: + // ALSAnd ({ALSImpl.leftOperand=current} ("=>" | "implies") rightOperand=ALSAnd ('else' elseOperand=ALSAnd)?)?; + public ALSImplElements getALSImplAccess() { + return pALSImpl; + } + + public ParserRule getALSImplRule() { + return getALSImplAccess().getRule(); + } + + //ALSAnd ALSTerm: + // ALSComparison ({ALSAnd.leftOperand=current} ("&&" | "and") rightOperand=ALSComparison)?; + public ALSAndElements getALSAndAccess() { + return pALSAnd; + } + + public ParserRule getALSAndRule() { + return getALSAndAccess().getRule(); + } + + //ALSComparison ALSTerm: + // ALSOverride (({ALSEquals.leftOperand=current} "=" | {ALSNotEquals.leftOperand=current} "!=" | + // {ALSSubset.leftOperand=current} "in" | {ALSLess.leftOperand=current} ">" | {ALSLeq.leftOperand=current} ">=" | + // {ALSMore.leftOperand=current} "<" | {ALSMeq.leftOperand=current} "<=") rightOperand=ALSOverride)?; + public ALSComparisonElements getALSComparisonAccess() { + return pALSComparison; + } + + public ParserRule getALSComparisonRule() { + return getALSComparisonAccess().getRule(); + } + + //ALSOverride ALSTerm: + // ALSRangeRestrictionRight ({ALSOverride.leftOperand=current} '++' rightOperand=ALSRangeRestrictionRight)?; + public ALSOverrideElements getALSOverrideAccess() { + return pALSOverride; + } + + public ParserRule getALSOverrideRule() { + return getALSOverrideAccess().getRule(); + } + + //ALSRangeRestrictionRight ALSTerm: + // ALSRangeRestrictionLeft ({ALSRangeRestrictionRight.relation=current} ':>' filter=ALSRangeRestrictionLeft)?; + public ALSRangeRestrictionRightElements getALSRangeRestrictionRightAccess() { + return pALSRangeRestrictionRight; + } + + public ParserRule getALSRangeRestrictionRightRule() { + return getALSRangeRestrictionRightAccess().getRule(); + } + + //ALSRangeRestrictionLeft ALSTerm: + // ALSJoin ({ALSRangeRestrictionLeft.filter=current} '<:' relation=ALSJoin)?; + public ALSRangeRestrictionLeftElements getALSRangeRestrictionLeftAccess() { + return pALSRangeRestrictionLeft; + } + + public ParserRule getALSRangeRestrictionLeftRule() { + return getALSRangeRestrictionLeftAccess().getRule(); + } + + //ALSJoin ALSTerm: + // ALSMinus ({ALSJoin.leftOperand=current} '.' rightOperand=ALSMinus)*; + public ALSJoinElements getALSJoinAccess() { + return pALSJoin; + } + + public ParserRule getALSJoinRule() { + return getALSJoinAccess().getRule(); + } + + //ALSMinus ALSTerm: + // ALSPlus ({ALSMinus.leftOperand=current} '-' rightOperand=ALSPlus)*; + public ALSMinusElements getALSMinusAccess() { + return pALSMinus; + } + + public ParserRule getALSMinusRule() { + return getALSMinusAccess().getRule(); + } + + //ALSPlus ALSTerm: + // ALSIntersection ({ALSPlus.leftOperand=current} '+' rightOperand=ALSIntersection)*; + public ALSPlusElements getALSPlusAccess() { + return pALSPlus; + } + + public ParserRule getALSPlusRule() { + return getALSPlusAccess().getRule(); + } + + //ALSIntersection ALSTerm: + // ALSDirectProduct ({ALSIntersection.leftOperand=current} '&' rightOperand=ALSDirectProduct)*; + public ALSIntersectionElements getALSIntersectionAccess() { + return pALSIntersection; + } + + public ParserRule getALSIntersectionRule() { + return getALSIntersectionAccess().getRule(); + } + + ////ALSMultiply returns ALSTerm: ALSDirectProduct ({ALSMultiply.leftOperand = current} '*' rightOperand = ALSDirectProduct)*; + //ALSDirectProduct ALSTerm: + // ALSPreficed ({ALSDirectProduct.leftOperand=current} leftMultiplicit=ALSMultiplicity? + // '->' + // rightMultiplicit=ALSMultiplicity? + // rightOperand=ALSPreficed)?; + public ALSDirectProductElements getALSDirectProductAccess() { + return pALSDirectProduct; + } + + public ParserRule getALSDirectProductRule() { + return getALSDirectProductAccess().getRule(); + } + + //ALSPreficed ALSTerm: + // {ALSNot} => ("!" | 'not') operand=ALSBasicRelationTerm | {ALSInverseRelation} => "~" operand=ALSBasicRelationTerm | + // {AlSTransitiveClosure} "^" operand=ALSBasicRelationTerm | {ALSReflectiveTransitiveClosure} "*" + // operand=ALSBasicRelationTerm | {ALSCardinality} '#' operand=ALSBasicRelationTerm | {ALSUnaryMinus} => '-' + // operand=ALSBasicRelationTerm | {ALSSum} 'sum' variables+=ALSVariableDeclaration (',' + // variables+=ALSVariableDeclaration)* '{' expression=ALSTerm '}' | {ALSFunctionCall} + // (referredDefinition=[ALSDefinition] | referredNumericOperator=ALSNumericOperator) '[' params+=ALSTerm (',' + // params+=ALSTerm)* ']' | ALSBasicRelationTerm; + public ALSPreficedElements getALSPreficedAccess() { + return pALSPreficed; + } + + public ParserRule getALSPreficedRule() { + return getALSPreficedAccess().getRule(); + } + + //enum ALSNumericOperator: + // plus | sub | mul | rem | div; + public ALSNumericOperatorElements getALSNumericOperatorAccess() { + return eALSNumericOperator; + } + + public EnumRule getALSNumericOperatorRule() { + return getALSNumericOperatorAccess().getRule(); + } + + ////ALSVariable: name = ALSID; + //ALSVariableDeclaration: + // name=ALSID ':' range=ALSTerm; + public ALSVariableDeclarationElements getALSVariableDeclarationAccess() { + return pALSVariableDeclaration; + } + + public ParserRule getALSVariableDeclarationRule() { + return getALSVariableDeclarationAccess().getRule(); + } + + //ALSBasicRelationTerm ALSTerm: + // {ALSNone} 'none' | {ALSIden} 'iden' | {ALSUniv} 'univ' | {ALSInt} 'Int' | {ALSReference} + // referred=[ALSRelationDeclaration] | {ALSNumberLiteral} value=INT | + // '(' ALSTerm ')'; + public ALSBasicRelationTermElements getALSBasicRelationTermAccess() { + return pALSBasicRelationTerm; + } + + public ParserRule getALSBasicRelationTermRule() { + return getALSBasicRelationTermAccess().getRule(); + } + + //////////////////////////////////// + //// ALS Commands and scopes + //////////////////////////////////// + //ALSRunCommand: + // {ALSRunCommand} 'run' '{' '}' ('for' typeScopes+=ALSTypeScope (',' typeScopes+=ALSTypeScope)*)?; + public ALSRunCommandElements getALSRunCommandAccess() { + return pALSRunCommand; + } + + public ParserRule getALSRunCommandRule() { + return getALSRunCommandAccess().getRule(); + } + + //ALSTypeScope: + // ALSSigScope | ALSIntScope; + public ALSTypeScopeElements getALSTypeScopeAccess() { + return pALSTypeScope; + } + + public ParserRule getALSTypeScopeRule() { + return getALSTypeScopeAccess().getRule(); + } + + //ALSSigScope: + // exactly?='exactly'? number=INT type=[ALSSignatureDeclaration]; + public ALSSigScopeElements getALSSigScopeAccess() { + return pALSSigScope; + } + + public ParserRule getALSSigScopeRule() { + return getALSSigScopeAccess().getRule(); + } + + //ALSIntScope: + // number=INT 'Int'; + public ALSIntScopeElements getALSIntScopeAccess() { + return pALSIntScope; + } + + public ParserRule getALSIntScopeRule() { + return getALSIntScopeAccess().getRule(); + } + + //terminal INT returns ecore::EInt: + // '0'..'9'+; + public TerminalRule getINTRule() { + return gaTerminals.getINTRule(); + } + + //terminal STRING: + // '"' ('\\' . | !('\\' | '"'))* '"' | "'" ('\\' . | !('\\' | "'"))* "'"; + public TerminalRule getSTRINGRule() { + return gaTerminals.getSTRINGRule(); + } + + //terminal ML_COMMENT: + // '/*'->'*/'; + public TerminalRule getML_COMMENTRule() { + return gaTerminals.getML_COMMENTRule(); + } + + //terminal SL_COMMENT: + // '//' !('\n' | '\r')* ('\r'? '\n')?; + public TerminalRule getSL_COMMENTRule() { + return gaTerminals.getSL_COMMENTRule(); + } + + //terminal WS: + // ' ' | '\t' | '\r' | '\n'+; + public TerminalRule getWSRule() { + return gaTerminals.getWSRule(); + } + + //terminal ANY_OTHER: + // .; + public TerminalRule getANY_OTHERRule() { + return gaTerminals.getANY_OTHERRule(); + } +} diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/validation/AbstractAlloyLanguageValidator.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/validation/AbstractAlloyLanguageValidator.java new file mode 100644 index 00000000..c5ee2dc7 --- /dev/null +++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/validation/AbstractAlloyLanguageValidator.java @@ -0,0 +1,18 @@ +/* + * generated by Xtext + */ +package hu.bme.mit.inf.dslreasoner.validation; + +import java.util.ArrayList; +import java.util.List; +import org.eclipse.emf.ecore.EPackage; + +public class AbstractAlloyLanguageValidator extends org.eclipse.xtext.validation.AbstractDeclarativeValidator { + + @Override + protected List getEPackages() { + List result = new ArrayList(); + result.add(hu.bme.mit.inf.dslreasoner.alloyLanguage.AlloyLanguagePackage.eINSTANCE); + return result; + } +} -- cgit v1.2.3-54-g00ecf