aboutsummaryrefslogtreecommitdiffstats
path: root/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage
diff options
context:
space:
mode:
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage')
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java59
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java18
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java38
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java70
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java250
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java93
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java435
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java118
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java90
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java59
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java46
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java36
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java161
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java36
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java46
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java69
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java115
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java59
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java47
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java250
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java36
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java18
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java70
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java204
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java115
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java87
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java46
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java36
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java592
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java7554
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java18
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java36
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java46
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java69
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java70
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java250
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java16
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java67
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java44
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java255
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java228
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java245
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java222
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java39
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java153
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java230
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java326
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java219
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java219
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java256
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java254
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java246
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java371
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java328
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java224
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java165
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java182
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java151
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java227
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java159
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java184
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java260
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java488
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java182
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java159
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java159
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java255
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java151
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java165
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java255
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java391
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java228
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java165
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java151
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java39
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java166
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java163
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java253
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java341
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java260
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java298
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java166
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java151
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java159
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java985
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java3364
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java39
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java150
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java230
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java182
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java164
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java253
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java37
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java262
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java163
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java182
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java1620
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java2114
170 files changed, 34712 insertions, 0 deletions
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java
new file mode 100644
index 00000000..7923a212
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Abstract Assertion</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression <em>Expression</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange <em>Range</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAbstractAssertion()
19 * @model abstract="true"
20 * @generated
21 */
22public interface AbstractAssertion extends Statement {
23 /**
24 * Returns the value of the '<em><b>Expression</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Expression</em>' containment reference.
28 * @see #setExpression(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAbstractAssertion_Expression()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getExpression();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression <em>Expression</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Expression</em>' containment reference.
40 * @see #getExpression()
41 * @generated
42 */
43 void setExpression(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Range</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Range</em>' containment reference.
50 * @see #setRange(Expression)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAbstractAssertion_Range()
52 * @model containment="true"
53 * @generated
54 */
55 Expression getRange();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange <em>Range</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Range</em>' containment reference.
62 * @see #getRange()
63 * @generated
64 */
65 void setRange(Expression value);
66
67} // AbstractAssertion
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java
new file mode 100644
index 00000000..8e4c468e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java
@@ -0,0 +1,59 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Aggregate Expression</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getForallVariables <em>Forall Variables</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition <em>Condition</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregateExpression()
21 * @model abstract="true"
22 * @generated
23 */
24public interface AggregateExpression extends Expression {
25 /**
26 * Returns the value of the '<em><b>Forall Variables</b></em>' containment reference list.
27 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Forall Variables</em>' containment reference list.
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregateExpression_ForallVariables()
32 * @model containment="true" transient="true"
33 * @generated
34 */
35 EList<Variable> getForallVariables();
36
37 /**
38 * Returns the value of the '<em><b>Condition</b></em>' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @return the value of the '<em>Condition</em>' containment reference.
42 * @see #setCondition(Expression)
43 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregateExpression_Condition()
44 * @model containment="true"
45 * @generated
46 */
47 Expression getCondition();
48
49 /**
50 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition <em>Condition</em>}' containment reference.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @param value the new value of the '<em>Condition</em>' containment reference.
54 * @see #getCondition()
55 * @generated
56 */
57 void setCondition(Expression value);
58
59} // AggregateExpression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java
new file mode 100644
index 00000000..f1d6b6c1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Aggregation</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue <em>Value</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp <em>Op</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation()
19 * @model
20 * @generated
21 */
22public interface Aggregation extends AggregateExpression {
23 /**
24 * Returns the value of the '<em><b>Value</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Value</em>' containment reference.
28 * @see #setValue(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Value()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getValue();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue <em>Value</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Value</em>' containment reference.
40 * @see #getValue()
41 * @generated
42 */
43 void setValue(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Op</b></em>' reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Op</em>' reference.
50 * @see #setOp(Symbol)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Op()
52 * @model
53 * @generated
54 */
55 Symbol getOp();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp <em>Op</em>}' reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Op</em>' reference.
62 * @see #getOp()
63 * @generated
64 */
65 void setOp(Symbol value);
66
67} // Aggregation
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java
new file mode 100644
index 00000000..2ec7794a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Aggregation Operator</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType <em>Argument Type</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType <em>Result Type</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregationOperator()
19 * @model
20 * @generated
21 */
22public interface AggregationOperator extends Symbol {
23 /**
24 * Returns the value of the '<em><b>Argument Type</b></em>' reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Argument Type</em>' reference.
28 * @see #setArgumentType(Datatype)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregationOperator_ArgumentType()
30 * @model
31 * @generated
32 */
33 Datatype getArgumentType();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType <em>Argument Type</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Argument Type</em>' reference.
40 * @see #getArgumentType()
41 * @generated
42 */
43 void setArgumentType(Datatype value);
44
45 /**
46 * Returns the value of the '<em><b>Result Type</b></em>' reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Result Type</em>' reference.
50 * @see #setResultType(Datatype)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregationOperator_ResultType()
52 * @model
53 * @generated
54 */
55 Datatype getResultType();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType <em>Result Type</em>}' reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Result Type</em>' reference.
62 * @see #getResultType()
63 * @generated
64 */
65 void setResultType(Datatype value);
66
67} // AggregationOperator
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java
new file mode 100644
index 00000000..dd9fb5ee
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java
@@ -0,0 +1,18 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Argument</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgument()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Argument extends EObject {
18} // Argument
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java
new file mode 100644
index 00000000..3f6c05bd
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java
@@ -0,0 +1,38 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Argument List</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments <em>Arguments</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgumentList()
22 * @model
23 * @generated
24 */
25public interface ArgumentList extends EObject {
26 /**
27 * Returns the value of the '<em><b>Arguments</b></em>' containment reference list.
28 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Argument}.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Arguments</em>' containment reference list.
32 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgumentList_Arguments()
33 * @model containment="true"
34 * @generated
35 */
36 EList<Argument> getArguments();
37
38} // ArgumentList
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java
new file mode 100644
index 00000000..1f9b0889
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Assertion</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAssertion()
12 * @model
13 * @generated
14 */
15public interface Assertion extends AbstractAssertion {
16} // Assertion
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java
new file mode 100644
index 00000000..bb577b73
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java
@@ -0,0 +1,70 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Attribute</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget <em>Target</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind <em>Kind</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttribute()
19 * @model abstract="true"
20 * @generated
21 */
22public interface Attribute extends Statement {
23 /**
24 * Returns the value of the '<em><b>Target</b></em>' reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Target</em>' reference.
28 * @see #setTarget(Symbol)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttribute_Target()
30 * @model
31 * @generated
32 */
33 Symbol getTarget();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget <em>Target</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Target</em>' reference.
40 * @see #getTarget()
41 * @generated
42 */
43 void setTarget(Symbol value);
44
45 /**
46 * Returns the value of the '<em><b>Kind</b></em>' attribute.
47 * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind}.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @return the value of the '<em>Kind</em>' attribute.
51 * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind
52 * @see #setKind(AttributeKind)
53 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttribute_Kind()
54 * @model
55 * @generated
56 */
57 AttributeKind getKind();
58
59 /**
60 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind <em>Kind</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @param value the new value of the '<em>Kind</em>' attribute.
64 * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind
65 * @see #getKind()
66 * @generated
67 */
68 void setKind(AttributeKind value);
69
70} // Attribute
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java
new file mode 100644
index 00000000..50f7afbf
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java
@@ -0,0 +1,250 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.List;
8
9import org.eclipse.emf.common.util.Enumerator;
10
11/**
12 * <!-- begin-user-doc -->
13 * A representation of the literals of the enumeration '<em><b>Attribute Kind</b></em>',
14 * and utility methods for working with them.
15 * <!-- end-user-doc -->
16 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttributeKind()
17 * @model
18 * @generated
19 */
20public enum AttributeKind implements Enumerator {
21 /**
22 * The '<em><b>FUNCTIONAL</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #FUNCTIONAL_VALUE
26 * @generated
27 * @ordered
28 */
29 FUNCTIONAL(0, "FUNCTIONAL", "FUNCTIONAL"),
30
31 /**
32 * The '<em><b>ERROR</b></em>' literal object.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #ERROR_VALUE
36 * @generated
37 * @ordered
38 */
39 ERROR(1, "ERROR", "ERROR"),
40
41 /**
42 * The '<em><b>ROOT</b></em>' literal object.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #ROOT_VALUE
46 * @generated
47 * @ordered
48 */
49 ROOT(2, "ROOT", "ROOT"),
50
51 /**
52 * The '<em><b>CONTAINMENT</b></em>' literal object.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #CONTAINMENT_VALUE
56 * @generated
57 * @ordered
58 */
59 CONTAINMENT(3, "CONTAINMENT", "CONTAINMENT");
60
61 /**
62 * The '<em><b>FUNCTIONAL</b></em>' literal value.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @see #FUNCTIONAL
66 * @model
67 * @generated
68 * @ordered
69 */
70 public static final int FUNCTIONAL_VALUE = 0;
71
72 /**
73 * The '<em><b>ERROR</b></em>' literal value.
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @see #ERROR
77 * @model
78 * @generated
79 * @ordered
80 */
81 public static final int ERROR_VALUE = 1;
82
83 /**
84 * The '<em><b>ROOT</b></em>' literal value.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @see #ROOT
88 * @model
89 * @generated
90 * @ordered
91 */
92 public static final int ROOT_VALUE = 2;
93
94 /**
95 * The '<em><b>CONTAINMENT</b></em>' literal value.
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @see #CONTAINMENT
99 * @model
100 * @generated
101 * @ordered
102 */
103 public static final int CONTAINMENT_VALUE = 3;
104
105 /**
106 * An array of all the '<em><b>Attribute Kind</b></em>' enumerators.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 private static final AttributeKind[] VALUES_ARRAY = new AttributeKind[] { FUNCTIONAL, ERROR, ROOT, CONTAINMENT, };
112
113 /**
114 * A public read-only list of all the '<em><b>Attribute Kind</b></em>' enumerators.
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 public static final List<AttributeKind> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
120
121 /**
122 * Returns the '<em><b>Attribute Kind</b></em>' literal with the specified literal value.
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @param literal the literal.
126 * @return the matching enumerator or <code>null</code>.
127 * @generated
128 */
129 public static AttributeKind get(String literal) {
130 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
131 AttributeKind result = VALUES_ARRAY[i];
132 if (result.toString().equals(literal)) {
133 return result;
134 }
135 }
136 return null;
137 }
138
139 /**
140 * Returns the '<em><b>Attribute Kind</b></em>' literal with the specified name.
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @param name the name.
144 * @return the matching enumerator or <code>null</code>.
145 * @generated
146 */
147 public static AttributeKind getByName(String name) {
148 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
149 AttributeKind result = VALUES_ARRAY[i];
150 if (result.getName().equals(name)) {
151 return result;
152 }
153 }
154 return null;
155 }
156
157 /**
158 * Returns the '<em><b>Attribute Kind</b></em>' literal with the specified integer value.
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @param value the integer value.
162 * @return the matching enumerator or <code>null</code>.
163 * @generated
164 */
165 public static AttributeKind get(int value) {
166 switch (value) {
167 case FUNCTIONAL_VALUE:
168 return FUNCTIONAL;
169 case ERROR_VALUE:
170 return ERROR;
171 case ROOT_VALUE:
172 return ROOT;
173 case CONTAINMENT_VALUE:
174 return CONTAINMENT;
175 }
176 return null;
177 }
178
179 /**
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 */
184 private final int value;
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 private final String name;
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 private final String literal;
199
200 /**
201 * Only this class can construct instances.
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 private AttributeKind(int value, String name, String literal) {
207 this.value = value;
208 this.name = name;
209 this.literal = literal;
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 public int getValue() {
218 return value;
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 public String getName() {
227 return name;
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 public String getLiteral() {
236 return literal;
237 }
238
239 /**
240 * Returns the literal value of the enumerator, which is its string representation.
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public String toString() {
247 return literal;
248 }
249
250} //AttributeKind
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java
new file mode 100644
index 00000000..9eb92f65
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Base Relation</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBaseRelation()
12 * @model
13 * @generated
14 */
15public interface BaseRelation extends Relation {
16} // BaseRelation
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java
new file mode 100644
index 00000000..9615767a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java
@@ -0,0 +1,93 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Binary Expression</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp <em>Op</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft <em>Left</em>}</li>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight <em>Right</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression()
20 * @model
21 * @generated
22 */
23public interface BinaryExpression extends Expression {
24 /**
25 * Returns the value of the '<em><b>Op</b></em>' attribute.
26 * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Op</em>' attribute.
30 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator
31 * @see #setOp(BinaryOperator)
32 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Op()
33 * @model
34 * @generated
35 */
36 BinaryOperator getOp();
37
38 /**
39 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp <em>Op</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @param value the new value of the '<em>Op</em>' attribute.
43 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator
44 * @see #getOp()
45 * @generated
46 */
47 void setOp(BinaryOperator value);
48
49 /**
50 * Returns the value of the '<em><b>Left</b></em>' containment reference.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Left</em>' containment reference.
54 * @see #setLeft(Expression)
55 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Left()
56 * @model containment="true"
57 * @generated
58 */
59 Expression getLeft();
60
61 /**
62 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft <em>Left</em>}' containment reference.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @param value the new value of the '<em>Left</em>' containment reference.
66 * @see #getLeft()
67 * @generated
68 */
69 void setLeft(Expression value);
70
71 /**
72 * Returns the value of the '<em><b>Right</b></em>' containment reference.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @return the value of the '<em>Right</em>' containment reference.
76 * @see #setRight(Expression)
77 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Right()
78 * @model containment="true"
79 * @generated
80 */
81 Expression getRight();
82
83 /**
84 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight <em>Right</em>}' containment reference.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @param value the new value of the '<em>Right</em>' containment reference.
88 * @see #getRight()
89 * @generated
90 */
91 void setRight(Expression value);
92
93} // BinaryExpression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java
new file mode 100644
index 00000000..58d01fd7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java
@@ -0,0 +1,435 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.List;
8
9import org.eclipse.emf.common.util.Enumerator;
10
11/**
12 * <!-- begin-user-doc -->
13 * A representation of the literals of the enumeration '<em><b>Binary Operator</b></em>',
14 * and utility methods for working with them.
15 * <!-- end-user-doc -->
16 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryOperator()
17 * @model
18 * @generated
19 */
20public enum BinaryOperator implements Enumerator {
21 /**
22 * The '<em><b>PLUS</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #PLUS_VALUE
26 * @generated
27 * @ordered
28 */
29 PLUS(0, "PLUS", "PLUS"),
30
31 /**
32 * The '<em><b>MINUS</b></em>' literal object.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #MINUS_VALUE
36 * @generated
37 * @ordered
38 */
39 MINUS(1, "MINUS", "MINUS"),
40
41 /**
42 * The '<em><b>MULTIPLY</b></em>' literal object.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #MULTIPLY_VALUE
46 * @generated
47 * @ordered
48 */
49 MULTIPLY(2, "MULTIPLY", "MULTIPLY"),
50
51 /**
52 * The '<em><b>DIVIDE</b></em>' literal object.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #DIVIDE_VALUE
56 * @generated
57 * @ordered
58 */
59 DIVIDE(3, "DIVIDE", "DIVIDE"),
60
61 /**
62 * The '<em><b>POW</b></em>' literal object.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @see #POW_VALUE
66 * @generated
67 * @ordered
68 */
69 POW(4, "POW", "POW"),
70
71 /**
72 * The '<em><b>IN</b></em>' literal object.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @see #IN_VALUE
76 * @generated
77 * @ordered
78 */
79 IN(5, "IN", "IN"),
80
81 /**
82 * The '<em><b>EQUALS</b></em>' literal object.
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @see #EQUALS_VALUE
86 * @generated
87 * @ordered
88 */
89 EQUALS(6, "EQUALS", "EQUALS"),
90
91 /**
92 * The '<em><b>NOT EQUALS</b></em>' literal object.
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @see #NOT_EQUALS_VALUE
96 * @generated
97 * @ordered
98 */
99 NOT_EQUALS(7, "NOT_EQUALS", "NOT_EQUALS"),
100
101 /**
102 * The '<em><b>LESS</b></em>' literal object.
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @see #LESS_VALUE
106 * @generated
107 * @ordered
108 */
109 LESS(8, "LESS", "LESS"),
110
111 /**
112 * The '<em><b>LESS EQUALS</b></em>' literal object.
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @see #LESS_EQUALS_VALUE
116 * @generated
117 * @ordered
118 */
119 LESS_EQUALS(9, "LESS_EQUALS", "LESS_EQUALS"),
120
121 /**
122 * The '<em><b>GREATER</b></em>' literal object.
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @see #GREATER_VALUE
126 * @generated
127 * @ordered
128 */
129 GREATER(10, "GREATER", "GREATER"),
130
131 /**
132 * The '<em><b>GREATER EQUALS</b></em>' literal object.
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @see #GREATER_EQUALS_VALUE
136 * @generated
137 * @ordered
138 */
139 GREATER_EQUALS(11, "GREATER_EQUALS", "GREATER_EQUALS");
140
141 /**
142 * The '<em><b>PLUS</b></em>' literal value.
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @see #PLUS
146 * @model
147 * @generated
148 * @ordered
149 */
150 public static final int PLUS_VALUE = 0;
151
152 /**
153 * The '<em><b>MINUS</b></em>' literal value.
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @see #MINUS
157 * @model
158 * @generated
159 * @ordered
160 */
161 public static final int MINUS_VALUE = 1;
162
163 /**
164 * The '<em><b>MULTIPLY</b></em>' literal value.
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @see #MULTIPLY
168 * @model
169 * @generated
170 * @ordered
171 */
172 public static final int MULTIPLY_VALUE = 2;
173
174 /**
175 * The '<em><b>DIVIDE</b></em>' literal value.
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @see #DIVIDE
179 * @model
180 * @generated
181 * @ordered
182 */
183 public static final int DIVIDE_VALUE = 3;
184
185 /**
186 * The '<em><b>POW</b></em>' literal value.
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @see #POW
190 * @model
191 * @generated
192 * @ordered
193 */
194 public static final int POW_VALUE = 4;
195
196 /**
197 * The '<em><b>IN</b></em>' literal value.
198 * <!-- begin-user-doc -->
199 * <!-- end-user-doc -->
200 * @see #IN
201 * @model
202 * @generated
203 * @ordered
204 */
205 public static final int IN_VALUE = 5;
206
207 /**
208 * The '<em><b>EQUALS</b></em>' literal value.
209 * <!-- begin-user-doc -->
210 * <!-- end-user-doc -->
211 * @see #EQUALS
212 * @model
213 * @generated
214 * @ordered
215 */
216 public static final int EQUALS_VALUE = 6;
217
218 /**
219 * The '<em><b>NOT EQUALS</b></em>' literal value.
220 * <!-- begin-user-doc -->
221 * <!-- end-user-doc -->
222 * @see #NOT_EQUALS
223 * @model
224 * @generated
225 * @ordered
226 */
227 public static final int NOT_EQUALS_VALUE = 7;
228
229 /**
230 * The '<em><b>LESS</b></em>' literal value.
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @see #LESS
234 * @model
235 * @generated
236 * @ordered
237 */
238 public static final int LESS_VALUE = 8;
239
240 /**
241 * The '<em><b>LESS EQUALS</b></em>' literal value.
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @see #LESS_EQUALS
245 * @model
246 * @generated
247 * @ordered
248 */
249 public static final int LESS_EQUALS_VALUE = 9;
250
251 /**
252 * The '<em><b>GREATER</b></em>' literal value.
253 * <!-- begin-user-doc -->
254 * <!-- end-user-doc -->
255 * @see #GREATER
256 * @model
257 * @generated
258 * @ordered
259 */
260 public static final int GREATER_VALUE = 10;
261
262 /**
263 * The '<em><b>GREATER EQUALS</b></em>' literal value.
264 * <!-- begin-user-doc -->
265 * <!-- end-user-doc -->
266 * @see #GREATER_EQUALS
267 * @model
268 * @generated
269 * @ordered
270 */
271 public static final int GREATER_EQUALS_VALUE = 11;
272
273 /**
274 * An array of all the '<em><b>Binary Operator</b></em>' enumerators.
275 * <!-- begin-user-doc -->
276 * <!-- end-user-doc -->
277 * @generated
278 */
279 private static final BinaryOperator[] VALUES_ARRAY = new BinaryOperator[] { PLUS, MINUS, MULTIPLY, DIVIDE, POW, IN,
280 EQUALS, NOT_EQUALS, LESS, LESS_EQUALS, GREATER, GREATER_EQUALS, };
281
282 /**
283 * A public read-only list of all the '<em><b>Binary Operator</b></em>' enumerators.
284 * <!-- begin-user-doc -->
285 * <!-- end-user-doc -->
286 * @generated
287 */
288 public static final List<BinaryOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
289
290 /**
291 * Returns the '<em><b>Binary Operator</b></em>' literal with the specified literal value.
292 * <!-- begin-user-doc -->
293 * <!-- end-user-doc -->
294 * @param literal the literal.
295 * @return the matching enumerator or <code>null</code>.
296 * @generated
297 */
298 public static BinaryOperator get(String literal) {
299 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
300 BinaryOperator result = VALUES_ARRAY[i];
301 if (result.toString().equals(literal)) {
302 return result;
303 }
304 }
305 return null;
306 }
307
308 /**
309 * Returns the '<em><b>Binary Operator</b></em>' literal with the specified name.
310 * <!-- begin-user-doc -->
311 * <!-- end-user-doc -->
312 * @param name the name.
313 * @return the matching enumerator or <code>null</code>.
314 * @generated
315 */
316 public static BinaryOperator getByName(String name) {
317 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
318 BinaryOperator result = VALUES_ARRAY[i];
319 if (result.getName().equals(name)) {
320 return result;
321 }
322 }
323 return null;
324 }
325
326 /**
327 * Returns the '<em><b>Binary Operator</b></em>' literal with the specified integer value.
328 * <!-- begin-user-doc -->
329 * <!-- end-user-doc -->
330 * @param value the integer value.
331 * @return the matching enumerator or <code>null</code>.
332 * @generated
333 */
334 public static BinaryOperator get(int value) {
335 switch (value) {
336 case PLUS_VALUE:
337 return PLUS;
338 case MINUS_VALUE:
339 return MINUS;
340 case MULTIPLY_VALUE:
341 return MULTIPLY;
342 case DIVIDE_VALUE:
343 return DIVIDE;
344 case POW_VALUE:
345 return POW;
346 case IN_VALUE:
347 return IN;
348 case EQUALS_VALUE:
349 return EQUALS;
350 case NOT_EQUALS_VALUE:
351 return NOT_EQUALS;
352 case LESS_VALUE:
353 return LESS;
354 case LESS_EQUALS_VALUE:
355 return LESS_EQUALS;
356 case GREATER_VALUE:
357 return GREATER;
358 case GREATER_EQUALS_VALUE:
359 return GREATER_EQUALS;
360 }
361 return null;
362 }
363
364 /**
365 * <!-- begin-user-doc -->
366 * <!-- end-user-doc -->
367 * @generated
368 */
369 private final int value;
370
371 /**
372 * <!-- begin-user-doc -->
373 * <!-- end-user-doc -->
374 * @generated
375 */
376 private final String name;
377
378 /**
379 * <!-- begin-user-doc -->
380 * <!-- end-user-doc -->
381 * @generated
382 */
383 private final String literal;
384
385 /**
386 * Only this class can construct instances.
387 * <!-- begin-user-doc -->
388 * <!-- end-user-doc -->
389 * @generated
390 */
391 private BinaryOperator(int value, String name, String literal) {
392 this.value = value;
393 this.name = name;
394 this.literal = literal;
395 }
396
397 /**
398 * <!-- begin-user-doc -->
399 * <!-- end-user-doc -->
400 * @generated
401 */
402 public int getValue() {
403 return value;
404 }
405
406 /**
407 * <!-- begin-user-doc -->
408 * <!-- end-user-doc -->
409 * @generated
410 */
411 public String getName() {
412 return name;
413 }
414
415 /**
416 * <!-- begin-user-doc -->
417 * <!-- end-user-doc -->
418 * @generated
419 */
420 public String getLiteral() {
421 return literal;
422 }
423
424 /**
425 * Returns the literal value of the enumerator, which is its string representation.
426 * <!-- begin-user-doc -->
427 * <!-- end-user-doc -->
428 * @generated
429 */
430 @Override
431 public String toString() {
432 return literal;
433 }
434
435} //BinaryOperator
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java
new file mode 100644
index 00000000..6f9cb8cc
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Bounded Multiplicity</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound <em>Lower Bound</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound <em>Upper Bound</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity()
19 * @model
20 * @generated
21 */
22public interface BoundedMultiplicity extends Multiplicity {
23 /**
24 * Returns the value of the '<em><b>Lower Bound</b></em>' attribute.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Lower Bound</em>' attribute.
28 * @see #setLowerBound(int)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity_LowerBound()
30 * @model
31 * @generated
32 */
33 int getLowerBound();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound <em>Lower Bound</em>}' attribute.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Lower Bound</em>' attribute.
40 * @see #getLowerBound()
41 * @generated
42 */
43 void setLowerBound(int value);
44
45 /**
46 * Returns the value of the '<em><b>Upper Bound</b></em>' attribute.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Upper Bound</em>' attribute.
50 * @see #setUpperBound(int)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity_UpperBound()
52 * @model
53 * @generated
54 */
55 int getUpperBound();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound <em>Upper Bound</em>}' attribute.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Upper Bound</em>' attribute.
62 * @see #getUpperBound()
63 * @generated
64 */
65 void setUpperBound(int value);
66
67} // BoundedMultiplicity
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java
new file mode 100644
index 00000000..e2ce4bb8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Bounded Scope</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound <em>Lower Bound</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound <em>Upper Bound</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScope()
19 * @model
20 * @generated
21 */
22public interface BoundedScope extends ScopeDeclaration {
23 /**
24 * Returns the value of the '<em><b>Lower Bound</b></em>' attribute.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Lower Bound</em>' attribute.
28 * @see #setLowerBound(int)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScope_LowerBound()
30 * @model
31 * @generated
32 */
33 int getLowerBound();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound <em>Lower Bound</em>}' attribute.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Lower Bound</em>' attribute.
40 * @see #getLowerBound()
41 * @generated
42 */
43 void setLowerBound(int value);
44
45 /**
46 * Returns the value of the '<em><b>Upper Bound</b></em>' attribute.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Upper Bound</em>' attribute.
50 * @see #setUpperBound(int)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScope_UpperBound()
52 * @model
53 * @generated
54 */
55 int getUpperBound();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound <em>Upper Bound</em>}' attribute.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Upper Bound</em>' attribute.
62 * @see #getUpperBound()
63 * @generated
64 */
65 void setUpperBound(int value);
66
67} // BoundedScope
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java
new file mode 100644
index 00000000..2a6e5012
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Call</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor <em>Functor</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList <em>Argument List</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall()
19 * @model
20 * @generated
21 */
22public interface Call extends Expression {
23 /**
24 * Returns the value of the '<em><b>Functor</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Functor</em>' containment reference.
28 * @see #setFunctor(Reference)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_Functor()
30 * @model containment="true"
31 * @generated
32 */
33 Reference getFunctor();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor <em>Functor</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Functor</em>' containment reference.
40 * @see #getFunctor()
41 * @generated
42 */
43 void setFunctor(Reference value);
44
45 /**
46 * Returns the value of the '<em><b>Argument List</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Argument List</em>' containment reference.
50 * @see #setArgumentList(ArgumentList)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_ArgumentList()
52 * @model containment="true"
53 * @generated
54 */
55 ArgumentList getArgumentList();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList <em>Argument List</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Argument List</em>' containment reference.
62 * @see #getArgumentList()
63 * @generated
64 */
65 void setArgumentList(ArgumentList value);
66
67} // Call
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java
new file mode 100644
index 00000000..a8e01488
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Case</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition <em>Condition</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody <em>Body</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase()
19 * @model
20 * @generated
21 */
22public interface Case extends Expression {
23 /**
24 * Returns the value of the '<em><b>Condition</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Condition</em>' containment reference.
28 * @see #setCondition(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase_Condition()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getCondition();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition <em>Condition</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Condition</em>' containment reference.
40 * @see #getCondition()
41 * @generated
42 */
43 void setCondition(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Body</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Body</em>' containment reference.
50 * @see #setBody(Expression)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase_Body()
52 * @model containment="true"
53 * @generated
54 */
55 Expression getBody();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody <em>Body</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Body</em>' containment reference.
62 * @see #getBody()
63 * @generated
64 */
65 void setBody(Expression value);
66
67} // Case
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java
new file mode 100644
index 00000000..ac64ab0f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Cast Expression</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody <em>Body</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType <em>Target Type</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression()
19 * @model
20 * @generated
21 */
22public interface CastExpression extends Expression {
23 /**
24 * Returns the value of the '<em><b>Body</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Body</em>' containment reference.
28 * @see #setBody(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression_Body()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getBody();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody <em>Body</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Body</em>' containment reference.
40 * @see #getBody()
41 * @generated
42 */
43 void setBody(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Target Type</b></em>' reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Target Type</em>' reference.
50 * @see #setTargetType(Symbol)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression_TargetType()
52 * @model
53 * @generated
54 */
55 Symbol getTargetType();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType <em>Target Type</em>}' reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Target Type</em>' reference.
62 * @see #getTargetType()
63 * @generated
64 */
65 void setTargetType(Symbol value);
66
67} // CastExpression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java
new file mode 100644
index 00000000..01e35777
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java
@@ -0,0 +1,118 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Class Declaration</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getFields <em>Fields</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName <em>Name</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract <em>Abstract</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getSupertypes <em>Supertypes</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot <em>Root</em>}</li>
21 * </ul>
22 *
23 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration()
24 * @model
25 * @generated
26 */
27public interface ClassDeclaration extends Statement {
28 /**
29 * Returns the value of the '<em><b>Fields</b></em>' containment reference list.
30 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Field}.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Fields</em>' containment reference list.
34 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Fields()
35 * @model containment="true"
36 * @generated
37 */
38 EList<Field> getFields();
39
40 /**
41 * Returns the value of the '<em><b>Name</b></em>' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @return the value of the '<em>Name</em>' attribute.
45 * @see #setName(String)
46 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Name()
47 * @model
48 * @generated
49 */
50 String getName();
51
52 /**
53 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName <em>Name</em>}' attribute.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @param value the new value of the '<em>Name</em>' attribute.
57 * @see #getName()
58 * @generated
59 */
60 void setName(String value);
61
62 /**
63 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @return the value of the '<em>Abstract</em>' attribute.
67 * @see #setAbstract(boolean)
68 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Abstract()
69 * @model
70 * @generated
71 */
72 boolean isAbstract();
73
74 /**
75 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract <em>Abstract</em>}' attribute.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @param value the new value of the '<em>Abstract</em>' attribute.
79 * @see #isAbstract()
80 * @generated
81 */
82 void setAbstract(boolean value);
83
84 /**
85 * Returns the value of the '<em><b>Supertypes</b></em>' reference list.
86 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Symbol}.
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @return the value of the '<em>Supertypes</em>' reference list.
90 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Supertypes()
91 * @model
92 * @generated
93 */
94 EList<Symbol> getSupertypes();
95
96 /**
97 * Returns the value of the '<em><b>Root</b></em>' attribute.
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @return the value of the '<em>Root</em>' attribute.
101 * @see #setRoot(boolean)
102 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Root()
103 * @model
104 * @generated
105 */
106 boolean isRoot();
107
108 /**
109 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot <em>Root</em>}' attribute.
110 * <!-- begin-user-doc -->
111 * <!-- end-user-doc -->
112 * @param value the new value of the '<em>Root</em>' attribute.
113 * @see #isRoot()
114 * @generated
115 */
116 void setRoot(boolean value);
117
118} // ClassDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java
new file mode 100644
index 00000000..73c3cdba
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java
@@ -0,0 +1,90 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Conditional Expression</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition <em>Condition</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen <em>Then</em>}</li>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse <em>Else</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression()
20 * @model
21 * @generated
22 */
23public interface ConditionalExpression extends Expression {
24 /**
25 * Returns the value of the '<em><b>Condition</b></em>' containment reference.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Condition</em>' containment reference.
29 * @see #setCondition(Expression)
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression_Condition()
31 * @model containment="true"
32 * @generated
33 */
34 Expression getCondition();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition <em>Condition</em>}' containment reference.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Condition</em>' containment reference.
41 * @see #getCondition()
42 * @generated
43 */
44 void setCondition(Expression value);
45
46 /**
47 * Returns the value of the '<em><b>Then</b></em>' containment reference.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @return the value of the '<em>Then</em>' containment reference.
51 * @see #setThen(Expression)
52 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression_Then()
53 * @model containment="true"
54 * @generated
55 */
56 Expression getThen();
57
58 /**
59 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen <em>Then</em>}' containment reference.
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @param value the new value of the '<em>Then</em>' containment reference.
63 * @see #getThen()
64 * @generated
65 */
66 void setThen(Expression value);
67
68 /**
69 * Returns the value of the '<em><b>Else</b></em>' containment reference.
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @return the value of the '<em>Else</em>' containment reference.
73 * @see #setElse(Expression)
74 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression_Else()
75 * @model containment="true"
76 * @generated
77 */
78 Expression getElse();
79
80 /**
81 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse <em>Else</em>}' containment reference.
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @param value the new value of the '<em>Else</em>' containment reference.
85 * @see #getElse()
86 * @generated
87 */
88 void setElse(Expression value);
89
90} // ConditionalExpression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java
new file mode 100644
index 00000000..16b8f305
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Conjunction</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConjunction()
12 * @model
13 * @generated
14 */
15public interface Conjunction extends MultiaryExpession {
16} // Conjunction
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java
new file mode 100644
index 00000000..f1127be9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Count</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCount()
12 * @model
13 * @generated
14 */
15public interface Count extends AggregateExpression {
16} // Count
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java
new file mode 100644
index 00000000..951973ac
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Datatype</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDatatype()
12 * @model
13 * @generated
14 */
15public interface Datatype extends Relation {
16} // Datatype
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java
new file mode 100644
index 00000000..ec66f733
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Default Assertion</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultAssertion()
12 * @model
13 * @generated
14 */
15public interface DefaultAssertion extends AbstractAssertion {
16} // DefaultAssertion
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java
new file mode 100644
index 00000000..8d91967f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Disjunction</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDisjunction()
12 * @model
13 * @generated
14 */
15public interface Disjunction extends MultiaryExpession {
16} // Disjunction
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java
new file mode 100644
index 00000000..2bec9e47
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Empty Literal</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEmptyLiteral()
12 * @model
13 * @generated
14 */
15public interface EmptyLiteral extends Literal {
16} // EmptyLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java
new file mode 100644
index 00000000..a7e0b5ee
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java
@@ -0,0 +1,59 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Enum Declaration</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getLiterals <em>Literals</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName <em>Name</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumDeclaration()
21 * @model
22 * @generated
23 */
24public interface EnumDeclaration extends Statement {
25 /**
26 * Returns the value of the '<em><b>Literals</b></em>' containment reference list.
27 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral}.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Literals</em>' containment reference list.
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumDeclaration_Literals()
32 * @model containment="true"
33 * @generated
34 */
35 EList<EnumLiteral> getLiterals();
36
37 /**
38 * Returns the value of the '<em><b>Name</b></em>' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @return the value of the '<em>Name</em>' attribute.
42 * @see #setName(String)
43 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumDeclaration_Name()
44 * @model
45 * @generated
46 */
47 String getName();
48
49 /**
50 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName <em>Name</em>}' attribute.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @param value the new value of the '<em>Name</em>' attribute.
54 * @see #getName()
55 * @generated
56 */
57 void setName(String value);
58
59} // EnumDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java
new file mode 100644
index 00000000..cb77e175
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java
@@ -0,0 +1,46 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Enum Literal</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumLiteral()
20 * @model
21 * @generated
22 */
23public interface EnumLiteral extends EObject {
24 /**
25 * Returns the value of the '<em><b>Name</b></em>' attribute.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Name</em>' attribute.
29 * @see #setName(String)
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumLiteral_Name()
31 * @model
32 * @generated
33 */
34 String getName();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName <em>Name</em>}' attribute.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Name</em>' attribute.
41 * @see #getName()
42 * @generated
43 */
44 void setName(String value);
45
46} // EnumLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java
new file mode 100644
index 00000000..4f7843a9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Exact Multiplicity</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue <em>Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactMultiplicity()
18 * @model
19 * @generated
20 */
21public interface ExactMultiplicity extends Multiplicity {
22 /**
23 * Returns the value of the '<em><b>Value</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Value</em>' attribute.
27 * @see #setValue(int)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactMultiplicity_Value()
29 * @model
30 * @generated
31 */
32 int getValue();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue <em>Value</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Value</em>' attribute.
39 * @see #getValue()
40 * @generated
41 */
42 void setValue(int value);
43
44} // ExactMultiplicity
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java
new file mode 100644
index 00000000..c5a86c8f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Exact Scope</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize <em>Size</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactScope()
18 * @model
19 * @generated
20 */
21public interface ExactScope extends ScopeDeclaration {
22 /**
23 * Returns the value of the '<em><b>Size</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Size</em>' attribute.
27 * @see #setSize(int)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactScope_Size()
29 * @model
30 * @generated
31 */
32 int getSize();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize <em>Size</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Size</em>' attribute.
39 * @see #getSize()
40 * @generated
41 */
42 void setSize(int value);
43
44} // ExactScope
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java
new file mode 100644
index 00000000..306312ea
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java
@@ -0,0 +1,36 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Expression</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Expression#getExistsVariables <em>Exists Variables</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpression()
20 * @model abstract="true"
21 * @generated
22 */
23public interface Expression extends Statement {
24 /**
25 * Returns the value of the '<em><b>Exists Variables</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Exists Variables</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpression_ExistsVariables()
31 * @model containment="true" transient="true"
32 * @generated
33 */
34 EList<Variable> getExistsVariables();
35
36} // Expression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java
new file mode 100644
index 00000000..f92ff2fe
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Expression Argument</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression <em>Expression</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpressionArgument()
18 * @model
19 * @generated
20 */
21public interface ExpressionArgument extends Argument {
22 /**
23 * Returns the value of the '<em><b>Expression</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Expression</em>' containment reference.
27 * @see #setExpression(Expression)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpressionArgument_Expression()
29 * @model containment="true"
30 * @generated
31 */
32 Expression getExpression();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression <em>Expression</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Expression</em>' containment reference.
39 * @see #getExpression()
40 * @generated
41 */
42 void setExpression(Expression value);
43
44} // ExpressionArgument
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java
new file mode 100644
index 00000000..ef8303ce
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Extern Aggregation Operator Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType <em>Argument Type</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType <em>Result Type</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregationOperatorDeclaration()
19 * @model
20 * @generated
21 */
22public interface ExternAggregationOperatorDeclaration extends ExternDeclaration {
23 /**
24 * Returns the value of the '<em><b>Argument Type</b></em>' reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Argument Type</em>' reference.
28 * @see #setArgumentType(Symbol)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregationOperatorDeclaration_ArgumentType()
30 * @model
31 * @generated
32 */
33 Symbol getArgumentType();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType <em>Argument Type</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Argument Type</em>' reference.
40 * @see #getArgumentType()
41 * @generated
42 */
43 void setArgumentType(Symbol value);
44
45 /**
46 * Returns the value of the '<em><b>Result Type</b></em>' reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Result Type</em>' reference.
50 * @see #setResultType(Symbol)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregationOperatorDeclaration_ResultType()
52 * @model
53 * @generated
54 */
55 Symbol getResultType();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType <em>Result Type</em>}' reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Result Type</em>' reference.
62 * @see #getResultType()
63 * @generated
64 */
65 void setResultType(Symbol value);
66
67} // ExternAggregationOperatorDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java
new file mode 100644
index 00000000..c3493469
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Extern Datatype Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDatatypeDeclaration()
12 * @model
13 * @generated
14 */
15public interface ExternDatatypeDeclaration extends ExternDeclaration {
16} // ExternDatatypeDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java
new file mode 100644
index 00000000..857d2b86
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Extern Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName <em>Name</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDeclaration()
18 * @model abstract="true"
19 * @generated
20 */
21public interface ExternDeclaration extends Statement {
22 /**
23 * Returns the value of the '<em><b>Name</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Name</em>' attribute.
27 * @see #setName(String)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDeclaration_Name()
29 * @model
30 * @generated
31 */
32 String getName();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName <em>Name</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Name</em>' attribute.
39 * @see #getName()
40 * @generated
41 */
42 void setName(String value);
43
44} // ExternDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java
new file mode 100644
index 00000000..c9cdc060
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Extern Function Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType <em>Result Type</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctionDeclaration()
18 * @model
19 * @generated
20 */
21public interface ExternFunctionDeclaration extends ExternFunctorDeclaration {
22 /**
23 * Returns the value of the '<em><b>Result Type</b></em>' reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Result Type</em>' reference.
27 * @see #setResultType(Symbol)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctionDeclaration_ResultType()
29 * @model
30 * @generated
31 */
32 Symbol getResultType();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType <em>Result Type</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Result Type</em>' reference.
39 * @see #getResultType()
40 * @generated
41 */
42 void setResultType(Symbol value);
43
44} // ExternFunctionDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java
new file mode 100644
index 00000000..40f577c8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Extern Functor Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList <em>Argument List</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctorDeclaration()
18 * @model abstract="true"
19 * @generated
20 */
21public interface ExternFunctorDeclaration extends ExternDeclaration {
22 /**
23 * Returns the value of the '<em><b>Argument List</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Argument List</em>' containment reference.
27 * @see #setArgumentList(ArgumentList)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctorDeclaration_ArgumentList()
29 * @model containment="true"
30 * @generated
31 */
32 ArgumentList getArgumentList();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList <em>Argument List</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Argument List</em>' containment reference.
39 * @see #getArgumentList()
40 * @generated
41 */
42 void setArgumentList(ArgumentList value);
43
44} // ExternFunctorDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java
new file mode 100644
index 00000000..0b646d11
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Extern Predicate Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternPredicateDeclaration()
12 * @model
13 * @generated
14 */
15public interface ExternPredicateDeclaration extends ExternFunctorDeclaration, InlinePredicateAttrributes {
16} // ExternPredicateDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java
new file mode 100644
index 00000000..cfd9e44b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java
@@ -0,0 +1,161 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Field</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment <em>Containment</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference <em>Cross Reference</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite <em>Opposite</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity <em>Multiplicity</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getType <em>Type</em>}</li>
21 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getName <em>Name</em>}</li>
22 * </ul>
23 *
24 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField()
25 * @model
26 * @generated
27 */
28public interface Field extends EObject {
29 /**
30 * Returns the value of the '<em><b>Containment</b></em>' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Containment</em>' attribute.
34 * @see #setContainment(boolean)
35 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Containment()
36 * @model
37 * @generated
38 */
39 boolean isContainment();
40
41 /**
42 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment <em>Containment</em>}' attribute.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @param value the new value of the '<em>Containment</em>' attribute.
46 * @see #isContainment()
47 * @generated
48 */
49 void setContainment(boolean value);
50
51 /**
52 * Returns the value of the '<em><b>Cross Reference</b></em>' attribute.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return the value of the '<em>Cross Reference</em>' attribute.
56 * @see #setCrossReference(boolean)
57 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_CrossReference()
58 * @model
59 * @generated
60 */
61 boolean isCrossReference();
62
63 /**
64 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference <em>Cross Reference</em>}' attribute.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @param value the new value of the '<em>Cross Reference</em>' attribute.
68 * @see #isCrossReference()
69 * @generated
70 */
71 void setCrossReference(boolean value);
72
73 /**
74 * Returns the value of the '<em><b>Opposite</b></em>' reference.
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @return the value of the '<em>Opposite</em>' reference.
78 * @see #setOpposite(Symbol)
79 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Opposite()
80 * @model
81 * @generated
82 */
83 Symbol getOpposite();
84
85 /**
86 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite <em>Opposite</em>}' reference.
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @param value the new value of the '<em>Opposite</em>' reference.
90 * @see #getOpposite()
91 * @generated
92 */
93 void setOpposite(Symbol value);
94
95 /**
96 * Returns the value of the '<em><b>Multiplicity</b></em>' containment reference.
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @return the value of the '<em>Multiplicity</em>' containment reference.
100 * @see #setMultiplicity(Multiplicity)
101 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Multiplicity()
102 * @model containment="true"
103 * @generated
104 */
105 Multiplicity getMultiplicity();
106
107 /**
108 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity <em>Multiplicity</em>}' containment reference.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @param value the new value of the '<em>Multiplicity</em>' containment reference.
112 * @see #getMultiplicity()
113 * @generated
114 */
115 void setMultiplicity(Multiplicity value);
116
117 /**
118 * Returns the value of the '<em><b>Type</b></em>' reference.
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @return the value of the '<em>Type</em>' reference.
122 * @see #setType(Symbol)
123 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Type()
124 * @model
125 * @generated
126 */
127 Symbol getType();
128
129 /**
130 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getType <em>Type</em>}' reference.
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @param value the new value of the '<em>Type</em>' reference.
134 * @see #getType()
135 * @generated
136 */
137 void setType(Symbol value);
138
139 /**
140 * Returns the value of the '<em><b>Name</b></em>' attribute.
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @return the value of the '<em>Name</em>' attribute.
144 * @see #setName(String)
145 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Name()
146 * @model
147 * @generated
148 */
149 String getName();
150
151 /**
152 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getName <em>Name</em>}' attribute.
153 * <!-- begin-user-doc -->
154 * <!-- end-user-doc -->
155 * @param value the new value of the '<em>Name</em>' attribute.
156 * @see #getName()
157 * @generated
158 */
159 void setName(String value);
160
161} // Field
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java
new file mode 100644
index 00000000..1591e186
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Forall</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody <em>Body</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getForall()
18 * @model
19 * @generated
20 */
21public interface Forall extends AggregateExpression {
22 /**
23 * Returns the value of the '<em><b>Body</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Body</em>' containment reference.
27 * @see #setBody(Expression)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getForall_Body()
29 * @model containment="true"
30 * @generated
31 */
32 Expression getBody();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody <em>Body</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Body</em>' containment reference.
39 * @see #getBody()
40 * @generated
41 */
42 void setBody(Expression value);
43
44} // Forall
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java
new file mode 100644
index 00000000..b1bb307d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Function</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType <em>Result Type</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunction()
18 * @model abstract="true"
19 * @generated
20 */
21public interface Function extends Functor {
22 /**
23 * Returns the value of the '<em><b>Result Type</b></em>' reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Result Type</em>' reference.
27 * @see #setResultType(Datatype)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunction_ResultType()
29 * @model
30 * @generated
31 */
32 Datatype getResultType();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType <em>Result Type</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Result Type</em>' reference.
39 * @see #getResultType()
40 * @generated
41 */
42 void setResultType(Datatype value);
43
44} // Function
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java
new file mode 100644
index 00000000..ab0db19b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Function Definition</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType <em>Result Type</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctionDefinition()
18 * @model
19 * @generated
20 */
21public interface FunctionDefinition extends FunctorDefiniton {
22 /**
23 * Returns the value of the '<em><b>Result Type</b></em>' reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Result Type</em>' reference.
27 * @see #setResultType(Symbol)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctionDefinition_ResultType()
29 * @model
30 * @generated
31 */
32 Symbol getResultType();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType <em>Result Type</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Result Type</em>' reference.
39 * @see #getResultType()
40 * @generated
41 */
42 void setResultType(Symbol value);
43
44} // FunctionDefinition
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java
new file mode 100644
index 00000000..e5c2c56f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java
@@ -0,0 +1,36 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Functor</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters <em>Parameters</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctor()
20 * @model abstract="true"
21 * @generated
22 */
23public interface Functor extends Symbol {
24 /**
25 * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Parameters</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctor_Parameters()
31 * @model containment="true"
32 * @generated
33 */
34 EList<Variable> getParameters();
35
36} // Functor
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java
new file mode 100644
index 00000000..70a21b6c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Functor Definiton</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead <em>Head</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody <em>Body</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctorDefiniton()
19 * @model abstract="true"
20 * @generated
21 */
22public interface FunctorDefiniton extends Statement {
23 /**
24 * Returns the value of the '<em><b>Head</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Head</em>' containment reference.
28 * @see #setHead(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctorDefiniton_Head()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getHead();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead <em>Head</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Head</em>' containment reference.
40 * @see #getHead()
41 * @generated
42 */
43 void setHead(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Body</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Body</em>' containment reference.
50 * @see #setBody(Expression)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctorDefiniton_Body()
52 * @model containment="true"
53 * @generated
54 */
55 Expression getBody();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody <em>Body</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Body</em>' containment reference.
62 * @see #getBody()
63 * @generated
64 */
65 void setBody(Expression value);
66
67} // FunctorDefiniton
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java
new file mode 100644
index 00000000..39dc6d6d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java
@@ -0,0 +1,46 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Import</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias <em>Alias</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getImport()
20 * @model
21 * @generated
22 */
23public interface Import extends EObject {
24 /**
25 * Returns the value of the '<em><b>Alias</b></em>' attribute.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Alias</em>' attribute.
29 * @see #setAlias(String)
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getImport_Alias()
31 * @model
32 * @generated
33 */
34 String getAlias();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias <em>Alias</em>}' attribute.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Alias</em>' attribute.
41 * @see #getAlias()
42 * @generated
43 */
44 void setAlias(String value);
45
46} // Import
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java
new file mode 100644
index 00000000..1a105131
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Infinity Literal</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInfinityLiteral()
12 * @model
13 * @generated
14 */
15public interface InfinityLiteral extends Literal {
16} // InfinityLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java
new file mode 100644
index 00000000..b715784a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java
@@ -0,0 +1,69 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Inline Predicate Attrributes</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError <em>Error</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional <em>Functional</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInlinePredicateAttrributes()
21 * @model interface="true" abstract="true"
22 * @generated
23 */
24public interface InlinePredicateAttrributes extends EObject {
25 /**
26 * Returns the value of the '<em><b>Error</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Error</em>' attribute.
30 * @see #setError(boolean)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInlinePredicateAttrributes_Error()
32 * @model
33 * @generated
34 */
35 boolean isError();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError <em>Error</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Error</em>' attribute.
42 * @see #isError()
43 * @generated
44 */
45 void setError(boolean value);
46
47 /**
48 * Returns the value of the '<em><b>Functional</b></em>' attribute.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @return the value of the '<em>Functional</em>' attribute.
52 * @see #setFunctional(boolean)
53 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInlinePredicateAttrributes_Functional()
54 * @model
55 * @generated
56 */
57 boolean isFunctional();
58
59 /**
60 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional <em>Functional</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @param value the new value of the '<em>Functional</em>' attribute.
64 * @see #isFunctional()
65 * @generated
66 */
67 void setFunctional(boolean value);
68
69} // InlinePredicateAttrributes
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java
new file mode 100644
index 00000000..ff8a3cf3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Int Literal</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue <em>Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntLiteral()
18 * @model
19 * @generated
20 */
21public interface IntLiteral extends Literal {
22 /**
23 * Returns the value of the '<em><b>Value</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Value</em>' attribute.
27 * @see #setValue(int)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntLiteral_Value()
29 * @model
30 * @generated
31 */
32 int getValue();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue <em>Value</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Value</em>' attribute.
39 * @see #getValue()
40 * @generated
41 */
42 void setValue(int value);
43
44} // IntLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java
new file mode 100644
index 00000000..fb8ac39c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Interval</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound <em>Lower Bound</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound <em>Upper Bound</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval()
19 * @model
20 * @generated
21 */
22public interface Interval extends Expression {
23 /**
24 * Returns the value of the '<em><b>Lower Bound</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Lower Bound</em>' containment reference.
28 * @see #setLowerBound(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval_LowerBound()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getLowerBound();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound <em>Lower Bound</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Lower Bound</em>' containment reference.
40 * @see #getLowerBound()
41 * @generated
42 */
43 void setLowerBound(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Upper Bound</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Upper Bound</em>' containment reference.
50 * @see #setUpperBound(Expression)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval_UpperBound()
52 * @model containment="true"
53 * @generated
54 */
55 Expression getUpperBound();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound <em>Upper Bound</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Upper Bound</em>' containment reference.
62 * @see #getUpperBound()
63 * @generated
64 */
65 void setUpperBound(Expression value);
66
67} // Interval
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java
new file mode 100644
index 00000000..cdf1f8eb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java
@@ -0,0 +1,115 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Let Binding</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue <em>Value</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable <em>Variable</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName <em>Name</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType <em>Type</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding()
23 * @model
24 * @generated
25 */
26public interface LetBinding extends EObject {
27 /**
28 * Returns the value of the '<em><b>Value</b></em>' containment reference.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Value</em>' containment reference.
32 * @see #setValue(Expression)
33 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Value()
34 * @model containment="true"
35 * @generated
36 */
37 Expression getValue();
38
39 /**
40 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue <em>Value</em>}' containment reference.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @param value the new value of the '<em>Value</em>' containment reference.
44 * @see #getValue()
45 * @generated
46 */
47 void setValue(Expression value);
48
49 /**
50 * Returns the value of the '<em><b>Variable</b></em>' containment reference.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Variable</em>' containment reference.
54 * @see #setVariable(Variable)
55 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Variable()
56 * @model containment="true" transient="true"
57 * @generated
58 */
59 Variable getVariable();
60
61 /**
62 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable <em>Variable</em>}' containment reference.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @param value the new value of the '<em>Variable</em>' containment reference.
66 * @see #getVariable()
67 * @generated
68 */
69 void setVariable(Variable value);
70
71 /**
72 * Returns the value of the '<em><b>Name</b></em>' attribute.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @return the value of the '<em>Name</em>' attribute.
76 * @see #setName(String)
77 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Name()
78 * @model
79 * @generated
80 */
81 String getName();
82
83 /**
84 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName <em>Name</em>}' attribute.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @param value the new value of the '<em>Name</em>' attribute.
88 * @see #getName()
89 * @generated
90 */
91 void setName(String value);
92
93 /**
94 * Returns the value of the '<em><b>Type</b></em>' reference.
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @return the value of the '<em>Type</em>' reference.
98 * @see #setType(Symbol)
99 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Type()
100 * @model
101 * @generated
102 */
103 Symbol getType();
104
105 /**
106 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType <em>Type</em>}' reference.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @param value the new value of the '<em>Type</em>' reference.
110 * @see #getType()
111 * @generated
112 */
113 void setType(Symbol value);
114
115} // LetBinding
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java
new file mode 100644
index 00000000..d677503d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java
@@ -0,0 +1,59 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Let Expression</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBindings <em>Bindings</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody <em>Body</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetExpression()
21 * @model
22 * @generated
23 */
24public interface LetExpression extends Expression {
25 /**
26 * Returns the value of the '<em><b>Bindings</b></em>' containment reference list.
27 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding}.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Bindings</em>' containment reference list.
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetExpression_Bindings()
32 * @model containment="true"
33 * @generated
34 */
35 EList<LetBinding> getBindings();
36
37 /**
38 * Returns the value of the '<em><b>Body</b></em>' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @return the value of the '<em>Body</em>' containment reference.
42 * @see #setBody(Expression)
43 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetExpression_Body()
44 * @model containment="true"
45 * @generated
46 */
47 Expression getBody();
48
49 /**
50 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody <em>Body</em>}' containment reference.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @param value the new value of the '<em>Body</em>' containment reference.
54 * @see #getBody()
55 * @generated
56 */
57 void setBody(Expression value);
58
59} // LetExpression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java
new file mode 100644
index 00000000..b3ba8b10
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Literal</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLiteral()
12 * @model abstract="true"
13 * @generated
14 */
15public interface Literal extends Expression {
16} // Literal
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java
new file mode 100644
index 00000000..7f00fc98
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java
@@ -0,0 +1,47 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Logic Literal</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue <em>Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicLiteral()
18 * @model
19 * @generated
20 */
21public interface LogicLiteral extends Literal {
22 /**
23 * Returns the value of the '<em><b>Value</b></em>' attribute.
24 * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue}.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Value</em>' attribute.
28 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue
29 * @see #setValue(LogicValue)
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicLiteral_Value()
31 * @model
32 * @generated
33 */
34 LogicValue getValue();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue <em>Value</em>}' attribute.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Value</em>' attribute.
41 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue
42 * @see #getValue()
43 * @generated
44 */
45 void setValue(LogicValue value);
46
47} // LogicLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java
new file mode 100644
index 00000000..6b6148c0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java
@@ -0,0 +1,250 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.List;
8
9import org.eclipse.emf.common.util.Enumerator;
10
11/**
12 * <!-- begin-user-doc -->
13 * A representation of the literals of the enumeration '<em><b>Logic Value</b></em>',
14 * and utility methods for working with them.
15 * <!-- end-user-doc -->
16 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicValue()
17 * @model
18 * @generated
19 */
20public enum LogicValue implements Enumerator {
21 /**
22 * The '<em><b>UNKNOWN</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #UNKNOWN_VALUE
26 * @generated
27 * @ordered
28 */
29 UNKNOWN(0, "UNKNOWN", "UNKNOWN"),
30
31 /**
32 * The '<em><b>FALSE</b></em>' literal object.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #FALSE_VALUE
36 * @generated
37 * @ordered
38 */
39 FALSE(1, "FALSE", "FALSE"),
40
41 /**
42 * The '<em><b>TRUE</b></em>' literal object.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #TRUE_VALUE
46 * @generated
47 * @ordered
48 */
49 TRUE(2, "TRUE", "TRUE"),
50
51 /**
52 * The '<em><b>ERROR</b></em>' literal object.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #ERROR_VALUE
56 * @generated
57 * @ordered
58 */
59 ERROR(3, "ERROR", "ERROR");
60
61 /**
62 * The '<em><b>UNKNOWN</b></em>' literal value.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @see #UNKNOWN
66 * @model
67 * @generated
68 * @ordered
69 */
70 public static final int UNKNOWN_VALUE = 0;
71
72 /**
73 * The '<em><b>FALSE</b></em>' literal value.
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @see #FALSE
77 * @model
78 * @generated
79 * @ordered
80 */
81 public static final int FALSE_VALUE = 1;
82
83 /**
84 * The '<em><b>TRUE</b></em>' literal value.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @see #TRUE
88 * @model
89 * @generated
90 * @ordered
91 */
92 public static final int TRUE_VALUE = 2;
93
94 /**
95 * The '<em><b>ERROR</b></em>' literal value.
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @see #ERROR
99 * @model
100 * @generated
101 * @ordered
102 */
103 public static final int ERROR_VALUE = 3;
104
105 /**
106 * An array of all the '<em><b>Logic Value</b></em>' enumerators.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 private static final LogicValue[] VALUES_ARRAY = new LogicValue[] { UNKNOWN, FALSE, TRUE, ERROR, };
112
113 /**
114 * A public read-only list of all the '<em><b>Logic Value</b></em>' enumerators.
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 public static final List<LogicValue> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
120
121 /**
122 * Returns the '<em><b>Logic Value</b></em>' literal with the specified literal value.
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @param literal the literal.
126 * @return the matching enumerator or <code>null</code>.
127 * @generated
128 */
129 public static LogicValue get(String literal) {
130 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
131 LogicValue result = VALUES_ARRAY[i];
132 if (result.toString().equals(literal)) {
133 return result;
134 }
135 }
136 return null;
137 }
138
139 /**
140 * Returns the '<em><b>Logic Value</b></em>' literal with the specified name.
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @param name the name.
144 * @return the matching enumerator or <code>null</code>.
145 * @generated
146 */
147 public static LogicValue getByName(String name) {
148 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
149 LogicValue result = VALUES_ARRAY[i];
150 if (result.getName().equals(name)) {
151 return result;
152 }
153 }
154 return null;
155 }
156
157 /**
158 * Returns the '<em><b>Logic Value</b></em>' literal with the specified integer value.
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @param value the integer value.
162 * @return the matching enumerator or <code>null</code>.
163 * @generated
164 */
165 public static LogicValue get(int value) {
166 switch (value) {
167 case UNKNOWN_VALUE:
168 return UNKNOWN;
169 case FALSE_VALUE:
170 return FALSE;
171 case TRUE_VALUE:
172 return TRUE;
173 case ERROR_VALUE:
174 return ERROR;
175 }
176 return null;
177 }
178
179 /**
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 */
184 private final int value;
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 private final String name;
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 private final String literal;
199
200 /**
201 * Only this class can construct instances.
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 private LogicValue(int value, String name, String literal) {
207 this.value = value;
208 this.name = name;
209 this.literal = literal;
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 public int getValue() {
218 return value;
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 public String getName() {
227 return name;
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 public String getLiteral() {
236 return literal;
237 }
238
239 /**
240 * Returns the literal value of the enumerator, which is its string representation.
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public String toString() {
247 return literal;
248 }
249
250} //LogicValue
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java
new file mode 100644
index 00000000..644ffa25
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Lower Bounded Scope</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound <em>Lower Bound</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLowerBoundedScope()
18 * @model
19 * @generated
20 */
21public interface LowerBoundedScope extends ScopeDeclaration {
22 /**
23 * Returns the value of the '<em><b>Lower Bound</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Lower Bound</em>' attribute.
27 * @see #setLowerBound(int)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLowerBoundedScope_LowerBound()
29 * @model
30 * @generated
31 */
32 int getLowerBound();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound <em>Lower Bound</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Lower Bound</em>' attribute.
39 * @see #getLowerBound()
40 * @generated
41 */
42 void setLowerBound(int value);
43
44} // LowerBoundedScope
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java
new file mode 100644
index 00000000..475e48a3
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Metric</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetric()
12 * @model
13 * @generated
14 */
15public interface Metric extends Function {
16} // Metric
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java
new file mode 100644
index 00000000..1f27beb7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java
@@ -0,0 +1,36 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Multiary Expession</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession#getChildren <em>Children</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiaryExpession()
20 * @model abstract="true"
21 * @generated
22 */
23public interface MultiaryExpession extends Expression {
24 /**
25 * Returns the value of the '<em><b>Children</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Expression}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Children</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiaryExpession_Children()
31 * @model containment="true"
32 * @generated
33 */
34 EList<Expression> getChildren();
35
36} // MultiaryExpession
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java
new file mode 100644
index 00000000..e759fb50
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java
@@ -0,0 +1,18 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Multiplicity</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicity()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Multiplicity extends EObject {
18} // Multiplicity
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java
new file mode 100644
index 00000000..29224110
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Namespace Import</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace <em>Imported Namespace</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamespaceImport()
18 * @model
19 * @generated
20 */
21public interface NamespaceImport extends Import {
22 /**
23 * Returns the value of the '<em><b>Imported Namespace</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Imported Namespace</em>' attribute.
27 * @see #setImportedNamespace(String)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamespaceImport_ImportedNamespace()
29 * @model
30 * @generated
31 */
32 String getImportedNamespace();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace <em>Imported Namespace</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Imported Namespace</em>' attribute.
39 * @see #getImportedNamespace()
40 * @generated
41 */
42 void setImportedNamespace(String value);
43
44} // NamespaceImport
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java
new file mode 100644
index 00000000..01366406
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Node</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed <em>Named</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNode()
18 * @model
19 * @generated
20 */
21public interface Node extends Symbol {
22 /**
23 * Returns the value of the '<em><b>Named</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Named</em>' attribute.
27 * @see #setNamed(boolean)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNode_Named()
29 * @model
30 * @generated
31 */
32 boolean isNamed();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed <em>Named</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Named</em>' attribute.
39 * @see #isNamed()
40 * @generated
41 */
42 void setNamed(boolean value);
43
44} // Node
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java
new file mode 100644
index 00000000..c446c245
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java
@@ -0,0 +1,70 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Objective Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind <em>Kind</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective <em>Objective</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDeclaration()
19 * @model
20 * @generated
21 */
22public interface ObjectiveDeclaration extends Statement {
23 /**
24 * Returns the value of the '<em><b>Kind</b></em>' attribute.
25 * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind}.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Kind</em>' attribute.
29 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind
30 * @see #setKind(ObjectiveKind)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDeclaration_Kind()
32 * @model
33 * @generated
34 */
35 ObjectiveKind getKind();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind <em>Kind</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Kind</em>' attribute.
42 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind
43 * @see #getKind()
44 * @generated
45 */
46 void setKind(ObjectiveKind value);
47
48 /**
49 * Returns the value of the '<em><b>Objective</b></em>' containment reference.
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @return the value of the '<em>Objective</em>' containment reference.
53 * @see #setObjective(Expression)
54 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDeclaration_Objective()
55 * @model containment="true"
56 * @generated
57 */
58 Expression getObjective();
59
60 /**
61 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective <em>Objective</em>}' containment reference.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @param value the new value of the '<em>Objective</em>' containment reference.
65 * @see #getObjective()
66 * @generated
67 */
68 void setObjective(Expression value);
69
70} // ObjectiveDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java
new file mode 100644
index 00000000..e81389fb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java
@@ -0,0 +1,204 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.List;
8
9import org.eclipse.emf.common.util.Enumerator;
10
11/**
12 * <!-- begin-user-doc -->
13 * A representation of the literals of the enumeration '<em><b>Objective Kind</b></em>',
14 * and utility methods for working with them.
15 * <!-- end-user-doc -->
16 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveKind()
17 * @model
18 * @generated
19 */
20public enum ObjectiveKind implements Enumerator {
21 /**
22 * The '<em><b>MINIMIZATION</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #MINIMIZATION_VALUE
26 * @generated
27 * @ordered
28 */
29 MINIMIZATION(0, "MINIMIZATION", "MINIMIZATION"),
30
31 /**
32 * The '<em><b>MAXIMIZATION</b></em>' literal object.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #MAXIMIZATION_VALUE
36 * @generated
37 * @ordered
38 */
39 MAXIMIZATION(1, "MAXIMIZATION", "MAXIMIZATION");
40
41 /**
42 * The '<em><b>MINIMIZATION</b></em>' literal value.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #MINIMIZATION
46 * @model
47 * @generated
48 * @ordered
49 */
50 public static final int MINIMIZATION_VALUE = 0;
51
52 /**
53 * The '<em><b>MAXIMIZATION</b></em>' literal value.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @see #MAXIMIZATION
57 * @model
58 * @generated
59 * @ordered
60 */
61 public static final int MAXIMIZATION_VALUE = 1;
62
63 /**
64 * An array of all the '<em><b>Objective Kind</b></em>' enumerators.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 private static final ObjectiveKind[] VALUES_ARRAY = new ObjectiveKind[] { MINIMIZATION, MAXIMIZATION, };
70
71 /**
72 * A public read-only list of all the '<em><b>Objective Kind</b></em>' enumerators.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 public static final List<ObjectiveKind> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
78
79 /**
80 * Returns the '<em><b>Objective Kind</b></em>' literal with the specified literal value.
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @param literal the literal.
84 * @return the matching enumerator or <code>null</code>.
85 * @generated
86 */
87 public static ObjectiveKind get(String literal) {
88 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
89 ObjectiveKind result = VALUES_ARRAY[i];
90 if (result.toString().equals(literal)) {
91 return result;
92 }
93 }
94 return null;
95 }
96
97 /**
98 * Returns the '<em><b>Objective Kind</b></em>' literal with the specified name.
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @param name the name.
102 * @return the matching enumerator or <code>null</code>.
103 * @generated
104 */
105 public static ObjectiveKind getByName(String name) {
106 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
107 ObjectiveKind result = VALUES_ARRAY[i];
108 if (result.getName().equals(name)) {
109 return result;
110 }
111 }
112 return null;
113 }
114
115 /**
116 * Returns the '<em><b>Objective Kind</b></em>' literal with the specified integer value.
117 * <!-- begin-user-doc -->
118 * <!-- end-user-doc -->
119 * @param value the integer value.
120 * @return the matching enumerator or <code>null</code>.
121 * @generated
122 */
123 public static ObjectiveKind get(int value) {
124 switch (value) {
125 case MINIMIZATION_VALUE:
126 return MINIMIZATION;
127 case MAXIMIZATION_VALUE:
128 return MAXIMIZATION;
129 }
130 return null;
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 private final int value;
139
140 /**
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @generated
144 */
145 private final String name;
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 private final String literal;
153
154 /**
155 * Only this class can construct instances.
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 private ObjectiveKind(int value, String name, String literal) {
161 this.value = value;
162 this.name = name;
163 this.literal = literal;
164 }
165
166 /**
167 * <!-- begin-user-doc -->
168 * <!-- end-user-doc -->
169 * @generated
170 */
171 public int getValue() {
172 return value;
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 public String getName() {
181 return name;
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 public String getLiteral() {
190 return literal;
191 }
192
193 /**
194 * Returns the literal value of the enumerator, which is its string representation.
195 * <!-- begin-user-doc -->
196 * <!-- end-user-doc -->
197 * @generated
198 */
199 @Override
200 public String toString() {
201 return literal;
202 }
203
204} //ObjectiveKind
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java
new file mode 100644
index 00000000..1da3f3a5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Operator</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getOperator()
12 * @model
13 * @generated
14 */
15public interface Operator extends Function {
16} // Operator
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java
new file mode 100644
index 00000000..ba0b8d7e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java
@@ -0,0 +1,115 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Path Component</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol <em>Symbol</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse <em>Inverse</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure <em>Transitive Closure</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure <em>Reflexive Transitive Closure</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent()
23 * @model
24 * @generated
25 */
26public interface PathComponent extends EObject {
27 /**
28 * Returns the value of the '<em><b>Symbol</b></em>' reference.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Symbol</em>' reference.
32 * @see #setSymbol(Symbol)
33 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_Symbol()
34 * @model
35 * @generated
36 */
37 Symbol getSymbol();
38
39 /**
40 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol <em>Symbol</em>}' reference.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @param value the new value of the '<em>Symbol</em>' reference.
44 * @see #getSymbol()
45 * @generated
46 */
47 void setSymbol(Symbol value);
48
49 /**
50 * Returns the value of the '<em><b>Inverse</b></em>' attribute.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Inverse</em>' attribute.
54 * @see #setInverse(boolean)
55 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_Inverse()
56 * @model
57 * @generated
58 */
59 boolean isInverse();
60
61 /**
62 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse <em>Inverse</em>}' attribute.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @param value the new value of the '<em>Inverse</em>' attribute.
66 * @see #isInverse()
67 * @generated
68 */
69 void setInverse(boolean value);
70
71 /**
72 * Returns the value of the '<em><b>Transitive Closure</b></em>' attribute.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @return the value of the '<em>Transitive Closure</em>' attribute.
76 * @see #setTransitiveClosure(boolean)
77 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_TransitiveClosure()
78 * @model
79 * @generated
80 */
81 boolean isTransitiveClosure();
82
83 /**
84 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure <em>Transitive Closure</em>}' attribute.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @param value the new value of the '<em>Transitive Closure</em>' attribute.
88 * @see #isTransitiveClosure()
89 * @generated
90 */
91 void setTransitiveClosure(boolean value);
92
93 /**
94 * Returns the value of the '<em><b>Reflexive Transitive Closure</b></em>' attribute.
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @return the value of the '<em>Reflexive Transitive Closure</em>' attribute.
98 * @see #setReflexiveTransitiveClosure(boolean)
99 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_ReflexiveTransitiveClosure()
100 * @model
101 * @generated
102 */
103 boolean isReflexiveTransitiveClosure();
104
105 /**
106 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure <em>Reflexive Transitive Closure</em>}' attribute.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @param value the new value of the '<em>Reflexive Transitive Closure</em>' attribute.
110 * @see #isReflexiveTransitiveClosure()
111 * @generated
112 */
113 void setReflexiveTransitiveClosure(boolean value);
114
115} // PathComponent
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java
new file mode 100644
index 00000000..9272916f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Predicate</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicate()
12 * @model
13 * @generated
14 */
15public interface Predicate extends Relation {
16} // Predicate
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java
new file mode 100644
index 00000000..f99fb162
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Predicate Definition</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition()
12 * @model
13 * @generated
14 */
15public interface PredicateDefinition extends FunctorDefiniton, InlinePredicateAttrributes {
16} // PredicateDefinition
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java
new file mode 100644
index 00000000..ca54b06c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java
@@ -0,0 +1,87 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Problem</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getName <em>Name</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements <em>Statements</em>}</li>
20 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getSymbols <em>Symbols</em>}</li>
21 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getImports <em>Imports</em>}</li>
22 * </ul>
23 *
24 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem()
25 * @model
26 * @generated
27 */
28public interface Problem extends EObject {
29 /**
30 * Returns the value of the '<em><b>Name</b></em>' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Name</em>' attribute.
34 * @see #setName(String)
35 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Name()
36 * @model
37 * @generated
38 */
39 String getName();
40
41 /**
42 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getName <em>Name</em>}' attribute.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @param value the new value of the '<em>Name</em>' attribute.
46 * @see #getName()
47 * @generated
48 */
49 void setName(String value);
50
51 /**
52 * Returns the value of the '<em><b>Statements</b></em>' containment reference list.
53 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Statement}.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @return the value of the '<em>Statements</em>' containment reference list.
57 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Statements()
58 * @model containment="true"
59 * @generated
60 */
61 EList<Statement> getStatements();
62
63 /**
64 * Returns the value of the '<em><b>Symbols</b></em>' containment reference list.
65 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Symbol}.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @return the value of the '<em>Symbols</em>' containment reference list.
69 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Symbols()
70 * @model containment="true" transient="true"
71 * @generated
72 */
73 EList<Symbol> getSymbols();
74
75 /**
76 * Returns the value of the '<em><b>Imports</b></em>' containment reference list.
77 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Import}.
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @return the value of the '<em>Imports</em>' containment reference list.
81 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Imports()
82 * @model containment="true"
83 * @generated
84 */
85 EList<Import> getImports();
86
87} // Problem
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java
new file mode 100644
index 00000000..f6646284
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java
@@ -0,0 +1,46 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import java.math.BigDecimal;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Real Literal</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue <em>Value</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealLiteral()
20 * @model
21 * @generated
22 */
23public interface RealLiteral extends Literal {
24 /**
25 * Returns the value of the '<em><b>Value</b></em>' attribute.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Value</em>' attribute.
29 * @see #setValue(BigDecimal)
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealLiteral_Value()
31 * @model
32 * @generated
33 */
34 BigDecimal getValue();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue <em>Value</em>}' attribute.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Value</em>' attribute.
41 * @see #getValue()
42 * @generated
43 */
44 void setValue(BigDecimal value);
45
46} // RealLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java
new file mode 100644
index 00000000..5641337f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java
@@ -0,0 +1,36 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Reference</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getComponents <em>Components</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReference()
20 * @model
21 * @generated
22 */
23public interface Reference extends Expression {
24 /**
25 * Returns the value of the '<em><b>Components</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Components</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReference_Components()
31 * @model containment="true"
32 * @generated
33 */
34 EList<PathComponent> getComponents();
35
36} // Reference
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java
new file mode 100644
index 00000000..3d35a55e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Relation</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRelation()
12 * @model abstract="true"
13 * @generated
14 */
15public interface Relation extends Functor {
16} // Relation
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java
new file mode 100644
index 00000000..4ab92418
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Scope Declaration</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType <em>Type</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getScopeDeclaration()
18 * @model
19 * @generated
20 */
21public interface ScopeDeclaration extends Statement {
22 /**
23 * Returns the value of the '<em><b>Type</b></em>' reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Type</em>' reference.
27 * @see #setType(Symbol)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getScopeDeclaration_Type()
29 * @model
30 * @generated
31 */
32 Symbol getType();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType <em>Type</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Type</em>' reference.
39 * @see #getType()
40 * @generated
41 */
42 void setType(Symbol value);
43
44} // ScopeDeclaration
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java
new file mode 100644
index 00000000..6192f942
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java
@@ -0,0 +1,592 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EFactory;
6
7/**
8 * <!-- begin-user-doc -->
9 * The <b>Factory</b> for the model.
10 * It provides a create method for each non-abstract class of the model.
11 * <!-- end-user-doc -->
12 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage
13 * @generated
14 */
15public interface SolverLanguageFactory extends EFactory {
16 /**
17 * The singleton instance of the factory.
18 * <!-- begin-user-doc -->
19 * <!-- end-user-doc -->
20 * @generated
21 */
22 SolverLanguageFactory eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguageFactoryImpl
23 .init();
24
25 /**
26 * Returns a new object of class '<em>Path Component</em>'.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return a new object of class '<em>Path Component</em>'.
30 * @generated
31 */
32 PathComponent createPathComponent();
33
34 /**
35 * Returns a new object of class '<em>Call</em>'.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @return a new object of class '<em>Call</em>'.
39 * @generated
40 */
41 Call createCall();
42
43 /**
44 * Returns a new object of class '<em>Reference</em>'.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @return a new object of class '<em>Reference</em>'.
48 * @generated
49 */
50 Reference createReference();
51
52 /**
53 * Returns a new object of class '<em>Argument List</em>'.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @return a new object of class '<em>Argument List</em>'.
57 * @generated
58 */
59 ArgumentList createArgumentList();
60
61 /**
62 * Returns a new object of class '<em>Expression Argument</em>'.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @return a new object of class '<em>Expression Argument</em>'.
66 * @generated
67 */
68 ExpressionArgument createExpressionArgument();
69
70 /**
71 * Returns a new object of class '<em>Star Argument</em>'.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @return a new object of class '<em>Star Argument</em>'.
75 * @generated
76 */
77 StarArgument createStarArgument();
78
79 /**
80 * Returns a new object of class '<em>Variable</em>'.
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @return a new object of class '<em>Variable</em>'.
84 * @generated
85 */
86 Variable createVariable();
87
88 /**
89 * Returns a new object of class '<em>Unary Expression</em>'.
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @return a new object of class '<em>Unary Expression</em>'.
93 * @generated
94 */
95 UnaryExpression createUnaryExpression();
96
97 /**
98 * Returns a new object of class '<em>Binary Expression</em>'.
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @return a new object of class '<em>Binary Expression</em>'.
102 * @generated
103 */
104 BinaryExpression createBinaryExpression();
105
106 /**
107 * Returns a new object of class '<em>Disjunction</em>'.
108 * <!-- begin-user-doc -->
109 * <!-- end-user-doc -->
110 * @return a new object of class '<em>Disjunction</em>'.
111 * @generated
112 */
113 Disjunction createDisjunction();
114
115 /**
116 * Returns a new object of class '<em>Conjunction</em>'.
117 * <!-- begin-user-doc -->
118 * <!-- end-user-doc -->
119 * @return a new object of class '<em>Conjunction</em>'.
120 * @generated
121 */
122 Conjunction createConjunction();
123
124 /**
125 * Returns a new object of class '<em>Conditional Expression</em>'.
126 * <!-- begin-user-doc -->
127 * <!-- end-user-doc -->
128 * @return a new object of class '<em>Conditional Expression</em>'.
129 * @generated
130 */
131 ConditionalExpression createConditionalExpression();
132
133 /**
134 * Returns a new object of class '<em>Switch</em>'.
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @return a new object of class '<em>Switch</em>'.
138 * @generated
139 */
140 Switch createSwitch();
141
142 /**
143 * Returns a new object of class '<em>Case</em>'.
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @return a new object of class '<em>Case</em>'.
147 * @generated
148 */
149 Case createCase();
150
151 /**
152 * Returns a new object of class '<em>Let Expression</em>'.
153 * <!-- begin-user-doc -->
154 * <!-- end-user-doc -->
155 * @return a new object of class '<em>Let Expression</em>'.
156 * @generated
157 */
158 LetExpression createLetExpression();
159
160 /**
161 * Returns a new object of class '<em>Let Binding</em>'.
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @return a new object of class '<em>Let Binding</em>'.
165 * @generated
166 */
167 LetBinding createLetBinding();
168
169 /**
170 * Returns a new object of class '<em>Int Literal</em>'.
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @return a new object of class '<em>Int Literal</em>'.
174 * @generated
175 */
176 IntLiteral createIntLiteral();
177
178 /**
179 * Returns a new object of class '<em>Real Literal</em>'.
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @return a new object of class '<em>Real Literal</em>'.
183 * @generated
184 */
185 RealLiteral createRealLiteral();
186
187 /**
188 * Returns a new object of class '<em>String Literal</em>'.
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @return a new object of class '<em>String Literal</em>'.
192 * @generated
193 */
194 StringLiteral createStringLiteral();
195
196 /**
197 * Returns a new object of class '<em>Logic Literal</em>'.
198 * <!-- begin-user-doc -->
199 * <!-- end-user-doc -->
200 * @return a new object of class '<em>Logic Literal</em>'.
201 * @generated
202 */
203 LogicLiteral createLogicLiteral();
204
205 /**
206 * Returns a new object of class '<em>Empty Literal</em>'.
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @return a new object of class '<em>Empty Literal</em>'.
210 * @generated
211 */
212 EmptyLiteral createEmptyLiteral();
213
214 /**
215 * Returns a new object of class '<em>Cast Expression</em>'.
216 * <!-- begin-user-doc -->
217 * <!-- end-user-doc -->
218 * @return a new object of class '<em>Cast Expression</em>'.
219 * @generated
220 */
221 CastExpression createCastExpression();
222
223 /**
224 * Returns a new object of class '<em>Count</em>'.
225 * <!-- begin-user-doc -->
226 * <!-- end-user-doc -->
227 * @return a new object of class '<em>Count</em>'.
228 * @generated
229 */
230 Count createCount();
231
232 /**
233 * Returns a new object of class '<em>Aggregation</em>'.
234 * <!-- begin-user-doc -->
235 * <!-- end-user-doc -->
236 * @return a new object of class '<em>Aggregation</em>'.
237 * @generated
238 */
239 Aggregation createAggregation();
240
241 /**
242 * Returns a new object of class '<em>Forall</em>'.
243 * <!-- begin-user-doc -->
244 * <!-- end-user-doc -->
245 * @return a new object of class '<em>Forall</em>'.
246 * @generated
247 */
248 Forall createForall();
249
250 /**
251 * Returns a new object of class '<em>Type Reference</em>'.
252 * <!-- begin-user-doc -->
253 * <!-- end-user-doc -->
254 * @return a new object of class '<em>Type Reference</em>'.
255 * @generated
256 */
257 TypeReference createTypeReference();
258
259 /**
260 * Returns a new object of class '<em>Infinity Literal</em>'.
261 * <!-- begin-user-doc -->
262 * <!-- end-user-doc -->
263 * @return a new object of class '<em>Infinity Literal</em>'.
264 * @generated
265 */
266 InfinityLiteral createInfinityLiteral();
267
268 /**
269 * Returns a new object of class '<em>Interval</em>'.
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @return a new object of class '<em>Interval</em>'.
273 * @generated
274 */
275 Interval createInterval();
276
277 /**
278 * Returns a new object of class '<em>Base Relation</em>'.
279 * <!-- begin-user-doc -->
280 * <!-- end-user-doc -->
281 * @return a new object of class '<em>Base Relation</em>'.
282 * @generated
283 */
284 BaseRelation createBaseRelation();
285
286 /**
287 * Returns a new object of class '<em>Predicate</em>'.
288 * <!-- begin-user-doc -->
289 * <!-- end-user-doc -->
290 * @return a new object of class '<em>Predicate</em>'.
291 * @generated
292 */
293 Predicate createPredicate();
294
295 /**
296 * Returns a new object of class '<em>Datatype</em>'.
297 * <!-- begin-user-doc -->
298 * <!-- end-user-doc -->
299 * @return a new object of class '<em>Datatype</em>'.
300 * @generated
301 */
302 Datatype createDatatype();
303
304 /**
305 * Returns a new object of class '<em>Metric</em>'.
306 * <!-- begin-user-doc -->
307 * <!-- end-user-doc -->
308 * @return a new object of class '<em>Metric</em>'.
309 * @generated
310 */
311 Metric createMetric();
312
313 /**
314 * Returns a new object of class '<em>Operator</em>'.
315 * <!-- begin-user-doc -->
316 * <!-- end-user-doc -->
317 * @return a new object of class '<em>Operator</em>'.
318 * @generated
319 */
320 Operator createOperator();
321
322 /**
323 * Returns a new object of class '<em>Node</em>'.
324 * <!-- begin-user-doc -->
325 * <!-- end-user-doc -->
326 * @return a new object of class '<em>Node</em>'.
327 * @generated
328 */
329 Node createNode();
330
331 /**
332 * Returns a new object of class '<em>Predicate Definition</em>'.
333 * <!-- begin-user-doc -->
334 * <!-- end-user-doc -->
335 * @return a new object of class '<em>Predicate Definition</em>'.
336 * @generated
337 */
338 PredicateDefinition createPredicateDefinition();
339
340 /**
341 * Returns a new object of class '<em>Function Definition</em>'.
342 * <!-- begin-user-doc -->
343 * <!-- end-user-doc -->
344 * @return a new object of class '<em>Function Definition</em>'.
345 * @generated
346 */
347 FunctionDefinition createFunctionDefinition();
348
349 /**
350 * Returns a new object of class '<em>Extern Predicate Declaration</em>'.
351 * <!-- begin-user-doc -->
352 * <!-- end-user-doc -->
353 * @return a new object of class '<em>Extern Predicate Declaration</em>'.
354 * @generated
355 */
356 ExternPredicateDeclaration createExternPredicateDeclaration();
357
358 /**
359 * Returns a new object of class '<em>Extern Function Declaration</em>'.
360 * <!-- begin-user-doc -->
361 * <!-- end-user-doc -->
362 * @return a new object of class '<em>Extern Function Declaration</em>'.
363 * @generated
364 */
365 ExternFunctionDeclaration createExternFunctionDeclaration();
366
367 /**
368 * Returns a new object of class '<em>Extern Aggregation Operator Declaration</em>'.
369 * <!-- begin-user-doc -->
370 * <!-- end-user-doc -->
371 * @return a new object of class '<em>Extern Aggregation Operator Declaration</em>'.
372 * @generated
373 */
374 ExternAggregationOperatorDeclaration createExternAggregationOperatorDeclaration();
375
376 /**
377 * Returns a new object of class '<em>Extern Datatype Declaration</em>'.
378 * <!-- begin-user-doc -->
379 * <!-- end-user-doc -->
380 * @return a new object of class '<em>Extern Datatype Declaration</em>'.
381 * @generated
382 */
383 ExternDatatypeDeclaration createExternDatatypeDeclaration();
384
385 /**
386 * Returns a new object of class '<em>Class Declaration</em>'.
387 * <!-- begin-user-doc -->
388 * <!-- end-user-doc -->
389 * @return a new object of class '<em>Class Declaration</em>'.
390 * @generated
391 */
392 ClassDeclaration createClassDeclaration();
393
394 /**
395 * Returns a new object of class '<em>Enum Declaration</em>'.
396 * <!-- begin-user-doc -->
397 * <!-- end-user-doc -->
398 * @return a new object of class '<em>Enum Declaration</em>'.
399 * @generated
400 */
401 EnumDeclaration createEnumDeclaration();
402
403 /**
404 * Returns a new object of class '<em>Enum Literal</em>'.
405 * <!-- begin-user-doc -->
406 * <!-- end-user-doc -->
407 * @return a new object of class '<em>Enum Literal</em>'.
408 * @generated
409 */
410 EnumLiteral createEnumLiteral();
411
412 /**
413 * Returns a new object of class '<em>Field</em>'.
414 * <!-- begin-user-doc -->
415 * <!-- end-user-doc -->
416 * @return a new object of class '<em>Field</em>'.
417 * @generated
418 */
419 Field createField();
420
421 /**
422 * Returns a new object of class '<em>Default Assertion</em>'.
423 * <!-- begin-user-doc -->
424 * <!-- end-user-doc -->
425 * @return a new object of class '<em>Default Assertion</em>'.
426 * @generated
427 */
428 DefaultAssertion createDefaultAssertion();
429
430 /**
431 * Returns a new object of class '<em>Assertion</em>'.
432 * <!-- begin-user-doc -->
433 * <!-- end-user-doc -->
434 * @return a new object of class '<em>Assertion</em>'.
435 * @generated
436 */
437 Assertion createAssertion();
438
439 /**
440 * Returns a new object of class '<em>Unbounded Multiplicity</em>'.
441 * <!-- begin-user-doc -->
442 * <!-- end-user-doc -->
443 * @return a new object of class '<em>Unbounded Multiplicity</em>'.
444 * @generated
445 */
446 UnboundedMultiplicity createUnboundedMultiplicity();
447
448 /**
449 * Returns a new object of class '<em>Exact Multiplicity</em>'.
450 * <!-- begin-user-doc -->
451 * <!-- end-user-doc -->
452 * @return a new object of class '<em>Exact Multiplicity</em>'.
453 * @generated
454 */
455 ExactMultiplicity createExactMultiplicity();
456
457 /**
458 * Returns a new object of class '<em>Bounded Multiplicity</em>'.
459 * <!-- begin-user-doc -->
460 * <!-- end-user-doc -->
461 * @return a new object of class '<em>Bounded Multiplicity</em>'.
462 * @generated
463 */
464 BoundedMultiplicity createBoundedMultiplicity();
465
466 /**
467 * Returns a new object of class '<em>Aggregation Operator</em>'.
468 * <!-- begin-user-doc -->
469 * <!-- end-user-doc -->
470 * @return a new object of class '<em>Aggregation Operator</em>'.
471 * @generated
472 */
473 AggregationOperator createAggregationOperator();
474
475 /**
476 * Returns a new object of class '<em>Problem</em>'.
477 * <!-- begin-user-doc -->
478 * <!-- end-user-doc -->
479 * @return a new object of class '<em>Problem</em>'.
480 * @generated
481 */
482 Problem createProblem();
483
484 /**
485 * Returns a new object of class '<em>Typed Star Argument</em>'.
486 * <!-- begin-user-doc -->
487 * <!-- end-user-doc -->
488 * @return a new object of class '<em>Typed Star Argument</em>'.
489 * @generated
490 */
491 TypedStarArgument createTypedStarArgument();
492
493 /**
494 * Returns a new object of class '<em>Typed Variable Argument</em>'.
495 * <!-- begin-user-doc -->
496 * <!-- end-user-doc -->
497 * @return a new object of class '<em>Typed Variable Argument</em>'.
498 * @generated
499 */
500 TypedVariableArgument createTypedVariableArgument();
501
502 /**
503 * Returns a new object of class '<em>Unnamed Error Predicate Defintion</em>'.
504 * <!-- begin-user-doc -->
505 * <!-- end-user-doc -->
506 * @return a new object of class '<em>Unnamed Error Predicate Defintion</em>'.
507 * @generated
508 */
509 UnnamedErrorPredicateDefintion createUnnamedErrorPredicateDefintion();
510
511 /**
512 * Returns a new object of class '<em>Objective Declaration</em>'.
513 * <!-- begin-user-doc -->
514 * <!-- end-user-doc -->
515 * @return a new object of class '<em>Objective Declaration</em>'.
516 * @generated
517 */
518 ObjectiveDeclaration createObjectiveDeclaration();
519
520 /**
521 * Returns a new object of class '<em>Scope Declaration</em>'.
522 * <!-- begin-user-doc -->
523 * <!-- end-user-doc -->
524 * @return a new object of class '<em>Scope Declaration</em>'.
525 * @generated
526 */
527 ScopeDeclaration createScopeDeclaration();
528
529 /**
530 * Returns a new object of class '<em>Exact Scope</em>'.
531 * <!-- begin-user-doc -->
532 * <!-- end-user-doc -->
533 * @return a new object of class '<em>Exact Scope</em>'.
534 * @generated
535 */
536 ExactScope createExactScope();
537
538 /**
539 * Returns a new object of class '<em>Bounded Scope</em>'.
540 * <!-- begin-user-doc -->
541 * <!-- end-user-doc -->
542 * @return a new object of class '<em>Bounded Scope</em>'.
543 * @generated
544 */
545 BoundedScope createBoundedScope();
546
547 /**
548 * Returns a new object of class '<em>Lower Bounded Scope</em>'.
549 * <!-- begin-user-doc -->
550 * <!-- end-user-doc -->
551 * @return a new object of class '<em>Lower Bounded Scope</em>'.
552 * @generated
553 */
554 LowerBoundedScope createLowerBoundedScope();
555
556 /**
557 * Returns a new object of class '<em>Namespace Import</em>'.
558 * <!-- begin-user-doc -->
559 * <!-- end-user-doc -->
560 * @return a new object of class '<em>Namespace Import</em>'.
561 * @generated
562 */
563 NamespaceImport createNamespaceImport();
564
565 /**
566 * Returns a new object of class '<em>Import</em>'.
567 * <!-- begin-user-doc -->
568 * <!-- end-user-doc -->
569 * @return a new object of class '<em>Import</em>'.
570 * @generated
571 */
572 Import createImport();
573
574 /**
575 * Returns a new object of class '<em>Uri Import</em>'.
576 * <!-- begin-user-doc -->
577 * <!-- end-user-doc -->
578 * @return a new object of class '<em>Uri Import</em>'.
579 * @generated
580 */
581 UriImport createUriImport();
582
583 /**
584 * Returns the package supported by this factory.
585 * <!-- begin-user-doc -->
586 * <!-- end-user-doc -->
587 * @return the package supported by this factory.
588 * @generated
589 */
590 SolverLanguagePackage getSolverLanguagePackage();
591
592} //SolverLanguageFactory
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java
new file mode 100644
index 00000000..ff1696db
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java
@@ -0,0 +1,7554 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EAttribute;
6import org.eclipse.emf.ecore.EClass;
7import org.eclipse.emf.ecore.EEnum;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.EReference;
10
11/**
12 * <!-- begin-user-doc -->
13 * The <b>Package</b> for the model.
14 * It contains accessors for the meta objects to represent
15 * <ul>
16 * <li>each class,</li>
17 * <li>each feature of each class,</li>
18 * <li>each operation of each class,</li>
19 * <li>each enum,</li>
20 * <li>and each data type</li>
21 * </ul>
22 * <!-- end-user-doc -->
23 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory
24 * @model kind="package"
25 * @generated
26 */
27public interface SolverLanguagePackage extends EPackage {
28 /**
29 * The package name.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 String eNAME = "solverLanguage";
35
36 /**
37 * The package namespace URI.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @generated
41 */
42 String eNS_URI = "http://www.eclipse.org/viatra/solver/language/SolverLanguage";
43
44 /**
45 * The package namespace name.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 String eNS_PREFIX = "solverLanguage";
51
52 /**
53 * The singleton instance of the package.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 SolverLanguagePackage eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl
59 .init();
60
61 /**
62 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl <em>Path Component</em>}' class.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl
66 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPathComponent()
67 * @generated
68 */
69 int PATH_COMPONENT = 0;
70
71 /**
72 * The feature id for the '<em><b>Symbol</b></em>' reference.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 * @ordered
77 */
78 int PATH_COMPONENT__SYMBOL = 0;
79
80 /**
81 * The feature id for the '<em><b>Inverse</b></em>' attribute.
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 * @ordered
86 */
87 int PATH_COMPONENT__INVERSE = 1;
88
89 /**
90 * The feature id for the '<em><b>Transitive Closure</b></em>' attribute.
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 * @ordered
95 */
96 int PATH_COMPONENT__TRANSITIVE_CLOSURE = 2;
97
98 /**
99 * The feature id for the '<em><b>Reflexive Transitive Closure</b></em>' attribute.
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 * @ordered
104 */
105 int PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE = 3;
106
107 /**
108 * The number of structural features of the '<em>Path Component</em>' class.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated
112 * @ordered
113 */
114 int PATH_COMPONENT_FEATURE_COUNT = 4;
115
116 /**
117 * The number of operations of the '<em>Path Component</em>' class.
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 * @ordered
122 */
123 int PATH_COMPONENT_OPERATION_COUNT = 0;
124
125 /**
126 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl <em>Symbol</em>}' class.
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl
130 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSymbol()
131 * @generated
132 */
133 int SYMBOL = 1;
134
135 /**
136 * The feature id for the '<em><b>Name</b></em>' attribute.
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 * @ordered
141 */
142 int SYMBOL__NAME = 0;
143
144 /**
145 * The number of structural features of the '<em>Symbol</em>' class.
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 * @ordered
150 */
151 int SYMBOL_FEATURE_COUNT = 1;
152
153 /**
154 * The number of operations of the '<em>Symbol</em>' class.
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @generated
158 * @ordered
159 */
160 int SYMBOL_OPERATION_COUNT = 0;
161
162 /**
163 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl <em>Statement</em>}' class.
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl
167 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement()
168 * @generated
169 */
170 int STATEMENT = 44;
171
172 /**
173 * The number of structural features of the '<em>Statement</em>' class.
174 * <!-- begin-user-doc -->
175 * <!-- end-user-doc -->
176 * @generated
177 * @ordered
178 */
179 int STATEMENT_FEATURE_COUNT = 0;
180
181 /**
182 * The number of operations of the '<em>Statement</em>' class.
183 * <!-- begin-user-doc -->
184 * <!-- end-user-doc -->
185 * @generated
186 * @ordered
187 */
188 int STATEMENT_OPERATION_COUNT = 0;
189
190 /**
191 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl <em>Expression</em>}' class.
192 * <!-- begin-user-doc -->
193 * <!-- end-user-doc -->
194 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl
195 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpression()
196 * @generated
197 */
198 int EXPRESSION = 4;
199
200 /**
201 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 * @ordered
206 */
207 int EXPRESSION__EXISTS_VARIABLES = STATEMENT_FEATURE_COUNT + 0;
208
209 /**
210 * The number of structural features of the '<em>Expression</em>' class.
211 * <!-- begin-user-doc -->
212 * <!-- end-user-doc -->
213 * @generated
214 * @ordered
215 */
216 int EXPRESSION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1;
217
218 /**
219 * The number of operations of the '<em>Expression</em>' class.
220 * <!-- begin-user-doc -->
221 * <!-- end-user-doc -->
222 * @generated
223 * @ordered
224 */
225 int EXPRESSION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
226
227 /**
228 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl <em>Call</em>}' class.
229 * <!-- begin-user-doc -->
230 * <!-- end-user-doc -->
231 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl
232 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCall()
233 * @generated
234 */
235 int CALL = 2;
236
237 /**
238 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
239 * <!-- begin-user-doc -->
240 * <!-- end-user-doc -->
241 * @generated
242 * @ordered
243 */
244 int CALL__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
245
246 /**
247 * The feature id for the '<em><b>Functor</b></em>' containment reference.
248 * <!-- begin-user-doc -->
249 * <!-- end-user-doc -->
250 * @generated
251 * @ordered
252 */
253 int CALL__FUNCTOR = EXPRESSION_FEATURE_COUNT + 0;
254
255 /**
256 * The feature id for the '<em><b>Argument List</b></em>' containment reference.
257 * <!-- begin-user-doc -->
258 * <!-- end-user-doc -->
259 * @generated
260 * @ordered
261 */
262 int CALL__ARGUMENT_LIST = EXPRESSION_FEATURE_COUNT + 1;
263
264 /**
265 * The number of structural features of the '<em>Call</em>' class.
266 * <!-- begin-user-doc -->
267 * <!-- end-user-doc -->
268 * @generated
269 * @ordered
270 */
271 int CALL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
272
273 /**
274 * The number of operations of the '<em>Call</em>' class.
275 * <!-- begin-user-doc -->
276 * <!-- end-user-doc -->
277 * @generated
278 * @ordered
279 */
280 int CALL_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
281
282 /**
283 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl <em>Reference</em>}' class.
284 * <!-- begin-user-doc -->
285 * <!-- end-user-doc -->
286 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl
287 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReference()
288 * @generated
289 */
290 int REFERENCE = 3;
291
292 /**
293 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
294 * <!-- begin-user-doc -->
295 * <!-- end-user-doc -->
296 * @generated
297 * @ordered
298 */
299 int REFERENCE__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
300
301 /**
302 * The feature id for the '<em><b>Components</b></em>' containment reference list.
303 * <!-- begin-user-doc -->
304 * <!-- end-user-doc -->
305 * @generated
306 * @ordered
307 */
308 int REFERENCE__COMPONENTS = EXPRESSION_FEATURE_COUNT + 0;
309
310 /**
311 * The number of structural features of the '<em>Reference</em>' class.
312 * <!-- begin-user-doc -->
313 * <!-- end-user-doc -->
314 * @generated
315 * @ordered
316 */
317 int REFERENCE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
318
319 /**
320 * The number of operations of the '<em>Reference</em>' class.
321 * <!-- begin-user-doc -->
322 * <!-- end-user-doc -->
323 * @generated
324 * @ordered
325 */
326 int REFERENCE_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
327
328 /**
329 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl <em>Argument</em>}' class.
330 * <!-- begin-user-doc -->
331 * <!-- end-user-doc -->
332 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl
333 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgument()
334 * @generated
335 */
336 int ARGUMENT = 5;
337
338 /**
339 * The number of structural features of the '<em>Argument</em>' class.
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 * @ordered
344 */
345 int ARGUMENT_FEATURE_COUNT = 0;
346
347 /**
348 * The number of operations of the '<em>Argument</em>' class.
349 * <!-- begin-user-doc -->
350 * <!-- end-user-doc -->
351 * @generated
352 * @ordered
353 */
354 int ARGUMENT_OPERATION_COUNT = 0;
355
356 /**
357 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl <em>Argument List</em>}' class.
358 * <!-- begin-user-doc -->
359 * <!-- end-user-doc -->
360 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl
361 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgumentList()
362 * @generated
363 */
364 int ARGUMENT_LIST = 6;
365
366 /**
367 * The feature id for the '<em><b>Arguments</b></em>' containment reference list.
368 * <!-- begin-user-doc -->
369 * <!-- end-user-doc -->
370 * @generated
371 * @ordered
372 */
373 int ARGUMENT_LIST__ARGUMENTS = 0;
374
375 /**
376 * The number of structural features of the '<em>Argument List</em>' class.
377 * <!-- begin-user-doc -->
378 * <!-- end-user-doc -->
379 * @generated
380 * @ordered
381 */
382 int ARGUMENT_LIST_FEATURE_COUNT = 1;
383
384 /**
385 * The number of operations of the '<em>Argument List</em>' class.
386 * <!-- begin-user-doc -->
387 * <!-- end-user-doc -->
388 * @generated
389 * @ordered
390 */
391 int ARGUMENT_LIST_OPERATION_COUNT = 0;
392
393 /**
394 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl <em>Expression Argument</em>}' class.
395 * <!-- begin-user-doc -->
396 * <!-- end-user-doc -->
397 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl
398 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpressionArgument()
399 * @generated
400 */
401 int EXPRESSION_ARGUMENT = 7;
402
403 /**
404 * The feature id for the '<em><b>Expression</b></em>' containment reference.
405 * <!-- begin-user-doc -->
406 * <!-- end-user-doc -->
407 * @generated
408 * @ordered
409 */
410 int EXPRESSION_ARGUMENT__EXPRESSION = ARGUMENT_FEATURE_COUNT + 0;
411
412 /**
413 * The number of structural features of the '<em>Expression Argument</em>' class.
414 * <!-- begin-user-doc -->
415 * <!-- end-user-doc -->
416 * @generated
417 * @ordered
418 */
419 int EXPRESSION_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1;
420
421 /**
422 * The number of operations of the '<em>Expression Argument</em>' class.
423 * <!-- begin-user-doc -->
424 * <!-- end-user-doc -->
425 * @generated
426 * @ordered
427 */
428 int EXPRESSION_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0;
429
430 /**
431 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl <em>Star Argument</em>}' class.
432 * <!-- begin-user-doc -->
433 * <!-- end-user-doc -->
434 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl
435 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStarArgument()
436 * @generated
437 */
438 int STAR_ARGUMENT = 8;
439
440 /**
441 * The number of structural features of the '<em>Star Argument</em>' class.
442 * <!-- begin-user-doc -->
443 * <!-- end-user-doc -->
444 * @generated
445 * @ordered
446 */
447 int STAR_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 0;
448
449 /**
450 * The number of operations of the '<em>Star Argument</em>' class.
451 * <!-- begin-user-doc -->
452 * <!-- end-user-doc -->
453 * @generated
454 * @ordered
455 */
456 int STAR_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0;
457
458 /**
459 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl <em>Typed Argument</em>}' class.
460 * <!-- begin-user-doc -->
461 * <!-- end-user-doc -->
462 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl
463 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedArgument()
464 * @generated
465 */
466 int TYPED_ARGUMENT = 9;
467
468 /**
469 * The feature id for the '<em><b>Type Reference</b></em>' containment reference.
470 * <!-- begin-user-doc -->
471 * <!-- end-user-doc -->
472 * @generated
473 * @ordered
474 */
475 int TYPED_ARGUMENT__TYPE_REFERENCE = ARGUMENT_FEATURE_COUNT + 0;
476
477 /**
478 * The number of structural features of the '<em>Typed Argument</em>' class.
479 * <!-- begin-user-doc -->
480 * <!-- end-user-doc -->
481 * @generated
482 * @ordered
483 */
484 int TYPED_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1;
485
486 /**
487 * The number of operations of the '<em>Typed Argument</em>' class.
488 * <!-- begin-user-doc -->
489 * <!-- end-user-doc -->
490 * @generated
491 * @ordered
492 */
493 int TYPED_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0;
494
495 /**
496 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl <em>Multiary Expession</em>}' class.
497 * <!-- begin-user-doc -->
498 * <!-- end-user-doc -->
499 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl
500 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiaryExpession()
501 * @generated
502 */
503 int MULTIARY_EXPESSION = 10;
504
505 /**
506 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
507 * <!-- begin-user-doc -->
508 * <!-- end-user-doc -->
509 * @generated
510 * @ordered
511 */
512 int MULTIARY_EXPESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
513
514 /**
515 * The feature id for the '<em><b>Children</b></em>' containment reference list.
516 * <!-- begin-user-doc -->
517 * <!-- end-user-doc -->
518 * @generated
519 * @ordered
520 */
521 int MULTIARY_EXPESSION__CHILDREN = EXPRESSION_FEATURE_COUNT + 0;
522
523 /**
524 * The number of structural features of the '<em>Multiary Expession</em>' class.
525 * <!-- begin-user-doc -->
526 * <!-- end-user-doc -->
527 * @generated
528 * @ordered
529 */
530 int MULTIARY_EXPESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
531
532 /**
533 * The number of operations of the '<em>Multiary Expession</em>' class.
534 * <!-- begin-user-doc -->
535 * <!-- end-user-doc -->
536 * @generated
537 * @ordered
538 */
539 int MULTIARY_EXPESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
540
541 /**
542 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl <em>Variable</em>}' class.
543 * <!-- begin-user-doc -->
544 * <!-- end-user-doc -->
545 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl
546 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable()
547 * @generated
548 */
549 int VARIABLE = 11;
550
551 /**
552 * The feature id for the '<em><b>Name</b></em>' attribute.
553 * <!-- begin-user-doc -->
554 * <!-- end-user-doc -->
555 * @generated
556 * @ordered
557 */
558 int VARIABLE__NAME = SYMBOL__NAME;
559
560 /**
561 * The feature id for the '<em><b>Type Reference</b></em>' containment reference.
562 * <!-- begin-user-doc -->
563 * <!-- end-user-doc -->
564 * @generated
565 * @ordered
566 */
567 int VARIABLE__TYPE_REFERENCE = SYMBOL_FEATURE_COUNT + 0;
568
569 /**
570 * The number of structural features of the '<em>Variable</em>' class.
571 * <!-- begin-user-doc -->
572 * <!-- end-user-doc -->
573 * @generated
574 * @ordered
575 */
576 int VARIABLE_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1;
577
578 /**
579 * The number of operations of the '<em>Variable</em>' class.
580 * <!-- begin-user-doc -->
581 * <!-- end-user-doc -->
582 * @generated
583 * @ordered
584 */
585 int VARIABLE_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0;
586
587 /**
588 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl <em>Unary Expression</em>}' class.
589 * <!-- begin-user-doc -->
590 * <!-- end-user-doc -->
591 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl
592 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryExpression()
593 * @generated
594 */
595 int UNARY_EXPRESSION = 12;
596
597 /**
598 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
599 * <!-- begin-user-doc -->
600 * <!-- end-user-doc -->
601 * @generated
602 * @ordered
603 */
604 int UNARY_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
605
606 /**
607 * The feature id for the '<em><b>Body</b></em>' containment reference.
608 * <!-- begin-user-doc -->
609 * <!-- end-user-doc -->
610 * @generated
611 * @ordered
612 */
613 int UNARY_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 0;
614
615 /**
616 * The feature id for the '<em><b>Op</b></em>' attribute.
617 * <!-- begin-user-doc -->
618 * <!-- end-user-doc -->
619 * @generated
620 * @ordered
621 */
622 int UNARY_EXPRESSION__OP = EXPRESSION_FEATURE_COUNT + 1;
623
624 /**
625 * The number of structural features of the '<em>Unary Expression</em>' class.
626 * <!-- begin-user-doc -->
627 * <!-- end-user-doc -->
628 * @generated
629 * @ordered
630 */
631 int UNARY_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
632
633 /**
634 * The number of operations of the '<em>Unary Expression</em>' class.
635 * <!-- begin-user-doc -->
636 * <!-- end-user-doc -->
637 * @generated
638 * @ordered
639 */
640 int UNARY_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
641
642 /**
643 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl <em>Binary Expression</em>}' class.
644 * <!-- begin-user-doc -->
645 * <!-- end-user-doc -->
646 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl
647 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryExpression()
648 * @generated
649 */
650 int BINARY_EXPRESSION = 13;
651
652 /**
653 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
654 * <!-- begin-user-doc -->
655 * <!-- end-user-doc -->
656 * @generated
657 * @ordered
658 */
659 int BINARY_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
660
661 /**
662 * The feature id for the '<em><b>Op</b></em>' attribute.
663 * <!-- begin-user-doc -->
664 * <!-- end-user-doc -->
665 * @generated
666 * @ordered
667 */
668 int BINARY_EXPRESSION__OP = EXPRESSION_FEATURE_COUNT + 0;
669
670 /**
671 * The feature id for the '<em><b>Left</b></em>' containment reference.
672 * <!-- begin-user-doc -->
673 * <!-- end-user-doc -->
674 * @generated
675 * @ordered
676 */
677 int BINARY_EXPRESSION__LEFT = EXPRESSION_FEATURE_COUNT + 1;
678
679 /**
680 * The feature id for the '<em><b>Right</b></em>' containment reference.
681 * <!-- begin-user-doc -->
682 * <!-- end-user-doc -->
683 * @generated
684 * @ordered
685 */
686 int BINARY_EXPRESSION__RIGHT = EXPRESSION_FEATURE_COUNT + 2;
687
688 /**
689 * The number of structural features of the '<em>Binary Expression</em>' class.
690 * <!-- begin-user-doc -->
691 * <!-- end-user-doc -->
692 * @generated
693 * @ordered
694 */
695 int BINARY_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3;
696
697 /**
698 * The number of operations of the '<em>Binary Expression</em>' class.
699 * <!-- begin-user-doc -->
700 * <!-- end-user-doc -->
701 * @generated
702 * @ordered
703 */
704 int BINARY_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
705
706 /**
707 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl <em>Disjunction</em>}' class.
708 * <!-- begin-user-doc -->
709 * <!-- end-user-doc -->
710 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl
711 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDisjunction()
712 * @generated
713 */
714 int DISJUNCTION = 14;
715
716 /**
717 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
718 * <!-- begin-user-doc -->
719 * <!-- end-user-doc -->
720 * @generated
721 * @ordered
722 */
723 int DISJUNCTION__EXISTS_VARIABLES = MULTIARY_EXPESSION__EXISTS_VARIABLES;
724
725 /**
726 * The feature id for the '<em><b>Children</b></em>' containment reference list.
727 * <!-- begin-user-doc -->
728 * <!-- end-user-doc -->
729 * @generated
730 * @ordered
731 */
732 int DISJUNCTION__CHILDREN = MULTIARY_EXPESSION__CHILDREN;
733
734 /**
735 * The number of structural features of the '<em>Disjunction</em>' class.
736 * <!-- begin-user-doc -->
737 * <!-- end-user-doc -->
738 * @generated
739 * @ordered
740 */
741 int DISJUNCTION_FEATURE_COUNT = MULTIARY_EXPESSION_FEATURE_COUNT + 0;
742
743 /**
744 * The number of operations of the '<em>Disjunction</em>' class.
745 * <!-- begin-user-doc -->
746 * <!-- end-user-doc -->
747 * @generated
748 * @ordered
749 */
750 int DISJUNCTION_OPERATION_COUNT = MULTIARY_EXPESSION_OPERATION_COUNT + 0;
751
752 /**
753 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl <em>Conjunction</em>}' class.
754 * <!-- begin-user-doc -->
755 * <!-- end-user-doc -->
756 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl
757 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConjunction()
758 * @generated
759 */
760 int CONJUNCTION = 15;
761
762 /**
763 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
764 * <!-- begin-user-doc -->
765 * <!-- end-user-doc -->
766 * @generated
767 * @ordered
768 */
769 int CONJUNCTION__EXISTS_VARIABLES = MULTIARY_EXPESSION__EXISTS_VARIABLES;
770
771 /**
772 * The feature id for the '<em><b>Children</b></em>' containment reference list.
773 * <!-- begin-user-doc -->
774 * <!-- end-user-doc -->
775 * @generated
776 * @ordered
777 */
778 int CONJUNCTION__CHILDREN = MULTIARY_EXPESSION__CHILDREN;
779
780 /**
781 * The number of structural features of the '<em>Conjunction</em>' class.
782 * <!-- begin-user-doc -->
783 * <!-- end-user-doc -->
784 * @generated
785 * @ordered
786 */
787 int CONJUNCTION_FEATURE_COUNT = MULTIARY_EXPESSION_FEATURE_COUNT + 0;
788
789 /**
790 * The number of operations of the '<em>Conjunction</em>' class.
791 * <!-- begin-user-doc -->
792 * <!-- end-user-doc -->
793 * @generated
794 * @ordered
795 */
796 int CONJUNCTION_OPERATION_COUNT = MULTIARY_EXPESSION_OPERATION_COUNT + 0;
797
798 /**
799 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl <em>Conditional Expression</em>}' class.
800 * <!-- begin-user-doc -->
801 * <!-- end-user-doc -->
802 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl
803 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConditionalExpression()
804 * @generated
805 */
806 int CONDITIONAL_EXPRESSION = 16;
807
808 /**
809 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
810 * <!-- begin-user-doc -->
811 * <!-- end-user-doc -->
812 * @generated
813 * @ordered
814 */
815 int CONDITIONAL_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
816
817 /**
818 * The feature id for the '<em><b>Condition</b></em>' containment reference.
819 * <!-- begin-user-doc -->
820 * <!-- end-user-doc -->
821 * @generated
822 * @ordered
823 */
824 int CONDITIONAL_EXPRESSION__CONDITION = EXPRESSION_FEATURE_COUNT + 0;
825
826 /**
827 * The feature id for the '<em><b>Then</b></em>' containment reference.
828 * <!-- begin-user-doc -->
829 * <!-- end-user-doc -->
830 * @generated
831 * @ordered
832 */
833 int CONDITIONAL_EXPRESSION__THEN = EXPRESSION_FEATURE_COUNT + 1;
834
835 /**
836 * The feature id for the '<em><b>Else</b></em>' containment reference.
837 * <!-- begin-user-doc -->
838 * <!-- end-user-doc -->
839 * @generated
840 * @ordered
841 */
842 int CONDITIONAL_EXPRESSION__ELSE = EXPRESSION_FEATURE_COUNT + 2;
843
844 /**
845 * The number of structural features of the '<em>Conditional Expression</em>' class.
846 * <!-- begin-user-doc -->
847 * <!-- end-user-doc -->
848 * @generated
849 * @ordered
850 */
851 int CONDITIONAL_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3;
852
853 /**
854 * The number of operations of the '<em>Conditional Expression</em>' class.
855 * <!-- begin-user-doc -->
856 * <!-- end-user-doc -->
857 * @generated
858 * @ordered
859 */
860 int CONDITIONAL_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
861
862 /**
863 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl <em>Switch</em>}' class.
864 * <!-- begin-user-doc -->
865 * <!-- end-user-doc -->
866 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl
867 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSwitch()
868 * @generated
869 */
870 int SWITCH = 17;
871
872 /**
873 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
874 * <!-- begin-user-doc -->
875 * <!-- end-user-doc -->
876 * @generated
877 * @ordered
878 */
879 int SWITCH__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
880
881 /**
882 * The feature id for the '<em><b>Cases</b></em>' containment reference list.
883 * <!-- begin-user-doc -->
884 * <!-- end-user-doc -->
885 * @generated
886 * @ordered
887 */
888 int SWITCH__CASES = EXPRESSION_FEATURE_COUNT + 0;
889
890 /**
891 * The number of structural features of the '<em>Switch</em>' class.
892 * <!-- begin-user-doc -->
893 * <!-- end-user-doc -->
894 * @generated
895 * @ordered
896 */
897 int SWITCH_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1;
898
899 /**
900 * The number of operations of the '<em>Switch</em>' class.
901 * <!-- begin-user-doc -->
902 * <!-- end-user-doc -->
903 * @generated
904 * @ordered
905 */
906 int SWITCH_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
907
908 /**
909 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl <em>Case</em>}' class.
910 * <!-- begin-user-doc -->
911 * <!-- end-user-doc -->
912 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl
913 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCase()
914 * @generated
915 */
916 int CASE = 18;
917
918 /**
919 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
920 * <!-- begin-user-doc -->
921 * <!-- end-user-doc -->
922 * @generated
923 * @ordered
924 */
925 int CASE__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
926
927 /**
928 * The feature id for the '<em><b>Condition</b></em>' containment reference.
929 * <!-- begin-user-doc -->
930 * <!-- end-user-doc -->
931 * @generated
932 * @ordered
933 */
934 int CASE__CONDITION = EXPRESSION_FEATURE_COUNT + 0;
935
936 /**
937 * The feature id for the '<em><b>Body</b></em>' containment reference.
938 * <!-- begin-user-doc -->
939 * <!-- end-user-doc -->
940 * @generated
941 * @ordered
942 */
943 int CASE__BODY = EXPRESSION_FEATURE_COUNT + 1;
944
945 /**
946 * The number of structural features of the '<em>Case</em>' class.
947 * <!-- begin-user-doc -->
948 * <!-- end-user-doc -->
949 * @generated
950 * @ordered
951 */
952 int CASE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
953
954 /**
955 * The number of operations of the '<em>Case</em>' class.
956 * <!-- begin-user-doc -->
957 * <!-- end-user-doc -->
958 * @generated
959 * @ordered
960 */
961 int CASE_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
962
963 /**
964 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl <em>Let Expression</em>}' class.
965 * <!-- begin-user-doc -->
966 * <!-- end-user-doc -->
967 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl
968 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetExpression()
969 * @generated
970 */
971 int LET_EXPRESSION = 19;
972
973 /**
974 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
975 * <!-- begin-user-doc -->
976 * <!-- end-user-doc -->
977 * @generated
978 * @ordered
979 */
980 int LET_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
981
982 /**
983 * The feature id for the '<em><b>Bindings</b></em>' containment reference list.
984 * <!-- begin-user-doc -->
985 * <!-- end-user-doc -->
986 * @generated
987 * @ordered
988 */
989 int LET_EXPRESSION__BINDINGS = EXPRESSION_FEATURE_COUNT + 0;
990
991 /**
992 * The feature id for the '<em><b>Body</b></em>' containment reference.
993 * <!-- begin-user-doc -->
994 * <!-- end-user-doc -->
995 * @generated
996 * @ordered
997 */
998 int LET_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 1;
999
1000 /**
1001 * The number of structural features of the '<em>Let Expression</em>' class.
1002 * <!-- begin-user-doc -->
1003 * <!-- end-user-doc -->
1004 * @generated
1005 * @ordered
1006 */
1007 int LET_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
1008
1009 /**
1010 * The number of operations of the '<em>Let Expression</em>' class.
1011 * <!-- begin-user-doc -->
1012 * <!-- end-user-doc -->
1013 * @generated
1014 * @ordered
1015 */
1016 int LET_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
1017
1018 /**
1019 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl <em>Let Binding</em>}' class.
1020 * <!-- begin-user-doc -->
1021 * <!-- end-user-doc -->
1022 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl
1023 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetBinding()
1024 * @generated
1025 */
1026 int LET_BINDING = 20;
1027
1028 /**
1029 * The feature id for the '<em><b>Value</b></em>' containment reference.
1030 * <!-- begin-user-doc -->
1031 * <!-- end-user-doc -->
1032 * @generated
1033 * @ordered
1034 */
1035 int LET_BINDING__VALUE = 0;
1036
1037 /**
1038 * The feature id for the '<em><b>Variable</b></em>' containment reference.
1039 * <!-- begin-user-doc -->
1040 * <!-- end-user-doc -->
1041 * @generated
1042 * @ordered
1043 */
1044 int LET_BINDING__VARIABLE = 1;
1045
1046 /**
1047 * The feature id for the '<em><b>Name</b></em>' attribute.
1048 * <!-- begin-user-doc -->
1049 * <!-- end-user-doc -->
1050 * @generated
1051 * @ordered
1052 */
1053 int LET_BINDING__NAME = 2;
1054
1055 /**
1056 * The feature id for the '<em><b>Type</b></em>' reference.
1057 * <!-- begin-user-doc -->
1058 * <!-- end-user-doc -->
1059 * @generated
1060 * @ordered
1061 */
1062 int LET_BINDING__TYPE = 3;
1063
1064 /**
1065 * The number of structural features of the '<em>Let Binding</em>' class.
1066 * <!-- begin-user-doc -->
1067 * <!-- end-user-doc -->
1068 * @generated
1069 * @ordered
1070 */
1071 int LET_BINDING_FEATURE_COUNT = 4;
1072
1073 /**
1074 * The number of operations of the '<em>Let Binding</em>' class.
1075 * <!-- begin-user-doc -->
1076 * <!-- end-user-doc -->
1077 * @generated
1078 * @ordered
1079 */
1080 int LET_BINDING_OPERATION_COUNT = 0;
1081
1082 /**
1083 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl <em>Literal</em>}' class.
1084 * <!-- begin-user-doc -->
1085 * <!-- end-user-doc -->
1086 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl
1087 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral()
1088 * @generated
1089 */
1090 int LITERAL = 21;
1091
1092 /**
1093 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1094 * <!-- begin-user-doc -->
1095 * <!-- end-user-doc -->
1096 * @generated
1097 * @ordered
1098 */
1099 int LITERAL__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
1100
1101 /**
1102 * The number of structural features of the '<em>Literal</em>' class.
1103 * <!-- begin-user-doc -->
1104 * <!-- end-user-doc -->
1105 * @generated
1106 * @ordered
1107 */
1108 int LITERAL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0;
1109
1110 /**
1111 * The number of operations of the '<em>Literal</em>' class.
1112 * <!-- begin-user-doc -->
1113 * <!-- end-user-doc -->
1114 * @generated
1115 * @ordered
1116 */
1117 int LITERAL_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
1118
1119 /**
1120 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl <em>Int Literal</em>}' class.
1121 * <!-- begin-user-doc -->
1122 * <!-- end-user-doc -->
1123 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl
1124 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntLiteral()
1125 * @generated
1126 */
1127 int INT_LITERAL = 22;
1128
1129 /**
1130 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1131 * <!-- begin-user-doc -->
1132 * <!-- end-user-doc -->
1133 * @generated
1134 * @ordered
1135 */
1136 int INT_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES;
1137
1138 /**
1139 * The feature id for the '<em><b>Value</b></em>' attribute.
1140 * <!-- begin-user-doc -->
1141 * <!-- end-user-doc -->
1142 * @generated
1143 * @ordered
1144 */
1145 int INT_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0;
1146
1147 /**
1148 * The number of structural features of the '<em>Int Literal</em>' class.
1149 * <!-- begin-user-doc -->
1150 * <!-- end-user-doc -->
1151 * @generated
1152 * @ordered
1153 */
1154 int INT_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1;
1155
1156 /**
1157 * The number of operations of the '<em>Int Literal</em>' class.
1158 * <!-- begin-user-doc -->
1159 * <!-- end-user-doc -->
1160 * @generated
1161 * @ordered
1162 */
1163 int INT_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
1164
1165 /**
1166 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl <em>Real Literal</em>}' class.
1167 * <!-- begin-user-doc -->
1168 * <!-- end-user-doc -->
1169 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl
1170 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealLiteral()
1171 * @generated
1172 */
1173 int REAL_LITERAL = 23;
1174
1175 /**
1176 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1177 * <!-- begin-user-doc -->
1178 * <!-- end-user-doc -->
1179 * @generated
1180 * @ordered
1181 */
1182 int REAL_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES;
1183
1184 /**
1185 * The feature id for the '<em><b>Value</b></em>' attribute.
1186 * <!-- begin-user-doc -->
1187 * <!-- end-user-doc -->
1188 * @generated
1189 * @ordered
1190 */
1191 int REAL_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0;
1192
1193 /**
1194 * The number of structural features of the '<em>Real Literal</em>' class.
1195 * <!-- begin-user-doc -->
1196 * <!-- end-user-doc -->
1197 * @generated
1198 * @ordered
1199 */
1200 int REAL_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1;
1201
1202 /**
1203 * The number of operations of the '<em>Real Literal</em>' class.
1204 * <!-- begin-user-doc -->
1205 * <!-- end-user-doc -->
1206 * @generated
1207 * @ordered
1208 */
1209 int REAL_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
1210
1211 /**
1212 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl <em>String Literal</em>}' class.
1213 * <!-- begin-user-doc -->
1214 * <!-- end-user-doc -->
1215 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl
1216 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringLiteral()
1217 * @generated
1218 */
1219 int STRING_LITERAL = 24;
1220
1221 /**
1222 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1223 * <!-- begin-user-doc -->
1224 * <!-- end-user-doc -->
1225 * @generated
1226 * @ordered
1227 */
1228 int STRING_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES;
1229
1230 /**
1231 * The feature id for the '<em><b>Value</b></em>' attribute.
1232 * <!-- begin-user-doc -->
1233 * <!-- end-user-doc -->
1234 * @generated
1235 * @ordered
1236 */
1237 int STRING_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0;
1238
1239 /**
1240 * The number of structural features of the '<em>String Literal</em>' class.
1241 * <!-- begin-user-doc -->
1242 * <!-- end-user-doc -->
1243 * @generated
1244 * @ordered
1245 */
1246 int STRING_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1;
1247
1248 /**
1249 * The number of operations of the '<em>String Literal</em>' class.
1250 * <!-- begin-user-doc -->
1251 * <!-- end-user-doc -->
1252 * @generated
1253 * @ordered
1254 */
1255 int STRING_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
1256
1257 /**
1258 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl <em>Logic Literal</em>}' class.
1259 * <!-- begin-user-doc -->
1260 * <!-- end-user-doc -->
1261 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl
1262 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicLiteral()
1263 * @generated
1264 */
1265 int LOGIC_LITERAL = 25;
1266
1267 /**
1268 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1269 * <!-- begin-user-doc -->
1270 * <!-- end-user-doc -->
1271 * @generated
1272 * @ordered
1273 */
1274 int LOGIC_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES;
1275
1276 /**
1277 * The feature id for the '<em><b>Value</b></em>' attribute.
1278 * <!-- begin-user-doc -->
1279 * <!-- end-user-doc -->
1280 * @generated
1281 * @ordered
1282 */
1283 int LOGIC_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0;
1284
1285 /**
1286 * The number of structural features of the '<em>Logic Literal</em>' class.
1287 * <!-- begin-user-doc -->
1288 * <!-- end-user-doc -->
1289 * @generated
1290 * @ordered
1291 */
1292 int LOGIC_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1;
1293
1294 /**
1295 * The number of operations of the '<em>Logic Literal</em>' class.
1296 * <!-- begin-user-doc -->
1297 * <!-- end-user-doc -->
1298 * @generated
1299 * @ordered
1300 */
1301 int LOGIC_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
1302
1303 /**
1304 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl <em>Empty Literal</em>}' class.
1305 * <!-- begin-user-doc -->
1306 * <!-- end-user-doc -->
1307 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl
1308 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEmptyLiteral()
1309 * @generated
1310 */
1311 int EMPTY_LITERAL = 26;
1312
1313 /**
1314 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1315 * <!-- begin-user-doc -->
1316 * <!-- end-user-doc -->
1317 * @generated
1318 * @ordered
1319 */
1320 int EMPTY_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES;
1321
1322 /**
1323 * The number of structural features of the '<em>Empty Literal</em>' class.
1324 * <!-- begin-user-doc -->
1325 * <!-- end-user-doc -->
1326 * @generated
1327 * @ordered
1328 */
1329 int EMPTY_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 0;
1330
1331 /**
1332 * The number of operations of the '<em>Empty Literal</em>' class.
1333 * <!-- begin-user-doc -->
1334 * <!-- end-user-doc -->
1335 * @generated
1336 * @ordered
1337 */
1338 int EMPTY_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
1339
1340 /**
1341 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl <em>Cast Expression</em>}' class.
1342 * <!-- begin-user-doc -->
1343 * <!-- end-user-doc -->
1344 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl
1345 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCastExpression()
1346 * @generated
1347 */
1348 int CAST_EXPRESSION = 27;
1349
1350 /**
1351 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1352 * <!-- begin-user-doc -->
1353 * <!-- end-user-doc -->
1354 * @generated
1355 * @ordered
1356 */
1357 int CAST_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
1358
1359 /**
1360 * The feature id for the '<em><b>Body</b></em>' containment reference.
1361 * <!-- begin-user-doc -->
1362 * <!-- end-user-doc -->
1363 * @generated
1364 * @ordered
1365 */
1366 int CAST_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 0;
1367
1368 /**
1369 * The feature id for the '<em><b>Target Type</b></em>' reference.
1370 * <!-- begin-user-doc -->
1371 * <!-- end-user-doc -->
1372 * @generated
1373 * @ordered
1374 */
1375 int CAST_EXPRESSION__TARGET_TYPE = EXPRESSION_FEATURE_COUNT + 1;
1376
1377 /**
1378 * The number of structural features of the '<em>Cast Expression</em>' class.
1379 * <!-- begin-user-doc -->
1380 * <!-- end-user-doc -->
1381 * @generated
1382 * @ordered
1383 */
1384 int CAST_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
1385
1386 /**
1387 * The number of operations of the '<em>Cast Expression</em>' class.
1388 * <!-- begin-user-doc -->
1389 * <!-- end-user-doc -->
1390 * @generated
1391 * @ordered
1392 */
1393 int CAST_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
1394
1395 /**
1396 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl <em>Aggregate Expression</em>}' class.
1397 * <!-- begin-user-doc -->
1398 * <!-- end-user-doc -->
1399 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl
1400 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregateExpression()
1401 * @generated
1402 */
1403 int AGGREGATE_EXPRESSION = 28;
1404
1405 /**
1406 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1407 * <!-- begin-user-doc -->
1408 * <!-- end-user-doc -->
1409 * @generated
1410 * @ordered
1411 */
1412 int AGGREGATE_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
1413
1414 /**
1415 * The feature id for the '<em><b>Forall Variables</b></em>' containment reference list.
1416 * <!-- begin-user-doc -->
1417 * <!-- end-user-doc -->
1418 * @generated
1419 * @ordered
1420 */
1421 int AGGREGATE_EXPRESSION__FORALL_VARIABLES = EXPRESSION_FEATURE_COUNT + 0;
1422
1423 /**
1424 * The feature id for the '<em><b>Condition</b></em>' containment reference.
1425 * <!-- begin-user-doc -->
1426 * <!-- end-user-doc -->
1427 * @generated
1428 * @ordered
1429 */
1430 int AGGREGATE_EXPRESSION__CONDITION = EXPRESSION_FEATURE_COUNT + 1;
1431
1432 /**
1433 * The number of structural features of the '<em>Aggregate Expression</em>' class.
1434 * <!-- begin-user-doc -->
1435 * <!-- end-user-doc -->
1436 * @generated
1437 * @ordered
1438 */
1439 int AGGREGATE_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
1440
1441 /**
1442 * The number of operations of the '<em>Aggregate Expression</em>' class.
1443 * <!-- begin-user-doc -->
1444 * <!-- end-user-doc -->
1445 * @generated
1446 * @ordered
1447 */
1448 int AGGREGATE_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
1449
1450 /**
1451 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl <em>Count</em>}' class.
1452 * <!-- begin-user-doc -->
1453 * <!-- end-user-doc -->
1454 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl
1455 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCount()
1456 * @generated
1457 */
1458 int COUNT = 29;
1459
1460 /**
1461 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1462 * <!-- begin-user-doc -->
1463 * <!-- end-user-doc -->
1464 * @generated
1465 * @ordered
1466 */
1467 int COUNT__EXISTS_VARIABLES = AGGREGATE_EXPRESSION__EXISTS_VARIABLES;
1468
1469 /**
1470 * The feature id for the '<em><b>Forall Variables</b></em>' containment reference list.
1471 * <!-- begin-user-doc -->
1472 * <!-- end-user-doc -->
1473 * @generated
1474 * @ordered
1475 */
1476 int COUNT__FORALL_VARIABLES = AGGREGATE_EXPRESSION__FORALL_VARIABLES;
1477
1478 /**
1479 * The feature id for the '<em><b>Condition</b></em>' containment reference.
1480 * <!-- begin-user-doc -->
1481 * <!-- end-user-doc -->
1482 * @generated
1483 * @ordered
1484 */
1485 int COUNT__CONDITION = AGGREGATE_EXPRESSION__CONDITION;
1486
1487 /**
1488 * The number of structural features of the '<em>Count</em>' class.
1489 * <!-- begin-user-doc -->
1490 * <!-- end-user-doc -->
1491 * @generated
1492 * @ordered
1493 */
1494 int COUNT_FEATURE_COUNT = AGGREGATE_EXPRESSION_FEATURE_COUNT + 0;
1495
1496 /**
1497 * The number of operations of the '<em>Count</em>' class.
1498 * <!-- begin-user-doc -->
1499 * <!-- end-user-doc -->
1500 * @generated
1501 * @ordered
1502 */
1503 int COUNT_OPERATION_COUNT = AGGREGATE_EXPRESSION_OPERATION_COUNT + 0;
1504
1505 /**
1506 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl <em>Aggregation</em>}' class.
1507 * <!-- begin-user-doc -->
1508 * <!-- end-user-doc -->
1509 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl
1510 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregation()
1511 * @generated
1512 */
1513 int AGGREGATION = 30;
1514
1515 /**
1516 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1517 * <!-- begin-user-doc -->
1518 * <!-- end-user-doc -->
1519 * @generated
1520 * @ordered
1521 */
1522 int AGGREGATION__EXISTS_VARIABLES = AGGREGATE_EXPRESSION__EXISTS_VARIABLES;
1523
1524 /**
1525 * The feature id for the '<em><b>Forall Variables</b></em>' containment reference list.
1526 * <!-- begin-user-doc -->
1527 * <!-- end-user-doc -->
1528 * @generated
1529 * @ordered
1530 */
1531 int AGGREGATION__FORALL_VARIABLES = AGGREGATE_EXPRESSION__FORALL_VARIABLES;
1532
1533 /**
1534 * The feature id for the '<em><b>Condition</b></em>' containment reference.
1535 * <!-- begin-user-doc -->
1536 * <!-- end-user-doc -->
1537 * @generated
1538 * @ordered
1539 */
1540 int AGGREGATION__CONDITION = AGGREGATE_EXPRESSION__CONDITION;
1541
1542 /**
1543 * The feature id for the '<em><b>Value</b></em>' containment reference.
1544 * <!-- begin-user-doc -->
1545 * <!-- end-user-doc -->
1546 * @generated
1547 * @ordered
1548 */
1549 int AGGREGATION__VALUE = AGGREGATE_EXPRESSION_FEATURE_COUNT + 0;
1550
1551 /**
1552 * The feature id for the '<em><b>Op</b></em>' reference.
1553 * <!-- begin-user-doc -->
1554 * <!-- end-user-doc -->
1555 * @generated
1556 * @ordered
1557 */
1558 int AGGREGATION__OP = AGGREGATE_EXPRESSION_FEATURE_COUNT + 1;
1559
1560 /**
1561 * The number of structural features of the '<em>Aggregation</em>' class.
1562 * <!-- begin-user-doc -->
1563 * <!-- end-user-doc -->
1564 * @generated
1565 * @ordered
1566 */
1567 int AGGREGATION_FEATURE_COUNT = AGGREGATE_EXPRESSION_FEATURE_COUNT + 2;
1568
1569 /**
1570 * The number of operations of the '<em>Aggregation</em>' class.
1571 * <!-- begin-user-doc -->
1572 * <!-- end-user-doc -->
1573 * @generated
1574 * @ordered
1575 */
1576 int AGGREGATION_OPERATION_COUNT = AGGREGATE_EXPRESSION_OPERATION_COUNT + 0;
1577
1578 /**
1579 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl <em>Forall</em>}' class.
1580 * <!-- begin-user-doc -->
1581 * <!-- end-user-doc -->
1582 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl
1583 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getForall()
1584 * @generated
1585 */
1586 int FORALL = 31;
1587
1588 /**
1589 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1590 * <!-- begin-user-doc -->
1591 * <!-- end-user-doc -->
1592 * @generated
1593 * @ordered
1594 */
1595 int FORALL__EXISTS_VARIABLES = AGGREGATE_EXPRESSION__EXISTS_VARIABLES;
1596
1597 /**
1598 * The feature id for the '<em><b>Forall Variables</b></em>' containment reference list.
1599 * <!-- begin-user-doc -->
1600 * <!-- end-user-doc -->
1601 * @generated
1602 * @ordered
1603 */
1604 int FORALL__FORALL_VARIABLES = AGGREGATE_EXPRESSION__FORALL_VARIABLES;
1605
1606 /**
1607 * The feature id for the '<em><b>Condition</b></em>' containment reference.
1608 * <!-- begin-user-doc -->
1609 * <!-- end-user-doc -->
1610 * @generated
1611 * @ordered
1612 */
1613 int FORALL__CONDITION = AGGREGATE_EXPRESSION__CONDITION;
1614
1615 /**
1616 * The feature id for the '<em><b>Body</b></em>' containment reference.
1617 * <!-- begin-user-doc -->
1618 * <!-- end-user-doc -->
1619 * @generated
1620 * @ordered
1621 */
1622 int FORALL__BODY = AGGREGATE_EXPRESSION_FEATURE_COUNT + 0;
1623
1624 /**
1625 * The number of structural features of the '<em>Forall</em>' class.
1626 * <!-- begin-user-doc -->
1627 * <!-- end-user-doc -->
1628 * @generated
1629 * @ordered
1630 */
1631 int FORALL_FEATURE_COUNT = AGGREGATE_EXPRESSION_FEATURE_COUNT + 1;
1632
1633 /**
1634 * The number of operations of the '<em>Forall</em>' class.
1635 * <!-- begin-user-doc -->
1636 * <!-- end-user-doc -->
1637 * @generated
1638 * @ordered
1639 */
1640 int FORALL_OPERATION_COUNT = AGGREGATE_EXPRESSION_OPERATION_COUNT + 0;
1641
1642 /**
1643 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl <em>Type Reference</em>}' class.
1644 * <!-- begin-user-doc -->
1645 * <!-- end-user-doc -->
1646 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl
1647 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypeReference()
1648 * @generated
1649 */
1650 int TYPE_REFERENCE = 32;
1651
1652 /**
1653 * The feature id for the '<em><b>Force Object Type</b></em>' attribute.
1654 * <!-- begin-user-doc -->
1655 * <!-- end-user-doc -->
1656 * @generated
1657 * @ordered
1658 */
1659 int TYPE_REFERENCE__FORCE_OBJECT_TYPE = 0;
1660
1661 /**
1662 * The feature id for the '<em><b>Type</b></em>' reference.
1663 * <!-- begin-user-doc -->
1664 * <!-- end-user-doc -->
1665 * @generated
1666 * @ordered
1667 */
1668 int TYPE_REFERENCE__TYPE = 1;
1669
1670 /**
1671 * The number of structural features of the '<em>Type Reference</em>' class.
1672 * <!-- begin-user-doc -->
1673 * <!-- end-user-doc -->
1674 * @generated
1675 * @ordered
1676 */
1677 int TYPE_REFERENCE_FEATURE_COUNT = 2;
1678
1679 /**
1680 * The number of operations of the '<em>Type Reference</em>' class.
1681 * <!-- begin-user-doc -->
1682 * <!-- end-user-doc -->
1683 * @generated
1684 * @ordered
1685 */
1686 int TYPE_REFERENCE_OPERATION_COUNT = 0;
1687
1688 /**
1689 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl <em>Infinity Literal</em>}' class.
1690 * <!-- begin-user-doc -->
1691 * <!-- end-user-doc -->
1692 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl
1693 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInfinityLiteral()
1694 * @generated
1695 */
1696 int INFINITY_LITERAL = 33;
1697
1698 /**
1699 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1700 * <!-- begin-user-doc -->
1701 * <!-- end-user-doc -->
1702 * @generated
1703 * @ordered
1704 */
1705 int INFINITY_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES;
1706
1707 /**
1708 * The number of structural features of the '<em>Infinity Literal</em>' class.
1709 * <!-- begin-user-doc -->
1710 * <!-- end-user-doc -->
1711 * @generated
1712 * @ordered
1713 */
1714 int INFINITY_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 0;
1715
1716 /**
1717 * The number of operations of the '<em>Infinity Literal</em>' class.
1718 * <!-- begin-user-doc -->
1719 * <!-- end-user-doc -->
1720 * @generated
1721 * @ordered
1722 */
1723 int INFINITY_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
1724
1725 /**
1726 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl <em>Interval</em>}' class.
1727 * <!-- begin-user-doc -->
1728 * <!-- end-user-doc -->
1729 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl
1730 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterval()
1731 * @generated
1732 */
1733 int INTERVAL = 34;
1734
1735 /**
1736 * The feature id for the '<em><b>Exists Variables</b></em>' containment reference list.
1737 * <!-- begin-user-doc -->
1738 * <!-- end-user-doc -->
1739 * @generated
1740 * @ordered
1741 */
1742 int INTERVAL__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES;
1743
1744 /**
1745 * The feature id for the '<em><b>Lower Bound</b></em>' containment reference.
1746 * <!-- begin-user-doc -->
1747 * <!-- end-user-doc -->
1748 * @generated
1749 * @ordered
1750 */
1751 int INTERVAL__LOWER_BOUND = EXPRESSION_FEATURE_COUNT + 0;
1752
1753 /**
1754 * The feature id for the '<em><b>Upper Bound</b></em>' containment reference.
1755 * <!-- begin-user-doc -->
1756 * <!-- end-user-doc -->
1757 * @generated
1758 * @ordered
1759 */
1760 int INTERVAL__UPPER_BOUND = EXPRESSION_FEATURE_COUNT + 1;
1761
1762 /**
1763 * The number of structural features of the '<em>Interval</em>' class.
1764 * <!-- begin-user-doc -->
1765 * <!-- end-user-doc -->
1766 * @generated
1767 * @ordered
1768 */
1769 int INTERVAL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2;
1770
1771 /**
1772 * The number of operations of the '<em>Interval</em>' class.
1773 * <!-- begin-user-doc -->
1774 * <!-- end-user-doc -->
1775 * @generated
1776 * @ordered
1777 */
1778 int INTERVAL_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0;
1779
1780 /**
1781 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl <em>Functor</em>}' class.
1782 * <!-- begin-user-doc -->
1783 * <!-- end-user-doc -->
1784 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl
1785 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctor()
1786 * @generated
1787 */
1788 int FUNCTOR = 35;
1789
1790 /**
1791 * The feature id for the '<em><b>Name</b></em>' attribute.
1792 * <!-- begin-user-doc -->
1793 * <!-- end-user-doc -->
1794 * @generated
1795 * @ordered
1796 */
1797 int FUNCTOR__NAME = SYMBOL__NAME;
1798
1799 /**
1800 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
1801 * <!-- begin-user-doc -->
1802 * <!-- end-user-doc -->
1803 * @generated
1804 * @ordered
1805 */
1806 int FUNCTOR__PARAMETERS = SYMBOL_FEATURE_COUNT + 0;
1807
1808 /**
1809 * The number of structural features of the '<em>Functor</em>' class.
1810 * <!-- begin-user-doc -->
1811 * <!-- end-user-doc -->
1812 * @generated
1813 * @ordered
1814 */
1815 int FUNCTOR_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1;
1816
1817 /**
1818 * The number of operations of the '<em>Functor</em>' class.
1819 * <!-- begin-user-doc -->
1820 * <!-- end-user-doc -->
1821 * @generated
1822 * @ordered
1823 */
1824 int FUNCTOR_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0;
1825
1826 /**
1827 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl <em>Relation</em>}' class.
1828 * <!-- begin-user-doc -->
1829 * <!-- end-user-doc -->
1830 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl
1831 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRelation()
1832 * @generated
1833 */
1834 int RELATION = 36;
1835
1836 /**
1837 * The feature id for the '<em><b>Name</b></em>' attribute.
1838 * <!-- begin-user-doc -->
1839 * <!-- end-user-doc -->
1840 * @generated
1841 * @ordered
1842 */
1843 int RELATION__NAME = FUNCTOR__NAME;
1844
1845 /**
1846 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
1847 * <!-- begin-user-doc -->
1848 * <!-- end-user-doc -->
1849 * @generated
1850 * @ordered
1851 */
1852 int RELATION__PARAMETERS = FUNCTOR__PARAMETERS;
1853
1854 /**
1855 * The number of structural features of the '<em>Relation</em>' class.
1856 * <!-- begin-user-doc -->
1857 * <!-- end-user-doc -->
1858 * @generated
1859 * @ordered
1860 */
1861 int RELATION_FEATURE_COUNT = FUNCTOR_FEATURE_COUNT + 0;
1862
1863 /**
1864 * The number of operations of the '<em>Relation</em>' class.
1865 * <!-- begin-user-doc -->
1866 * <!-- end-user-doc -->
1867 * @generated
1868 * @ordered
1869 */
1870 int RELATION_OPERATION_COUNT = FUNCTOR_OPERATION_COUNT + 0;
1871
1872 /**
1873 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl <em>Base Relation</em>}' class.
1874 * <!-- begin-user-doc -->
1875 * <!-- end-user-doc -->
1876 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl
1877 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBaseRelation()
1878 * @generated
1879 */
1880 int BASE_RELATION = 37;
1881
1882 /**
1883 * The feature id for the '<em><b>Name</b></em>' attribute.
1884 * <!-- begin-user-doc -->
1885 * <!-- end-user-doc -->
1886 * @generated
1887 * @ordered
1888 */
1889 int BASE_RELATION__NAME = RELATION__NAME;
1890
1891 /**
1892 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
1893 * <!-- begin-user-doc -->
1894 * <!-- end-user-doc -->
1895 * @generated
1896 * @ordered
1897 */
1898 int BASE_RELATION__PARAMETERS = RELATION__PARAMETERS;
1899
1900 /**
1901 * The number of structural features of the '<em>Base Relation</em>' class.
1902 * <!-- begin-user-doc -->
1903 * <!-- end-user-doc -->
1904 * @generated
1905 * @ordered
1906 */
1907 int BASE_RELATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 0;
1908
1909 /**
1910 * The number of operations of the '<em>Base Relation</em>' class.
1911 * <!-- begin-user-doc -->
1912 * <!-- end-user-doc -->
1913 * @generated
1914 * @ordered
1915 */
1916 int BASE_RELATION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
1917
1918 /**
1919 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl <em>Predicate</em>}' class.
1920 * <!-- begin-user-doc -->
1921 * <!-- end-user-doc -->
1922 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl
1923 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate()
1924 * @generated
1925 */
1926 int PREDICATE = 38;
1927
1928 /**
1929 * The feature id for the '<em><b>Name</b></em>' attribute.
1930 * <!-- begin-user-doc -->
1931 * <!-- end-user-doc -->
1932 * @generated
1933 * @ordered
1934 */
1935 int PREDICATE__NAME = RELATION__NAME;
1936
1937 /**
1938 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
1939 * <!-- begin-user-doc -->
1940 * <!-- end-user-doc -->
1941 * @generated
1942 * @ordered
1943 */
1944 int PREDICATE__PARAMETERS = RELATION__PARAMETERS;
1945
1946 /**
1947 * The number of structural features of the '<em>Predicate</em>' class.
1948 * <!-- begin-user-doc -->
1949 * <!-- end-user-doc -->
1950 * @generated
1951 * @ordered
1952 */
1953 int PREDICATE_FEATURE_COUNT = RELATION_FEATURE_COUNT + 0;
1954
1955 /**
1956 * The number of operations of the '<em>Predicate</em>' class.
1957 * <!-- begin-user-doc -->
1958 * <!-- end-user-doc -->
1959 * @generated
1960 * @ordered
1961 */
1962 int PREDICATE_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
1963
1964 /**
1965 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl <em>Datatype</em>}' class.
1966 * <!-- begin-user-doc -->
1967 * <!-- end-user-doc -->
1968 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl
1969 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDatatype()
1970 * @generated
1971 */
1972 int DATATYPE = 39;
1973
1974 /**
1975 * The feature id for the '<em><b>Name</b></em>' attribute.
1976 * <!-- begin-user-doc -->
1977 * <!-- end-user-doc -->
1978 * @generated
1979 * @ordered
1980 */
1981 int DATATYPE__NAME = RELATION__NAME;
1982
1983 /**
1984 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
1985 * <!-- begin-user-doc -->
1986 * <!-- end-user-doc -->
1987 * @generated
1988 * @ordered
1989 */
1990 int DATATYPE__PARAMETERS = RELATION__PARAMETERS;
1991
1992 /**
1993 * The number of structural features of the '<em>Datatype</em>' class.
1994 * <!-- begin-user-doc -->
1995 * <!-- end-user-doc -->
1996 * @generated
1997 * @ordered
1998 */
1999 int DATATYPE_FEATURE_COUNT = RELATION_FEATURE_COUNT + 0;
2000
2001 /**
2002 * The number of operations of the '<em>Datatype</em>' class.
2003 * <!-- begin-user-doc -->
2004 * <!-- end-user-doc -->
2005 * @generated
2006 * @ordered
2007 */
2008 int DATATYPE_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
2009
2010 /**
2011 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl <em>Function</em>}' class.
2012 * <!-- begin-user-doc -->
2013 * <!-- end-user-doc -->
2014 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl
2015 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunction()
2016 * @generated
2017 */
2018 int FUNCTION = 40;
2019
2020 /**
2021 * The feature id for the '<em><b>Name</b></em>' attribute.
2022 * <!-- begin-user-doc -->
2023 * <!-- end-user-doc -->
2024 * @generated
2025 * @ordered
2026 */
2027 int FUNCTION__NAME = FUNCTOR__NAME;
2028
2029 /**
2030 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
2031 * <!-- begin-user-doc -->
2032 * <!-- end-user-doc -->
2033 * @generated
2034 * @ordered
2035 */
2036 int FUNCTION__PARAMETERS = FUNCTOR__PARAMETERS;
2037
2038 /**
2039 * The feature id for the '<em><b>Result Type</b></em>' reference.
2040 * <!-- begin-user-doc -->
2041 * <!-- end-user-doc -->
2042 * @generated
2043 * @ordered
2044 */
2045 int FUNCTION__RESULT_TYPE = FUNCTOR_FEATURE_COUNT + 0;
2046
2047 /**
2048 * The number of structural features of the '<em>Function</em>' class.
2049 * <!-- begin-user-doc -->
2050 * <!-- end-user-doc -->
2051 * @generated
2052 * @ordered
2053 */
2054 int FUNCTION_FEATURE_COUNT = FUNCTOR_FEATURE_COUNT + 1;
2055
2056 /**
2057 * The number of operations of the '<em>Function</em>' class.
2058 * <!-- begin-user-doc -->
2059 * <!-- end-user-doc -->
2060 * @generated
2061 * @ordered
2062 */
2063 int FUNCTION_OPERATION_COUNT = FUNCTOR_OPERATION_COUNT + 0;
2064
2065 /**
2066 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl <em>Metric</em>}' class.
2067 * <!-- begin-user-doc -->
2068 * <!-- end-user-doc -->
2069 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl
2070 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetric()
2071 * @generated
2072 */
2073 int METRIC = 41;
2074
2075 /**
2076 * The feature id for the '<em><b>Name</b></em>' attribute.
2077 * <!-- begin-user-doc -->
2078 * <!-- end-user-doc -->
2079 * @generated
2080 * @ordered
2081 */
2082 int METRIC__NAME = FUNCTION__NAME;
2083
2084 /**
2085 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
2086 * <!-- begin-user-doc -->
2087 * <!-- end-user-doc -->
2088 * @generated
2089 * @ordered
2090 */
2091 int METRIC__PARAMETERS = FUNCTION__PARAMETERS;
2092
2093 /**
2094 * The feature id for the '<em><b>Result Type</b></em>' reference.
2095 * <!-- begin-user-doc -->
2096 * <!-- end-user-doc -->
2097 * @generated
2098 * @ordered
2099 */
2100 int METRIC__RESULT_TYPE = FUNCTION__RESULT_TYPE;
2101
2102 /**
2103 * The number of structural features of the '<em>Metric</em>' class.
2104 * <!-- begin-user-doc -->
2105 * <!-- end-user-doc -->
2106 * @generated
2107 * @ordered
2108 */
2109 int METRIC_FEATURE_COUNT = FUNCTION_FEATURE_COUNT + 0;
2110
2111 /**
2112 * The number of operations of the '<em>Metric</em>' class.
2113 * <!-- begin-user-doc -->
2114 * <!-- end-user-doc -->
2115 * @generated
2116 * @ordered
2117 */
2118 int METRIC_OPERATION_COUNT = FUNCTION_OPERATION_COUNT + 0;
2119
2120 /**
2121 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl <em>Operator</em>}' class.
2122 * <!-- begin-user-doc -->
2123 * <!-- end-user-doc -->
2124 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl
2125 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getOperator()
2126 * @generated
2127 */
2128 int OPERATOR = 42;
2129
2130 /**
2131 * The feature id for the '<em><b>Name</b></em>' attribute.
2132 * <!-- begin-user-doc -->
2133 * <!-- end-user-doc -->
2134 * @generated
2135 * @ordered
2136 */
2137 int OPERATOR__NAME = FUNCTION__NAME;
2138
2139 /**
2140 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
2141 * <!-- begin-user-doc -->
2142 * <!-- end-user-doc -->
2143 * @generated
2144 * @ordered
2145 */
2146 int OPERATOR__PARAMETERS = FUNCTION__PARAMETERS;
2147
2148 /**
2149 * The feature id for the '<em><b>Result Type</b></em>' reference.
2150 * <!-- begin-user-doc -->
2151 * <!-- end-user-doc -->
2152 * @generated
2153 * @ordered
2154 */
2155 int OPERATOR__RESULT_TYPE = FUNCTION__RESULT_TYPE;
2156
2157 /**
2158 * The number of structural features of the '<em>Operator</em>' class.
2159 * <!-- begin-user-doc -->
2160 * <!-- end-user-doc -->
2161 * @generated
2162 * @ordered
2163 */
2164 int OPERATOR_FEATURE_COUNT = FUNCTION_FEATURE_COUNT + 0;
2165
2166 /**
2167 * The number of operations of the '<em>Operator</em>' class.
2168 * <!-- begin-user-doc -->
2169 * <!-- end-user-doc -->
2170 * @generated
2171 * @ordered
2172 */
2173 int OPERATOR_OPERATION_COUNT = FUNCTION_OPERATION_COUNT + 0;
2174
2175 /**
2176 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl <em>Node</em>}' class.
2177 * <!-- begin-user-doc -->
2178 * <!-- end-user-doc -->
2179 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl
2180 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNode()
2181 * @generated
2182 */
2183 int NODE = 43;
2184
2185 /**
2186 * The feature id for the '<em><b>Name</b></em>' attribute.
2187 * <!-- begin-user-doc -->
2188 * <!-- end-user-doc -->
2189 * @generated
2190 * @ordered
2191 */
2192 int NODE__NAME = SYMBOL__NAME;
2193
2194 /**
2195 * The feature id for the '<em><b>Named</b></em>' attribute.
2196 * <!-- begin-user-doc -->
2197 * <!-- end-user-doc -->
2198 * @generated
2199 * @ordered
2200 */
2201 int NODE__NAMED = SYMBOL_FEATURE_COUNT + 0;
2202
2203 /**
2204 * The number of structural features of the '<em>Node</em>' class.
2205 * <!-- begin-user-doc -->
2206 * <!-- end-user-doc -->
2207 * @generated
2208 * @ordered
2209 */
2210 int NODE_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1;
2211
2212 /**
2213 * The number of operations of the '<em>Node</em>' class.
2214 * <!-- begin-user-doc -->
2215 * <!-- end-user-doc -->
2216 * @generated
2217 * @ordered
2218 */
2219 int NODE_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0;
2220
2221 /**
2222 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl <em>Abstract Assertion</em>}' class.
2223 * <!-- begin-user-doc -->
2224 * <!-- end-user-doc -->
2225 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl
2226 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAbstractAssertion()
2227 * @generated
2228 */
2229 int ABSTRACT_ASSERTION = 45;
2230
2231 /**
2232 * The feature id for the '<em><b>Expression</b></em>' containment reference.
2233 * <!-- begin-user-doc -->
2234 * <!-- end-user-doc -->
2235 * @generated
2236 * @ordered
2237 */
2238 int ABSTRACT_ASSERTION__EXPRESSION = STATEMENT_FEATURE_COUNT + 0;
2239
2240 /**
2241 * The feature id for the '<em><b>Range</b></em>' containment reference.
2242 * <!-- begin-user-doc -->
2243 * <!-- end-user-doc -->
2244 * @generated
2245 * @ordered
2246 */
2247 int ABSTRACT_ASSERTION__RANGE = STATEMENT_FEATURE_COUNT + 1;
2248
2249 /**
2250 * The number of structural features of the '<em>Abstract Assertion</em>' class.
2251 * <!-- begin-user-doc -->
2252 * <!-- end-user-doc -->
2253 * @generated
2254 * @ordered
2255 */
2256 int ABSTRACT_ASSERTION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
2257
2258 /**
2259 * The number of operations of the '<em>Abstract Assertion</em>' class.
2260 * <!-- begin-user-doc -->
2261 * <!-- end-user-doc -->
2262 * @generated
2263 * @ordered
2264 */
2265 int ABSTRACT_ASSERTION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
2266
2267 /**
2268 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl <em>Functor Definiton</em>}' class.
2269 * <!-- begin-user-doc -->
2270 * <!-- end-user-doc -->
2271 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl
2272 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctorDefiniton()
2273 * @generated
2274 */
2275 int FUNCTOR_DEFINITON = 46;
2276
2277 /**
2278 * The feature id for the '<em><b>Head</b></em>' containment reference.
2279 * <!-- begin-user-doc -->
2280 * <!-- end-user-doc -->
2281 * @generated
2282 * @ordered
2283 */
2284 int FUNCTOR_DEFINITON__HEAD = STATEMENT_FEATURE_COUNT + 0;
2285
2286 /**
2287 * The feature id for the '<em><b>Body</b></em>' containment reference.
2288 * <!-- begin-user-doc -->
2289 * <!-- end-user-doc -->
2290 * @generated
2291 * @ordered
2292 */
2293 int FUNCTOR_DEFINITON__BODY = STATEMENT_FEATURE_COUNT + 1;
2294
2295 /**
2296 * The number of structural features of the '<em>Functor Definiton</em>' class.
2297 * <!-- begin-user-doc -->
2298 * <!-- end-user-doc -->
2299 * @generated
2300 * @ordered
2301 */
2302 int FUNCTOR_DEFINITON_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
2303
2304 /**
2305 * The number of operations of the '<em>Functor Definiton</em>' class.
2306 * <!-- begin-user-doc -->
2307 * <!-- end-user-doc -->
2308 * @generated
2309 * @ordered
2310 */
2311 int FUNCTOR_DEFINITON_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
2312
2313 /**
2314 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl <em>Predicate Definition</em>}' class.
2315 * <!-- begin-user-doc -->
2316 * <!-- end-user-doc -->
2317 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl
2318 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateDefinition()
2319 * @generated
2320 */
2321 int PREDICATE_DEFINITION = 47;
2322
2323 /**
2324 * The feature id for the '<em><b>Head</b></em>' containment reference.
2325 * <!-- begin-user-doc -->
2326 * <!-- end-user-doc -->
2327 * @generated
2328 * @ordered
2329 */
2330 int PREDICATE_DEFINITION__HEAD = FUNCTOR_DEFINITON__HEAD;
2331
2332 /**
2333 * The feature id for the '<em><b>Body</b></em>' containment reference.
2334 * <!-- begin-user-doc -->
2335 * <!-- end-user-doc -->
2336 * @generated
2337 * @ordered
2338 */
2339 int PREDICATE_DEFINITION__BODY = FUNCTOR_DEFINITON__BODY;
2340
2341 /**
2342 * The feature id for the '<em><b>Error</b></em>' attribute.
2343 * <!-- begin-user-doc -->
2344 * <!-- end-user-doc -->
2345 * @generated
2346 * @ordered
2347 */
2348 int PREDICATE_DEFINITION__ERROR = FUNCTOR_DEFINITON_FEATURE_COUNT + 0;
2349
2350 /**
2351 * The feature id for the '<em><b>Functional</b></em>' attribute.
2352 * <!-- begin-user-doc -->
2353 * <!-- end-user-doc -->
2354 * @generated
2355 * @ordered
2356 */
2357 int PREDICATE_DEFINITION__FUNCTIONAL = FUNCTOR_DEFINITON_FEATURE_COUNT + 1;
2358
2359 /**
2360 * The number of structural features of the '<em>Predicate Definition</em>' class.
2361 * <!-- begin-user-doc -->
2362 * <!-- end-user-doc -->
2363 * @generated
2364 * @ordered
2365 */
2366 int PREDICATE_DEFINITION_FEATURE_COUNT = FUNCTOR_DEFINITON_FEATURE_COUNT + 2;
2367
2368 /**
2369 * The number of operations of the '<em>Predicate Definition</em>' class.
2370 * <!-- begin-user-doc -->
2371 * <!-- end-user-doc -->
2372 * @generated
2373 * @ordered
2374 */
2375 int PREDICATE_DEFINITION_OPERATION_COUNT = FUNCTOR_DEFINITON_OPERATION_COUNT + 0;
2376
2377 /**
2378 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl <em>Function Definition</em>}' class.
2379 * <!-- begin-user-doc -->
2380 * <!-- end-user-doc -->
2381 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl
2382 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctionDefinition()
2383 * @generated
2384 */
2385 int FUNCTION_DEFINITION = 48;
2386
2387 /**
2388 * The feature id for the '<em><b>Head</b></em>' containment reference.
2389 * <!-- begin-user-doc -->
2390 * <!-- end-user-doc -->
2391 * @generated
2392 * @ordered
2393 */
2394 int FUNCTION_DEFINITION__HEAD = FUNCTOR_DEFINITON__HEAD;
2395
2396 /**
2397 * The feature id for the '<em><b>Body</b></em>' containment reference.
2398 * <!-- begin-user-doc -->
2399 * <!-- end-user-doc -->
2400 * @generated
2401 * @ordered
2402 */
2403 int FUNCTION_DEFINITION__BODY = FUNCTOR_DEFINITON__BODY;
2404
2405 /**
2406 * The feature id for the '<em><b>Result Type</b></em>' reference.
2407 * <!-- begin-user-doc -->
2408 * <!-- end-user-doc -->
2409 * @generated
2410 * @ordered
2411 */
2412 int FUNCTION_DEFINITION__RESULT_TYPE = FUNCTOR_DEFINITON_FEATURE_COUNT + 0;
2413
2414 /**
2415 * The number of structural features of the '<em>Function Definition</em>' class.
2416 * <!-- begin-user-doc -->
2417 * <!-- end-user-doc -->
2418 * @generated
2419 * @ordered
2420 */
2421 int FUNCTION_DEFINITION_FEATURE_COUNT = FUNCTOR_DEFINITON_FEATURE_COUNT + 1;
2422
2423 /**
2424 * The number of operations of the '<em>Function Definition</em>' class.
2425 * <!-- begin-user-doc -->
2426 * <!-- end-user-doc -->
2427 * @generated
2428 * @ordered
2429 */
2430 int FUNCTION_DEFINITION_OPERATION_COUNT = FUNCTOR_DEFINITON_OPERATION_COUNT + 0;
2431
2432 /**
2433 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl <em>Attribute</em>}' class.
2434 * <!-- begin-user-doc -->
2435 * <!-- end-user-doc -->
2436 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl
2437 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttribute()
2438 * @generated
2439 */
2440 int ATTRIBUTE = 49;
2441
2442 /**
2443 * The feature id for the '<em><b>Target</b></em>' reference.
2444 * <!-- begin-user-doc -->
2445 * <!-- end-user-doc -->
2446 * @generated
2447 * @ordered
2448 */
2449 int ATTRIBUTE__TARGET = STATEMENT_FEATURE_COUNT + 0;
2450
2451 /**
2452 * The feature id for the '<em><b>Kind</b></em>' attribute.
2453 * <!-- begin-user-doc -->
2454 * <!-- end-user-doc -->
2455 * @generated
2456 * @ordered
2457 */
2458 int ATTRIBUTE__KIND = STATEMENT_FEATURE_COUNT + 1;
2459
2460 /**
2461 * The number of structural features of the '<em>Attribute</em>' class.
2462 * <!-- begin-user-doc -->
2463 * <!-- end-user-doc -->
2464 * @generated
2465 * @ordered
2466 */
2467 int ATTRIBUTE_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
2468
2469 /**
2470 * The number of operations of the '<em>Attribute</em>' class.
2471 * <!-- begin-user-doc -->
2472 * <!-- end-user-doc -->
2473 * @generated
2474 * @ordered
2475 */
2476 int ATTRIBUTE_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
2477
2478 /**
2479 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl <em>Extern Declaration</em>}' class.
2480 * <!-- begin-user-doc -->
2481 * <!-- end-user-doc -->
2482 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl
2483 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDeclaration()
2484 * @generated
2485 */
2486 int EXTERN_DECLARATION = 50;
2487
2488 /**
2489 * The feature id for the '<em><b>Name</b></em>' attribute.
2490 * <!-- begin-user-doc -->
2491 * <!-- end-user-doc -->
2492 * @generated
2493 * @ordered
2494 */
2495 int EXTERN_DECLARATION__NAME = STATEMENT_FEATURE_COUNT + 0;
2496
2497 /**
2498 * The number of structural features of the '<em>Extern Declaration</em>' class.
2499 * <!-- begin-user-doc -->
2500 * <!-- end-user-doc -->
2501 * @generated
2502 * @ordered
2503 */
2504 int EXTERN_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1;
2505
2506 /**
2507 * The number of operations of the '<em>Extern Declaration</em>' class.
2508 * <!-- begin-user-doc -->
2509 * <!-- end-user-doc -->
2510 * @generated
2511 * @ordered
2512 */
2513 int EXTERN_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
2514
2515 /**
2516 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl <em>Extern Functor Declaration</em>}' class.
2517 * <!-- begin-user-doc -->
2518 * <!-- end-user-doc -->
2519 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl
2520 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctorDeclaration()
2521 * @generated
2522 */
2523 int EXTERN_FUNCTOR_DECLARATION = 51;
2524
2525 /**
2526 * The feature id for the '<em><b>Name</b></em>' attribute.
2527 * <!-- begin-user-doc -->
2528 * <!-- end-user-doc -->
2529 * @generated
2530 * @ordered
2531 */
2532 int EXTERN_FUNCTOR_DECLARATION__NAME = EXTERN_DECLARATION__NAME;
2533
2534 /**
2535 * The feature id for the '<em><b>Argument List</b></em>' containment reference.
2536 * <!-- begin-user-doc -->
2537 * <!-- end-user-doc -->
2538 * @generated
2539 * @ordered
2540 */
2541 int EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST = EXTERN_DECLARATION_FEATURE_COUNT + 0;
2542
2543 /**
2544 * The number of structural features of the '<em>Extern Functor Declaration</em>' class.
2545 * <!-- begin-user-doc -->
2546 * <!-- end-user-doc -->
2547 * @generated
2548 * @ordered
2549 */
2550 int EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT = EXTERN_DECLARATION_FEATURE_COUNT + 1;
2551
2552 /**
2553 * The number of operations of the '<em>Extern Functor Declaration</em>' class.
2554 * <!-- begin-user-doc -->
2555 * <!-- end-user-doc -->
2556 * @generated
2557 * @ordered
2558 */
2559 int EXTERN_FUNCTOR_DECLARATION_OPERATION_COUNT = EXTERN_DECLARATION_OPERATION_COUNT + 0;
2560
2561 /**
2562 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl <em>Extern Predicate Declaration</em>}' class.
2563 * <!-- begin-user-doc -->
2564 * <!-- end-user-doc -->
2565 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl
2566 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternPredicateDeclaration()
2567 * @generated
2568 */
2569 int EXTERN_PREDICATE_DECLARATION = 52;
2570
2571 /**
2572 * The feature id for the '<em><b>Name</b></em>' attribute.
2573 * <!-- begin-user-doc -->
2574 * <!-- end-user-doc -->
2575 * @generated
2576 * @ordered
2577 */
2578 int EXTERN_PREDICATE_DECLARATION__NAME = EXTERN_FUNCTOR_DECLARATION__NAME;
2579
2580 /**
2581 * The feature id for the '<em><b>Argument List</b></em>' containment reference.
2582 * <!-- begin-user-doc -->
2583 * <!-- end-user-doc -->
2584 * @generated
2585 * @ordered
2586 */
2587 int EXTERN_PREDICATE_DECLARATION__ARGUMENT_LIST = EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST;
2588
2589 /**
2590 * The feature id for the '<em><b>Error</b></em>' attribute.
2591 * <!-- begin-user-doc -->
2592 * <!-- end-user-doc -->
2593 * @generated
2594 * @ordered
2595 */
2596 int EXTERN_PREDICATE_DECLARATION__ERROR = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 0;
2597
2598 /**
2599 * The feature id for the '<em><b>Functional</b></em>' attribute.
2600 * <!-- begin-user-doc -->
2601 * <!-- end-user-doc -->
2602 * @generated
2603 * @ordered
2604 */
2605 int EXTERN_PREDICATE_DECLARATION__FUNCTIONAL = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 1;
2606
2607 /**
2608 * The number of structural features of the '<em>Extern Predicate Declaration</em>' class.
2609 * <!-- begin-user-doc -->
2610 * <!-- end-user-doc -->
2611 * @generated
2612 * @ordered
2613 */
2614 int EXTERN_PREDICATE_DECLARATION_FEATURE_COUNT = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 2;
2615
2616 /**
2617 * The number of operations of the '<em>Extern Predicate Declaration</em>' class.
2618 * <!-- begin-user-doc -->
2619 * <!-- end-user-doc -->
2620 * @generated
2621 * @ordered
2622 */
2623 int EXTERN_PREDICATE_DECLARATION_OPERATION_COUNT = EXTERN_FUNCTOR_DECLARATION_OPERATION_COUNT + 0;
2624
2625 /**
2626 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl <em>Extern Function Declaration</em>}' class.
2627 * <!-- begin-user-doc -->
2628 * <!-- end-user-doc -->
2629 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl
2630 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctionDeclaration()
2631 * @generated
2632 */
2633 int EXTERN_FUNCTION_DECLARATION = 53;
2634
2635 /**
2636 * The feature id for the '<em><b>Name</b></em>' attribute.
2637 * <!-- begin-user-doc -->
2638 * <!-- end-user-doc -->
2639 * @generated
2640 * @ordered
2641 */
2642 int EXTERN_FUNCTION_DECLARATION__NAME = EXTERN_FUNCTOR_DECLARATION__NAME;
2643
2644 /**
2645 * The feature id for the '<em><b>Argument List</b></em>' containment reference.
2646 * <!-- begin-user-doc -->
2647 * <!-- end-user-doc -->
2648 * @generated
2649 * @ordered
2650 */
2651 int EXTERN_FUNCTION_DECLARATION__ARGUMENT_LIST = EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST;
2652
2653 /**
2654 * The feature id for the '<em><b>Result Type</b></em>' reference.
2655 * <!-- begin-user-doc -->
2656 * <!-- end-user-doc -->
2657 * @generated
2658 * @ordered
2659 */
2660 int EXTERN_FUNCTION_DECLARATION__RESULT_TYPE = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 0;
2661
2662 /**
2663 * The number of structural features of the '<em>Extern Function Declaration</em>' class.
2664 * <!-- begin-user-doc -->
2665 * <!-- end-user-doc -->
2666 * @generated
2667 * @ordered
2668 */
2669 int EXTERN_FUNCTION_DECLARATION_FEATURE_COUNT = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 1;
2670
2671 /**
2672 * The number of operations of the '<em>Extern Function Declaration</em>' class.
2673 * <!-- begin-user-doc -->
2674 * <!-- end-user-doc -->
2675 * @generated
2676 * @ordered
2677 */
2678 int EXTERN_FUNCTION_DECLARATION_OPERATION_COUNT = EXTERN_FUNCTOR_DECLARATION_OPERATION_COUNT + 0;
2679
2680 /**
2681 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl <em>Extern Aggregation Operator Declaration</em>}' class.
2682 * <!-- begin-user-doc -->
2683 * <!-- end-user-doc -->
2684 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl
2685 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternAggregationOperatorDeclaration()
2686 * @generated
2687 */
2688 int EXTERN_AGGREGATION_OPERATOR_DECLARATION = 54;
2689
2690 /**
2691 * The feature id for the '<em><b>Name</b></em>' attribute.
2692 * <!-- begin-user-doc -->
2693 * <!-- end-user-doc -->
2694 * @generated
2695 * @ordered
2696 */
2697 int EXTERN_AGGREGATION_OPERATOR_DECLARATION__NAME = EXTERN_DECLARATION__NAME;
2698
2699 /**
2700 * The feature id for the '<em><b>Argument Type</b></em>' reference.
2701 * <!-- begin-user-doc -->
2702 * <!-- end-user-doc -->
2703 * @generated
2704 * @ordered
2705 */
2706 int EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE = EXTERN_DECLARATION_FEATURE_COUNT + 0;
2707
2708 /**
2709 * The feature id for the '<em><b>Result Type</b></em>' reference.
2710 * <!-- begin-user-doc -->
2711 * <!-- end-user-doc -->
2712 * @generated
2713 * @ordered
2714 */
2715 int EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE = EXTERN_DECLARATION_FEATURE_COUNT + 1;
2716
2717 /**
2718 * The number of structural features of the '<em>Extern Aggregation Operator Declaration</em>' class.
2719 * <!-- begin-user-doc -->
2720 * <!-- end-user-doc -->
2721 * @generated
2722 * @ordered
2723 */
2724 int EXTERN_AGGREGATION_OPERATOR_DECLARATION_FEATURE_COUNT = EXTERN_DECLARATION_FEATURE_COUNT + 2;
2725
2726 /**
2727 * The number of operations of the '<em>Extern Aggregation Operator Declaration</em>' class.
2728 * <!-- begin-user-doc -->
2729 * <!-- end-user-doc -->
2730 * @generated
2731 * @ordered
2732 */
2733 int EXTERN_AGGREGATION_OPERATOR_DECLARATION_OPERATION_COUNT = EXTERN_DECLARATION_OPERATION_COUNT + 0;
2734
2735 /**
2736 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl <em>Extern Datatype Declaration</em>}' class.
2737 * <!-- begin-user-doc -->
2738 * <!-- end-user-doc -->
2739 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl
2740 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDatatypeDeclaration()
2741 * @generated
2742 */
2743 int EXTERN_DATATYPE_DECLARATION = 55;
2744
2745 /**
2746 * The feature id for the '<em><b>Name</b></em>' attribute.
2747 * <!-- begin-user-doc -->
2748 * <!-- end-user-doc -->
2749 * @generated
2750 * @ordered
2751 */
2752 int EXTERN_DATATYPE_DECLARATION__NAME = EXTERN_DECLARATION__NAME;
2753
2754 /**
2755 * The number of structural features of the '<em>Extern Datatype Declaration</em>' class.
2756 * <!-- begin-user-doc -->
2757 * <!-- end-user-doc -->
2758 * @generated
2759 * @ordered
2760 */
2761 int EXTERN_DATATYPE_DECLARATION_FEATURE_COUNT = EXTERN_DECLARATION_FEATURE_COUNT + 0;
2762
2763 /**
2764 * The number of operations of the '<em>Extern Datatype Declaration</em>' class.
2765 * <!-- begin-user-doc -->
2766 * <!-- end-user-doc -->
2767 * @generated
2768 * @ordered
2769 */
2770 int EXTERN_DATATYPE_DECLARATION_OPERATION_COUNT = EXTERN_DECLARATION_OPERATION_COUNT + 0;
2771
2772 /**
2773 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl <em>Class Declaration</em>}' class.
2774 * <!-- begin-user-doc -->
2775 * <!-- end-user-doc -->
2776 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl
2777 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassDeclaration()
2778 * @generated
2779 */
2780 int CLASS_DECLARATION = 56;
2781
2782 /**
2783 * The feature id for the '<em><b>Fields</b></em>' containment reference list.
2784 * <!-- begin-user-doc -->
2785 * <!-- end-user-doc -->
2786 * @generated
2787 * @ordered
2788 */
2789 int CLASS_DECLARATION__FIELDS = STATEMENT_FEATURE_COUNT + 0;
2790
2791 /**
2792 * The feature id for the '<em><b>Name</b></em>' attribute.
2793 * <!-- begin-user-doc -->
2794 * <!-- end-user-doc -->
2795 * @generated
2796 * @ordered
2797 */
2798 int CLASS_DECLARATION__NAME = STATEMENT_FEATURE_COUNT + 1;
2799
2800 /**
2801 * The feature id for the '<em><b>Abstract</b></em>' attribute.
2802 * <!-- begin-user-doc -->
2803 * <!-- end-user-doc -->
2804 * @generated
2805 * @ordered
2806 */
2807 int CLASS_DECLARATION__ABSTRACT = STATEMENT_FEATURE_COUNT + 2;
2808
2809 /**
2810 * The feature id for the '<em><b>Supertypes</b></em>' reference list.
2811 * <!-- begin-user-doc -->
2812 * <!-- end-user-doc -->
2813 * @generated
2814 * @ordered
2815 */
2816 int CLASS_DECLARATION__SUPERTYPES = STATEMENT_FEATURE_COUNT + 3;
2817
2818 /**
2819 * The feature id for the '<em><b>Root</b></em>' attribute.
2820 * <!-- begin-user-doc -->
2821 * <!-- end-user-doc -->
2822 * @generated
2823 * @ordered
2824 */
2825 int CLASS_DECLARATION__ROOT = STATEMENT_FEATURE_COUNT + 4;
2826
2827 /**
2828 * The number of structural features of the '<em>Class Declaration</em>' class.
2829 * <!-- begin-user-doc -->
2830 * <!-- end-user-doc -->
2831 * @generated
2832 * @ordered
2833 */
2834 int CLASS_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 5;
2835
2836 /**
2837 * The number of operations of the '<em>Class Declaration</em>' class.
2838 * <!-- begin-user-doc -->
2839 * <!-- end-user-doc -->
2840 * @generated
2841 * @ordered
2842 */
2843 int CLASS_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
2844
2845 /**
2846 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl <em>Enum Declaration</em>}' class.
2847 * <!-- begin-user-doc -->
2848 * <!-- end-user-doc -->
2849 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl
2850 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumDeclaration()
2851 * @generated
2852 */
2853 int ENUM_DECLARATION = 57;
2854
2855 /**
2856 * The feature id for the '<em><b>Literals</b></em>' containment reference list.
2857 * <!-- begin-user-doc -->
2858 * <!-- end-user-doc -->
2859 * @generated
2860 * @ordered
2861 */
2862 int ENUM_DECLARATION__LITERALS = STATEMENT_FEATURE_COUNT + 0;
2863
2864 /**
2865 * The feature id for the '<em><b>Name</b></em>' attribute.
2866 * <!-- begin-user-doc -->
2867 * <!-- end-user-doc -->
2868 * @generated
2869 * @ordered
2870 */
2871 int ENUM_DECLARATION__NAME = STATEMENT_FEATURE_COUNT + 1;
2872
2873 /**
2874 * The number of structural features of the '<em>Enum Declaration</em>' class.
2875 * <!-- begin-user-doc -->
2876 * <!-- end-user-doc -->
2877 * @generated
2878 * @ordered
2879 */
2880 int ENUM_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
2881
2882 /**
2883 * The number of operations of the '<em>Enum Declaration</em>' class.
2884 * <!-- begin-user-doc -->
2885 * <!-- end-user-doc -->
2886 * @generated
2887 * @ordered
2888 */
2889 int ENUM_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
2890
2891 /**
2892 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl <em>Enum Literal</em>}' class.
2893 * <!-- begin-user-doc -->
2894 * <!-- end-user-doc -->
2895 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl
2896 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumLiteral()
2897 * @generated
2898 */
2899 int ENUM_LITERAL = 58;
2900
2901 /**
2902 * The feature id for the '<em><b>Name</b></em>' attribute.
2903 * <!-- begin-user-doc -->
2904 * <!-- end-user-doc -->
2905 * @generated
2906 * @ordered
2907 */
2908 int ENUM_LITERAL__NAME = 0;
2909
2910 /**
2911 * The number of structural features of the '<em>Enum Literal</em>' class.
2912 * <!-- begin-user-doc -->
2913 * <!-- end-user-doc -->
2914 * @generated
2915 * @ordered
2916 */
2917 int ENUM_LITERAL_FEATURE_COUNT = 1;
2918
2919 /**
2920 * The number of operations of the '<em>Enum Literal</em>' class.
2921 * <!-- begin-user-doc -->
2922 * <!-- end-user-doc -->
2923 * @generated
2924 * @ordered
2925 */
2926 int ENUM_LITERAL_OPERATION_COUNT = 0;
2927
2928 /**
2929 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl <em>Field</em>}' class.
2930 * <!-- begin-user-doc -->
2931 * <!-- end-user-doc -->
2932 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl
2933 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getField()
2934 * @generated
2935 */
2936 int FIELD = 59;
2937
2938 /**
2939 * The feature id for the '<em><b>Containment</b></em>' attribute.
2940 * <!-- begin-user-doc -->
2941 * <!-- end-user-doc -->
2942 * @generated
2943 * @ordered
2944 */
2945 int FIELD__CONTAINMENT = 0;
2946
2947 /**
2948 * The feature id for the '<em><b>Cross Reference</b></em>' attribute.
2949 * <!-- begin-user-doc -->
2950 * <!-- end-user-doc -->
2951 * @generated
2952 * @ordered
2953 */
2954 int FIELD__CROSS_REFERENCE = 1;
2955
2956 /**
2957 * The feature id for the '<em><b>Opposite</b></em>' reference.
2958 * <!-- begin-user-doc -->
2959 * <!-- end-user-doc -->
2960 * @generated
2961 * @ordered
2962 */
2963 int FIELD__OPPOSITE = 2;
2964
2965 /**
2966 * The feature id for the '<em><b>Multiplicity</b></em>' containment reference.
2967 * <!-- begin-user-doc -->
2968 * <!-- end-user-doc -->
2969 * @generated
2970 * @ordered
2971 */
2972 int FIELD__MULTIPLICITY = 3;
2973
2974 /**
2975 * The feature id for the '<em><b>Type</b></em>' reference.
2976 * <!-- begin-user-doc -->
2977 * <!-- end-user-doc -->
2978 * @generated
2979 * @ordered
2980 */
2981 int FIELD__TYPE = 4;
2982
2983 /**
2984 * The feature id for the '<em><b>Name</b></em>' attribute.
2985 * <!-- begin-user-doc -->
2986 * <!-- end-user-doc -->
2987 * @generated
2988 * @ordered
2989 */
2990 int FIELD__NAME = 5;
2991
2992 /**
2993 * The number of structural features of the '<em>Field</em>' class.
2994 * <!-- begin-user-doc -->
2995 * <!-- end-user-doc -->
2996 * @generated
2997 * @ordered
2998 */
2999 int FIELD_FEATURE_COUNT = 6;
3000
3001 /**
3002 * The number of operations of the '<em>Field</em>' class.
3003 * <!-- begin-user-doc -->
3004 * <!-- end-user-doc -->
3005 * @generated
3006 * @ordered
3007 */
3008 int FIELD_OPERATION_COUNT = 0;
3009
3010 /**
3011 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl <em>Multiplicity</em>}' class.
3012 * <!-- begin-user-doc -->
3013 * <!-- end-user-doc -->
3014 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl
3015 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicity()
3016 * @generated
3017 */
3018 int MULTIPLICITY = 60;
3019
3020 /**
3021 * The number of structural features of the '<em>Multiplicity</em>' class.
3022 * <!-- begin-user-doc -->
3023 * <!-- end-user-doc -->
3024 * @generated
3025 * @ordered
3026 */
3027 int MULTIPLICITY_FEATURE_COUNT = 0;
3028
3029 /**
3030 * The number of operations of the '<em>Multiplicity</em>' class.
3031 * <!-- begin-user-doc -->
3032 * <!-- end-user-doc -->
3033 * @generated
3034 * @ordered
3035 */
3036 int MULTIPLICITY_OPERATION_COUNT = 0;
3037
3038 /**
3039 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl <em>Default Assertion</em>}' class.
3040 * <!-- begin-user-doc -->
3041 * <!-- end-user-doc -->
3042 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl
3043 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultAssertion()
3044 * @generated
3045 */
3046 int DEFAULT_ASSERTION = 61;
3047
3048 /**
3049 * The feature id for the '<em><b>Expression</b></em>' containment reference.
3050 * <!-- begin-user-doc -->
3051 * <!-- end-user-doc -->
3052 * @generated
3053 * @ordered
3054 */
3055 int DEFAULT_ASSERTION__EXPRESSION = ABSTRACT_ASSERTION__EXPRESSION;
3056
3057 /**
3058 * The feature id for the '<em><b>Range</b></em>' containment reference.
3059 * <!-- begin-user-doc -->
3060 * <!-- end-user-doc -->
3061 * @generated
3062 * @ordered
3063 */
3064 int DEFAULT_ASSERTION__RANGE = ABSTRACT_ASSERTION__RANGE;
3065
3066 /**
3067 * The number of structural features of the '<em>Default Assertion</em>' class.
3068 * <!-- begin-user-doc -->
3069 * <!-- end-user-doc -->
3070 * @generated
3071 * @ordered
3072 */
3073 int DEFAULT_ASSERTION_FEATURE_COUNT = ABSTRACT_ASSERTION_FEATURE_COUNT + 0;
3074
3075 /**
3076 * The number of operations of the '<em>Default Assertion</em>' class.
3077 * <!-- begin-user-doc -->
3078 * <!-- end-user-doc -->
3079 * @generated
3080 * @ordered
3081 */
3082 int DEFAULT_ASSERTION_OPERATION_COUNT = ABSTRACT_ASSERTION_OPERATION_COUNT + 0;
3083
3084 /**
3085 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl <em>Assertion</em>}' class.
3086 * <!-- begin-user-doc -->
3087 * <!-- end-user-doc -->
3088 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl
3089 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAssertion()
3090 * @generated
3091 */
3092 int ASSERTION = 62;
3093
3094 /**
3095 * The feature id for the '<em><b>Expression</b></em>' containment reference.
3096 * <!-- begin-user-doc -->
3097 * <!-- end-user-doc -->
3098 * @generated
3099 * @ordered
3100 */
3101 int ASSERTION__EXPRESSION = ABSTRACT_ASSERTION__EXPRESSION;
3102
3103 /**
3104 * The feature id for the '<em><b>Range</b></em>' containment reference.
3105 * <!-- begin-user-doc -->
3106 * <!-- end-user-doc -->
3107 * @generated
3108 * @ordered
3109 */
3110 int ASSERTION__RANGE = ABSTRACT_ASSERTION__RANGE;
3111
3112 /**
3113 * The number of structural features of the '<em>Assertion</em>' class.
3114 * <!-- begin-user-doc -->
3115 * <!-- end-user-doc -->
3116 * @generated
3117 * @ordered
3118 */
3119 int ASSERTION_FEATURE_COUNT = ABSTRACT_ASSERTION_FEATURE_COUNT + 0;
3120
3121 /**
3122 * The number of operations of the '<em>Assertion</em>' class.
3123 * <!-- begin-user-doc -->
3124 * <!-- end-user-doc -->
3125 * @generated
3126 * @ordered
3127 */
3128 int ASSERTION_OPERATION_COUNT = ABSTRACT_ASSERTION_OPERATION_COUNT + 0;
3129
3130 /**
3131 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl <em>Unbounded Multiplicity</em>}' class.
3132 * <!-- begin-user-doc -->
3133 * <!-- end-user-doc -->
3134 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl
3135 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnboundedMultiplicity()
3136 * @generated
3137 */
3138 int UNBOUNDED_MULTIPLICITY = 63;
3139
3140 /**
3141 * The number of structural features of the '<em>Unbounded Multiplicity</em>' class.
3142 * <!-- begin-user-doc -->
3143 * <!-- end-user-doc -->
3144 * @generated
3145 * @ordered
3146 */
3147 int UNBOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 0;
3148
3149 /**
3150 * The number of operations of the '<em>Unbounded Multiplicity</em>' class.
3151 * <!-- begin-user-doc -->
3152 * <!-- end-user-doc -->
3153 * @generated
3154 * @ordered
3155 */
3156 int UNBOUNDED_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0;
3157
3158 /**
3159 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl <em>Exact Multiplicity</em>}' class.
3160 * <!-- begin-user-doc -->
3161 * <!-- end-user-doc -->
3162 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl
3163 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactMultiplicity()
3164 * @generated
3165 */
3166 int EXACT_MULTIPLICITY = 64;
3167
3168 /**
3169 * The feature id for the '<em><b>Value</b></em>' attribute.
3170 * <!-- begin-user-doc -->
3171 * <!-- end-user-doc -->
3172 * @generated
3173 * @ordered
3174 */
3175 int EXACT_MULTIPLICITY__VALUE = MULTIPLICITY_FEATURE_COUNT + 0;
3176
3177 /**
3178 * The number of structural features of the '<em>Exact Multiplicity</em>' class.
3179 * <!-- begin-user-doc -->
3180 * <!-- end-user-doc -->
3181 * @generated
3182 * @ordered
3183 */
3184 int EXACT_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 1;
3185
3186 /**
3187 * The number of operations of the '<em>Exact Multiplicity</em>' class.
3188 * <!-- begin-user-doc -->
3189 * <!-- end-user-doc -->
3190 * @generated
3191 * @ordered
3192 */
3193 int EXACT_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0;
3194
3195 /**
3196 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl <em>Bounded Multiplicity</em>}' class.
3197 * <!-- begin-user-doc -->
3198 * <!-- end-user-doc -->
3199 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl
3200 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedMultiplicity()
3201 * @generated
3202 */
3203 int BOUNDED_MULTIPLICITY = 65;
3204
3205 /**
3206 * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
3207 * <!-- begin-user-doc -->
3208 * <!-- end-user-doc -->
3209 * @generated
3210 * @ordered
3211 */
3212 int BOUNDED_MULTIPLICITY__LOWER_BOUND = MULTIPLICITY_FEATURE_COUNT + 0;
3213
3214 /**
3215 * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
3216 * <!-- begin-user-doc -->
3217 * <!-- end-user-doc -->
3218 * @generated
3219 * @ordered
3220 */
3221 int BOUNDED_MULTIPLICITY__UPPER_BOUND = MULTIPLICITY_FEATURE_COUNT + 1;
3222
3223 /**
3224 * The number of structural features of the '<em>Bounded Multiplicity</em>' class.
3225 * <!-- begin-user-doc -->
3226 * <!-- end-user-doc -->
3227 * @generated
3228 * @ordered
3229 */
3230 int BOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 2;
3231
3232 /**
3233 * The number of operations of the '<em>Bounded Multiplicity</em>' class.
3234 * <!-- begin-user-doc -->
3235 * <!-- end-user-doc -->
3236 * @generated
3237 * @ordered
3238 */
3239 int BOUNDED_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0;
3240
3241 /**
3242 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes <em>Inline Predicate Attrributes</em>}' class.
3243 * <!-- begin-user-doc -->
3244 * <!-- end-user-doc -->
3245 * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes
3246 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInlinePredicateAttrributes()
3247 * @generated
3248 */
3249 int INLINE_PREDICATE_ATTRRIBUTES = 66;
3250
3251 /**
3252 * The feature id for the '<em><b>Error</b></em>' attribute.
3253 * <!-- begin-user-doc -->
3254 * <!-- end-user-doc -->
3255 * @generated
3256 * @ordered
3257 */
3258 int INLINE_PREDICATE_ATTRRIBUTES__ERROR = 0;
3259
3260 /**
3261 * The feature id for the '<em><b>Functional</b></em>' attribute.
3262 * <!-- begin-user-doc -->
3263 * <!-- end-user-doc -->
3264 * @generated
3265 * @ordered
3266 */
3267 int INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL = 1;
3268
3269 /**
3270 * The number of structural features of the '<em>Inline Predicate Attrributes</em>' class.
3271 * <!-- begin-user-doc -->
3272 * <!-- end-user-doc -->
3273 * @generated
3274 * @ordered
3275 */
3276 int INLINE_PREDICATE_ATTRRIBUTES_FEATURE_COUNT = 2;
3277
3278 /**
3279 * The number of operations of the '<em>Inline Predicate Attrributes</em>' class.
3280 * <!-- begin-user-doc -->
3281 * <!-- end-user-doc -->
3282 * @generated
3283 * @ordered
3284 */
3285 int INLINE_PREDICATE_ATTRRIBUTES_OPERATION_COUNT = 0;
3286
3287 /**
3288 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl <em>Aggregation Operator</em>}' class.
3289 * <!-- begin-user-doc -->
3290 * <!-- end-user-doc -->
3291 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl
3292 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregationOperator()
3293 * @generated
3294 */
3295 int AGGREGATION_OPERATOR = 67;
3296
3297 /**
3298 * The feature id for the '<em><b>Name</b></em>' attribute.
3299 * <!-- begin-user-doc -->
3300 * <!-- end-user-doc -->
3301 * @generated
3302 * @ordered
3303 */
3304 int AGGREGATION_OPERATOR__NAME = SYMBOL__NAME;
3305
3306 /**
3307 * The feature id for the '<em><b>Argument Type</b></em>' reference.
3308 * <!-- begin-user-doc -->
3309 * <!-- end-user-doc -->
3310 * @generated
3311 * @ordered
3312 */
3313 int AGGREGATION_OPERATOR__ARGUMENT_TYPE = SYMBOL_FEATURE_COUNT + 0;
3314
3315 /**
3316 * The feature id for the '<em><b>Result Type</b></em>' reference.
3317 * <!-- begin-user-doc -->
3318 * <!-- end-user-doc -->
3319 * @generated
3320 * @ordered
3321 */
3322 int AGGREGATION_OPERATOR__RESULT_TYPE = SYMBOL_FEATURE_COUNT + 1;
3323
3324 /**
3325 * The number of structural features of the '<em>Aggregation Operator</em>' class.
3326 * <!-- begin-user-doc -->
3327 * <!-- end-user-doc -->
3328 * @generated
3329 * @ordered
3330 */
3331 int AGGREGATION_OPERATOR_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 2;
3332
3333 /**
3334 * The number of operations of the '<em>Aggregation Operator</em>' class.
3335 * <!-- begin-user-doc -->
3336 * <!-- end-user-doc -->
3337 * @generated
3338 * @ordered
3339 */
3340 int AGGREGATION_OPERATOR_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0;
3341
3342 /**
3343 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl <em>Problem</em>}' class.
3344 * <!-- begin-user-doc -->
3345 * <!-- end-user-doc -->
3346 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl
3347 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem()
3348 * @generated
3349 */
3350 int PROBLEM = 68;
3351
3352 /**
3353 * The feature id for the '<em><b>Name</b></em>' attribute.
3354 * <!-- begin-user-doc -->
3355 * <!-- end-user-doc -->
3356 * @generated
3357 * @ordered
3358 */
3359 int PROBLEM__NAME = 0;
3360
3361 /**
3362 * The feature id for the '<em><b>Statements</b></em>' containment reference list.
3363 * <!-- begin-user-doc -->
3364 * <!-- end-user-doc -->
3365 * @generated
3366 * @ordered
3367 */
3368 int PROBLEM__STATEMENTS = 1;
3369
3370 /**
3371 * The feature id for the '<em><b>Symbols</b></em>' containment reference list.
3372 * <!-- begin-user-doc -->
3373 * <!-- end-user-doc -->
3374 * @generated
3375 * @ordered
3376 */
3377 int PROBLEM__SYMBOLS = 2;
3378
3379 /**
3380 * The feature id for the '<em><b>Imports</b></em>' containment reference list.
3381 * <!-- begin-user-doc -->
3382 * <!-- end-user-doc -->
3383 * @generated
3384 * @ordered
3385 */
3386 int PROBLEM__IMPORTS = 3;
3387
3388 /**
3389 * The number of structural features of the '<em>Problem</em>' class.
3390 * <!-- begin-user-doc -->
3391 * <!-- end-user-doc -->
3392 * @generated
3393 * @ordered
3394 */
3395 int PROBLEM_FEATURE_COUNT = 4;
3396
3397 /**
3398 * The number of operations of the '<em>Problem</em>' class.
3399 * <!-- begin-user-doc -->
3400 * <!-- end-user-doc -->
3401 * @generated
3402 * @ordered
3403 */
3404 int PROBLEM_OPERATION_COUNT = 0;
3405
3406 /**
3407 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl <em>Typed Star Argument</em>}' class.
3408 * <!-- begin-user-doc -->
3409 * <!-- end-user-doc -->
3410 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl
3411 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedStarArgument()
3412 * @generated
3413 */
3414 int TYPED_STAR_ARGUMENT = 69;
3415
3416 /**
3417 * The feature id for the '<em><b>Type Reference</b></em>' containment reference.
3418 * <!-- begin-user-doc -->
3419 * <!-- end-user-doc -->
3420 * @generated
3421 * @ordered
3422 */
3423 int TYPED_STAR_ARGUMENT__TYPE_REFERENCE = TYPED_ARGUMENT__TYPE_REFERENCE;
3424
3425 /**
3426 * The number of structural features of the '<em>Typed Star Argument</em>' class.
3427 * <!-- begin-user-doc -->
3428 * <!-- end-user-doc -->
3429 * @generated
3430 * @ordered
3431 */
3432 int TYPED_STAR_ARGUMENT_FEATURE_COUNT = TYPED_ARGUMENT_FEATURE_COUNT + 0;
3433
3434 /**
3435 * The number of operations of the '<em>Typed Star Argument</em>' class.
3436 * <!-- begin-user-doc -->
3437 * <!-- end-user-doc -->
3438 * @generated
3439 * @ordered
3440 */
3441 int TYPED_STAR_ARGUMENT_OPERATION_COUNT = TYPED_ARGUMENT_OPERATION_COUNT + 0;
3442
3443 /**
3444 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl <em>Typed Variable Argument</em>}' class.
3445 * <!-- begin-user-doc -->
3446 * <!-- end-user-doc -->
3447 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl
3448 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedVariableArgument()
3449 * @generated
3450 */
3451 int TYPED_VARIABLE_ARGUMENT = 70;
3452
3453 /**
3454 * The feature id for the '<em><b>Type Reference</b></em>' containment reference.
3455 * <!-- begin-user-doc -->
3456 * <!-- end-user-doc -->
3457 * @generated
3458 * @ordered
3459 */
3460 int TYPED_VARIABLE_ARGUMENT__TYPE_REFERENCE = TYPED_ARGUMENT__TYPE_REFERENCE;
3461
3462 /**
3463 * The feature id for the '<em><b>Name</b></em>' attribute.
3464 * <!-- begin-user-doc -->
3465 * <!-- end-user-doc -->
3466 * @generated
3467 * @ordered
3468 */
3469 int TYPED_VARIABLE_ARGUMENT__NAME = TYPED_ARGUMENT_FEATURE_COUNT + 0;
3470
3471 /**
3472 * The number of structural features of the '<em>Typed Variable Argument</em>' class.
3473 * <!-- begin-user-doc -->
3474 * <!-- end-user-doc -->
3475 * @generated
3476 * @ordered
3477 */
3478 int TYPED_VARIABLE_ARGUMENT_FEATURE_COUNT = TYPED_ARGUMENT_FEATURE_COUNT + 1;
3479
3480 /**
3481 * The number of operations of the '<em>Typed Variable Argument</em>' class.
3482 * <!-- begin-user-doc -->
3483 * <!-- end-user-doc -->
3484 * @generated
3485 * @ordered
3486 */
3487 int TYPED_VARIABLE_ARGUMENT_OPERATION_COUNT = TYPED_ARGUMENT_OPERATION_COUNT + 0;
3488
3489 /**
3490 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl <em>Unnamed Error Predicate Defintion</em>}' class.
3491 * <!-- begin-user-doc -->
3492 * <!-- end-user-doc -->
3493 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl
3494 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedErrorPredicateDefintion()
3495 * @generated
3496 */
3497 int UNNAMED_ERROR_PREDICATE_DEFINTION = 71;
3498
3499 /**
3500 * The feature id for the '<em><b>Argument List</b></em>' containment reference.
3501 * <!-- begin-user-doc -->
3502 * <!-- end-user-doc -->
3503 * @generated
3504 * @ordered
3505 */
3506 int UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST = STATEMENT_FEATURE_COUNT + 0;
3507
3508 /**
3509 * The feature id for the '<em><b>Body</b></em>' containment reference.
3510 * <!-- begin-user-doc -->
3511 * <!-- end-user-doc -->
3512 * @generated
3513 * @ordered
3514 */
3515 int UNNAMED_ERROR_PREDICATE_DEFINTION__BODY = STATEMENT_FEATURE_COUNT + 1;
3516
3517 /**
3518 * The number of structural features of the '<em>Unnamed Error Predicate Defintion</em>' class.
3519 * <!-- begin-user-doc -->
3520 * <!-- end-user-doc -->
3521 * @generated
3522 * @ordered
3523 */
3524 int UNNAMED_ERROR_PREDICATE_DEFINTION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
3525
3526 /**
3527 * The number of operations of the '<em>Unnamed Error Predicate Defintion</em>' class.
3528 * <!-- begin-user-doc -->
3529 * <!-- end-user-doc -->
3530 * @generated
3531 * @ordered
3532 */
3533 int UNNAMED_ERROR_PREDICATE_DEFINTION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
3534
3535 /**
3536 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl <em>Objective Declaration</em>}' class.
3537 * <!-- begin-user-doc -->
3538 * <!-- end-user-doc -->
3539 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl
3540 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveDeclaration()
3541 * @generated
3542 */
3543 int OBJECTIVE_DECLARATION = 72;
3544
3545 /**
3546 * The feature id for the '<em><b>Kind</b></em>' attribute.
3547 * <!-- begin-user-doc -->
3548 * <!-- end-user-doc -->
3549 * @generated
3550 * @ordered
3551 */
3552 int OBJECTIVE_DECLARATION__KIND = STATEMENT_FEATURE_COUNT + 0;
3553
3554 /**
3555 * The feature id for the '<em><b>Objective</b></em>' containment reference.
3556 * <!-- begin-user-doc -->
3557 * <!-- end-user-doc -->
3558 * @generated
3559 * @ordered
3560 */
3561 int OBJECTIVE_DECLARATION__OBJECTIVE = STATEMENT_FEATURE_COUNT + 1;
3562
3563 /**
3564 * The number of structural features of the '<em>Objective Declaration</em>' class.
3565 * <!-- begin-user-doc -->
3566 * <!-- end-user-doc -->
3567 * @generated
3568 * @ordered
3569 */
3570 int OBJECTIVE_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
3571
3572 /**
3573 * The number of operations of the '<em>Objective Declaration</em>' class.
3574 * <!-- begin-user-doc -->
3575 * <!-- end-user-doc -->
3576 * @generated
3577 * @ordered
3578 */
3579 int OBJECTIVE_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
3580
3581 /**
3582 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl <em>Scope Declaration</em>}' class.
3583 * <!-- begin-user-doc -->
3584 * <!-- end-user-doc -->
3585 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl
3586 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getScopeDeclaration()
3587 * @generated
3588 */
3589 int SCOPE_DECLARATION = 73;
3590
3591 /**
3592 * The feature id for the '<em><b>Type</b></em>' reference.
3593 * <!-- begin-user-doc -->
3594 * <!-- end-user-doc -->
3595 * @generated
3596 * @ordered
3597 */
3598 int SCOPE_DECLARATION__TYPE = STATEMENT_FEATURE_COUNT + 0;
3599
3600 /**
3601 * The number of structural features of the '<em>Scope Declaration</em>' class.
3602 * <!-- begin-user-doc -->
3603 * <!-- end-user-doc -->
3604 * @generated
3605 * @ordered
3606 */
3607 int SCOPE_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1;
3608
3609 /**
3610 * The number of operations of the '<em>Scope Declaration</em>' class.
3611 * <!-- begin-user-doc -->
3612 * <!-- end-user-doc -->
3613 * @generated
3614 * @ordered
3615 */
3616 int SCOPE_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
3617
3618 /**
3619 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl <em>Exact Scope</em>}' class.
3620 * <!-- begin-user-doc -->
3621 * <!-- end-user-doc -->
3622 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl
3623 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactScope()
3624 * @generated
3625 */
3626 int EXACT_SCOPE = 74;
3627
3628 /**
3629 * The feature id for the '<em><b>Type</b></em>' reference.
3630 * <!-- begin-user-doc -->
3631 * <!-- end-user-doc -->
3632 * @generated
3633 * @ordered
3634 */
3635 int EXACT_SCOPE__TYPE = SCOPE_DECLARATION__TYPE;
3636
3637 /**
3638 * The feature id for the '<em><b>Size</b></em>' attribute.
3639 * <!-- begin-user-doc -->
3640 * <!-- end-user-doc -->
3641 * @generated
3642 * @ordered
3643 */
3644 int EXACT_SCOPE__SIZE = SCOPE_DECLARATION_FEATURE_COUNT + 0;
3645
3646 /**
3647 * The number of structural features of the '<em>Exact Scope</em>' class.
3648 * <!-- begin-user-doc -->
3649 * <!-- end-user-doc -->
3650 * @generated
3651 * @ordered
3652 */
3653 int EXACT_SCOPE_FEATURE_COUNT = SCOPE_DECLARATION_FEATURE_COUNT + 1;
3654
3655 /**
3656 * The number of operations of the '<em>Exact Scope</em>' class.
3657 * <!-- begin-user-doc -->
3658 * <!-- end-user-doc -->
3659 * @generated
3660 * @ordered
3661 */
3662 int EXACT_SCOPE_OPERATION_COUNT = SCOPE_DECLARATION_OPERATION_COUNT + 0;
3663
3664 /**
3665 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl <em>Bounded Scope</em>}' class.
3666 * <!-- begin-user-doc -->
3667 * <!-- end-user-doc -->
3668 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl
3669 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedScope()
3670 * @generated
3671 */
3672 int BOUNDED_SCOPE = 75;
3673
3674 /**
3675 * The feature id for the '<em><b>Type</b></em>' reference.
3676 * <!-- begin-user-doc -->
3677 * <!-- end-user-doc -->
3678 * @generated
3679 * @ordered
3680 */
3681 int BOUNDED_SCOPE__TYPE = SCOPE_DECLARATION__TYPE;
3682
3683 /**
3684 * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
3685 * <!-- begin-user-doc -->
3686 * <!-- end-user-doc -->
3687 * @generated
3688 * @ordered
3689 */
3690 int BOUNDED_SCOPE__LOWER_BOUND = SCOPE_DECLARATION_FEATURE_COUNT + 0;
3691
3692 /**
3693 * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
3694 * <!-- begin-user-doc -->
3695 * <!-- end-user-doc -->
3696 * @generated
3697 * @ordered
3698 */
3699 int BOUNDED_SCOPE__UPPER_BOUND = SCOPE_DECLARATION_FEATURE_COUNT + 1;
3700
3701 /**
3702 * The number of structural features of the '<em>Bounded Scope</em>' class.
3703 * <!-- begin-user-doc -->
3704 * <!-- end-user-doc -->
3705 * @generated
3706 * @ordered
3707 */
3708 int BOUNDED_SCOPE_FEATURE_COUNT = SCOPE_DECLARATION_FEATURE_COUNT + 2;
3709
3710 /**
3711 * The number of operations of the '<em>Bounded Scope</em>' class.
3712 * <!-- begin-user-doc -->
3713 * <!-- end-user-doc -->
3714 * @generated
3715 * @ordered
3716 */
3717 int BOUNDED_SCOPE_OPERATION_COUNT = SCOPE_DECLARATION_OPERATION_COUNT + 0;
3718
3719 /**
3720 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl <em>Lower Bounded Scope</em>}' class.
3721 * <!-- begin-user-doc -->
3722 * <!-- end-user-doc -->
3723 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl
3724 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLowerBoundedScope()
3725 * @generated
3726 */
3727 int LOWER_BOUNDED_SCOPE = 76;
3728
3729 /**
3730 * The feature id for the '<em><b>Type</b></em>' reference.
3731 * <!-- begin-user-doc -->
3732 * <!-- end-user-doc -->
3733 * @generated
3734 * @ordered
3735 */
3736 int LOWER_BOUNDED_SCOPE__TYPE = SCOPE_DECLARATION__TYPE;
3737
3738 /**
3739 * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
3740 * <!-- begin-user-doc -->
3741 * <!-- end-user-doc -->
3742 * @generated
3743 * @ordered
3744 */
3745 int LOWER_BOUNDED_SCOPE__LOWER_BOUND = SCOPE_DECLARATION_FEATURE_COUNT + 0;
3746
3747 /**
3748 * The number of structural features of the '<em>Lower Bounded Scope</em>' class.
3749 * <!-- begin-user-doc -->
3750 * <!-- end-user-doc -->
3751 * @generated
3752 * @ordered
3753 */
3754 int LOWER_BOUNDED_SCOPE_FEATURE_COUNT = SCOPE_DECLARATION_FEATURE_COUNT + 1;
3755
3756 /**
3757 * The number of operations of the '<em>Lower Bounded Scope</em>' class.
3758 * <!-- begin-user-doc -->
3759 * <!-- end-user-doc -->
3760 * @generated
3761 * @ordered
3762 */
3763 int LOWER_BOUNDED_SCOPE_OPERATION_COUNT = SCOPE_DECLARATION_OPERATION_COUNT + 0;
3764
3765 /**
3766 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl <em>Import</em>}' class.
3767 * <!-- begin-user-doc -->
3768 * <!-- end-user-doc -->
3769 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl
3770 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getImport()
3771 * @generated
3772 */
3773 int IMPORT = 78;
3774
3775 /**
3776 * The feature id for the '<em><b>Alias</b></em>' attribute.
3777 * <!-- begin-user-doc -->
3778 * <!-- end-user-doc -->
3779 * @generated
3780 * @ordered
3781 */
3782 int IMPORT__ALIAS = 0;
3783
3784 /**
3785 * The number of structural features of the '<em>Import</em>' class.
3786 * <!-- begin-user-doc -->
3787 * <!-- end-user-doc -->
3788 * @generated
3789 * @ordered
3790 */
3791 int IMPORT_FEATURE_COUNT = 1;
3792
3793 /**
3794 * The number of operations of the '<em>Import</em>' class.
3795 * <!-- begin-user-doc -->
3796 * <!-- end-user-doc -->
3797 * @generated
3798 * @ordered
3799 */
3800 int IMPORT_OPERATION_COUNT = 0;
3801
3802 /**
3803 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl <em>Namespace Import</em>}' class.
3804 * <!-- begin-user-doc -->
3805 * <!-- end-user-doc -->
3806 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl
3807 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamespaceImport()
3808 * @generated
3809 */
3810 int NAMESPACE_IMPORT = 77;
3811
3812 /**
3813 * The feature id for the '<em><b>Alias</b></em>' attribute.
3814 * <!-- begin-user-doc -->
3815 * <!-- end-user-doc -->
3816 * @generated
3817 * @ordered
3818 */
3819 int NAMESPACE_IMPORT__ALIAS = IMPORT__ALIAS;
3820
3821 /**
3822 * The feature id for the '<em><b>Imported Namespace</b></em>' attribute.
3823 * <!-- begin-user-doc -->
3824 * <!-- end-user-doc -->
3825 * @generated
3826 * @ordered
3827 */
3828 int NAMESPACE_IMPORT__IMPORTED_NAMESPACE = IMPORT_FEATURE_COUNT + 0;
3829
3830 /**
3831 * The number of structural features of the '<em>Namespace Import</em>' class.
3832 * <!-- begin-user-doc -->
3833 * <!-- end-user-doc -->
3834 * @generated
3835 * @ordered
3836 */
3837 int NAMESPACE_IMPORT_FEATURE_COUNT = IMPORT_FEATURE_COUNT + 1;
3838
3839 /**
3840 * The number of operations of the '<em>Namespace Import</em>' class.
3841 * <!-- begin-user-doc -->
3842 * <!-- end-user-doc -->
3843 * @generated
3844 * @ordered
3845 */
3846 int NAMESPACE_IMPORT_OPERATION_COUNT = IMPORT_OPERATION_COUNT + 0;
3847
3848 /**
3849 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl <em>Uri Import</em>}' class.
3850 * <!-- begin-user-doc -->
3851 * <!-- end-user-doc -->
3852 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl
3853 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUriImport()
3854 * @generated
3855 */
3856 int URI_IMPORT = 79;
3857
3858 /**
3859 * The feature id for the '<em><b>Alias</b></em>' attribute.
3860 * <!-- begin-user-doc -->
3861 * <!-- end-user-doc -->
3862 * @generated
3863 * @ordered
3864 */
3865 int URI_IMPORT__ALIAS = IMPORT__ALIAS;
3866
3867 /**
3868 * The feature id for the '<em><b>Uri</b></em>' attribute.
3869 * <!-- begin-user-doc -->
3870 * <!-- end-user-doc -->
3871 * @generated
3872 * @ordered
3873 */
3874 int URI_IMPORT__URI = IMPORT_FEATURE_COUNT + 0;
3875
3876 /**
3877 * The number of structural features of the '<em>Uri Import</em>' class.
3878 * <!-- begin-user-doc -->
3879 * <!-- end-user-doc -->
3880 * @generated
3881 * @ordered
3882 */
3883 int URI_IMPORT_FEATURE_COUNT = IMPORT_FEATURE_COUNT + 1;
3884
3885 /**
3886 * The number of operations of the '<em>Uri Import</em>' class.
3887 * <!-- begin-user-doc -->
3888 * <!-- end-user-doc -->
3889 * @generated
3890 * @ordered
3891 */
3892 int URI_IMPORT_OPERATION_COUNT = IMPORT_OPERATION_COUNT + 0;
3893
3894 /**
3895 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator <em>Unary Operator</em>}' enum.
3896 * <!-- begin-user-doc -->
3897 * <!-- end-user-doc -->
3898 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator
3899 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryOperator()
3900 * @generated
3901 */
3902 int UNARY_OPERATOR = 80;
3903
3904 /**
3905 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator <em>Binary Operator</em>}' enum.
3906 * <!-- begin-user-doc -->
3907 * <!-- end-user-doc -->
3908 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator
3909 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryOperator()
3910 * @generated
3911 */
3912 int BINARY_OPERATOR = 81;
3913
3914 /**
3915 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue <em>Logic Value</em>}' enum.
3916 * <!-- begin-user-doc -->
3917 * <!-- end-user-doc -->
3918 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue
3919 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicValue()
3920 * @generated
3921 */
3922 int LOGIC_VALUE = 82;
3923
3924 /**
3925 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind <em>Objective Kind</em>}' enum.
3926 * <!-- begin-user-doc -->
3927 * <!-- end-user-doc -->
3928 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind
3929 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveKind()
3930 * @generated
3931 */
3932 int OBJECTIVE_KIND = 83;
3933
3934 /**
3935 * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind <em>Attribute Kind</em>}' enum.
3936 * <!-- begin-user-doc -->
3937 * <!-- end-user-doc -->
3938 * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind
3939 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttributeKind()
3940 * @generated
3941 */
3942 int ATTRIBUTE_KIND = 84;
3943
3944 /**
3945 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent <em>Path Component</em>}'.
3946 * <!-- begin-user-doc -->
3947 * <!-- end-user-doc -->
3948 * @return the meta object for class '<em>Path Component</em>'.
3949 * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent
3950 * @generated
3951 */
3952 EClass getPathComponent();
3953
3954 /**
3955 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol <em>Symbol</em>}'.
3956 * <!-- begin-user-doc -->
3957 * <!-- end-user-doc -->
3958 * @return the meta object for the reference '<em>Symbol</em>'.
3959 * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol()
3960 * @see #getPathComponent()
3961 * @generated
3962 */
3963 EReference getPathComponent_Symbol();
3964
3965 /**
3966 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse <em>Inverse</em>}'.
3967 * <!-- begin-user-doc -->
3968 * <!-- end-user-doc -->
3969 * @return the meta object for the attribute '<em>Inverse</em>'.
3970 * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse()
3971 * @see #getPathComponent()
3972 * @generated
3973 */
3974 EAttribute getPathComponent_Inverse();
3975
3976 /**
3977 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure <em>Transitive Closure</em>}'.
3978 * <!-- begin-user-doc -->
3979 * <!-- end-user-doc -->
3980 * @return the meta object for the attribute '<em>Transitive Closure</em>'.
3981 * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure()
3982 * @see #getPathComponent()
3983 * @generated
3984 */
3985 EAttribute getPathComponent_TransitiveClosure();
3986
3987 /**
3988 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure <em>Reflexive Transitive Closure</em>}'.
3989 * <!-- begin-user-doc -->
3990 * <!-- end-user-doc -->
3991 * @return the meta object for the attribute '<em>Reflexive Transitive Closure</em>'.
3992 * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure()
3993 * @see #getPathComponent()
3994 * @generated
3995 */
3996 EAttribute getPathComponent_ReflexiveTransitiveClosure();
3997
3998 /**
3999 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol <em>Symbol</em>}'.
4000 * <!-- begin-user-doc -->
4001 * <!-- end-user-doc -->
4002 * @return the meta object for class '<em>Symbol</em>'.
4003 * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol
4004 * @generated
4005 */
4006 EClass getSymbol();
4007
4008 /**
4009 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName <em>Name</em>}'.
4010 * <!-- begin-user-doc -->
4011 * <!-- end-user-doc -->
4012 * @return the meta object for the attribute '<em>Name</em>'.
4013 * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName()
4014 * @see #getSymbol()
4015 * @generated
4016 */
4017 EAttribute getSymbol_Name();
4018
4019 /**
4020 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Call <em>Call</em>}'.
4021 * <!-- begin-user-doc -->
4022 * <!-- end-user-doc -->
4023 * @return the meta object for class '<em>Call</em>'.
4024 * @see org.eclipse.viatra.solver.language.solverLanguage.Call
4025 * @generated
4026 */
4027 EClass getCall();
4028
4029 /**
4030 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor <em>Functor</em>}'.
4031 * <!-- begin-user-doc -->
4032 * <!-- end-user-doc -->
4033 * @return the meta object for the containment reference '<em>Functor</em>'.
4034 * @see org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor()
4035 * @see #getCall()
4036 * @generated
4037 */
4038 EReference getCall_Functor();
4039
4040 /**
4041 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList <em>Argument List</em>}'.
4042 * <!-- begin-user-doc -->
4043 * <!-- end-user-doc -->
4044 * @return the meta object for the containment reference '<em>Argument List</em>'.
4045 * @see org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList()
4046 * @see #getCall()
4047 * @generated
4048 */
4049 EReference getCall_ArgumentList();
4050
4051 /**
4052 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference <em>Reference</em>}'.
4053 * <!-- begin-user-doc -->
4054 * <!-- end-user-doc -->
4055 * @return the meta object for class '<em>Reference</em>'.
4056 * @see org.eclipse.viatra.solver.language.solverLanguage.Reference
4057 * @generated
4058 */
4059 EClass getReference();
4060
4061 /**
4062 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getComponents <em>Components</em>}'.
4063 * <!-- begin-user-doc -->
4064 * <!-- end-user-doc -->
4065 * @return the meta object for the containment reference list '<em>Components</em>'.
4066 * @see org.eclipse.viatra.solver.language.solverLanguage.Reference#getComponents()
4067 * @see #getReference()
4068 * @generated
4069 */
4070 EReference getReference_Components();
4071
4072 /**
4073 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression <em>Expression</em>}'.
4074 * <!-- begin-user-doc -->
4075 * <!-- end-user-doc -->
4076 * @return the meta object for class '<em>Expression</em>'.
4077 * @see org.eclipse.viatra.solver.language.solverLanguage.Expression
4078 * @generated
4079 */
4080 EClass getExpression();
4081
4082 /**
4083 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression#getExistsVariables <em>Exists Variables</em>}'.
4084 * <!-- begin-user-doc -->
4085 * <!-- end-user-doc -->
4086 * @return the meta object for the containment reference list '<em>Exists Variables</em>'.
4087 * @see org.eclipse.viatra.solver.language.solverLanguage.Expression#getExistsVariables()
4088 * @see #getExpression()
4089 * @generated
4090 */
4091 EReference getExpression_ExistsVariables();
4092
4093 /**
4094 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Argument <em>Argument</em>}'.
4095 * <!-- begin-user-doc -->
4096 * <!-- end-user-doc -->
4097 * @return the meta object for class '<em>Argument</em>'.
4098 * @see org.eclipse.viatra.solver.language.solverLanguage.Argument
4099 * @generated
4100 */
4101 EClass getArgument();
4102
4103 /**
4104 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList <em>Argument List</em>}'.
4105 * <!-- begin-user-doc -->
4106 * <!-- end-user-doc -->
4107 * @return the meta object for class '<em>Argument List</em>'.
4108 * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList
4109 * @generated
4110 */
4111 EClass getArgumentList();
4112
4113 /**
4114 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments <em>Arguments</em>}'.
4115 * <!-- begin-user-doc -->
4116 * <!-- end-user-doc -->
4117 * @return the meta object for the containment reference list '<em>Arguments</em>'.
4118 * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments()
4119 * @see #getArgumentList()
4120 * @generated
4121 */
4122 EReference getArgumentList_Arguments();
4123
4124 /**
4125 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument <em>Expression Argument</em>}'.
4126 * <!-- begin-user-doc -->
4127 * <!-- end-user-doc -->
4128 * @return the meta object for class '<em>Expression Argument</em>'.
4129 * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument
4130 * @generated
4131 */
4132 EClass getExpressionArgument();
4133
4134 /**
4135 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression <em>Expression</em>}'.
4136 * <!-- begin-user-doc -->
4137 * <!-- end-user-doc -->
4138 * @return the meta object for the containment reference '<em>Expression</em>'.
4139 * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression()
4140 * @see #getExpressionArgument()
4141 * @generated
4142 */
4143 EReference getExpressionArgument_Expression();
4144
4145 /**
4146 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StarArgument <em>Star Argument</em>}'.
4147 * <!-- begin-user-doc -->
4148 * <!-- end-user-doc -->
4149 * @return the meta object for class '<em>Star Argument</em>'.
4150 * @see org.eclipse.viatra.solver.language.solverLanguage.StarArgument
4151 * @generated
4152 */
4153 EClass getStarArgument();
4154
4155 /**
4156 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument <em>Typed Argument</em>}'.
4157 * <!-- begin-user-doc -->
4158 * <!-- end-user-doc -->
4159 * @return the meta object for class '<em>Typed Argument</em>'.
4160 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument
4161 * @generated
4162 */
4163 EClass getTypedArgument();
4164
4165 /**
4166 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference <em>Type Reference</em>}'.
4167 * <!-- begin-user-doc -->
4168 * <!-- end-user-doc -->
4169 * @return the meta object for the containment reference '<em>Type Reference</em>'.
4170 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference()
4171 * @see #getTypedArgument()
4172 * @generated
4173 */
4174 EReference getTypedArgument_TypeReference();
4175
4176 /**
4177 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession <em>Multiary Expession</em>}'.
4178 * <!-- begin-user-doc -->
4179 * <!-- end-user-doc -->
4180 * @return the meta object for class '<em>Multiary Expession</em>'.
4181 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession
4182 * @generated
4183 */
4184 EClass getMultiaryExpession();
4185
4186 /**
4187 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession#getChildren <em>Children</em>}'.
4188 * <!-- begin-user-doc -->
4189 * <!-- end-user-doc -->
4190 * @return the meta object for the containment reference list '<em>Children</em>'.
4191 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession#getChildren()
4192 * @see #getMultiaryExpession()
4193 * @generated
4194 */
4195 EReference getMultiaryExpession_Children();
4196
4197 /**
4198 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable <em>Variable</em>}'.
4199 * <!-- begin-user-doc -->
4200 * <!-- end-user-doc -->
4201 * @return the meta object for class '<em>Variable</em>'.
4202 * @see org.eclipse.viatra.solver.language.solverLanguage.Variable
4203 * @generated
4204 */
4205 EClass getVariable();
4206
4207 /**
4208 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference <em>Type Reference</em>}'.
4209 * <!-- begin-user-doc -->
4210 * <!-- end-user-doc -->
4211 * @return the meta object for the containment reference '<em>Type Reference</em>'.
4212 * @see org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference()
4213 * @see #getVariable()
4214 * @generated
4215 */
4216 EReference getVariable_TypeReference();
4217
4218 /**
4219 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression <em>Unary Expression</em>}'.
4220 * <!-- begin-user-doc -->
4221 * <!-- end-user-doc -->
4222 * @return the meta object for class '<em>Unary Expression</em>'.
4223 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression
4224 * @generated
4225 */
4226 EClass getUnaryExpression();
4227
4228 /**
4229 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody <em>Body</em>}'.
4230 * <!-- begin-user-doc -->
4231 * <!-- end-user-doc -->
4232 * @return the meta object for the containment reference '<em>Body</em>'.
4233 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody()
4234 * @see #getUnaryExpression()
4235 * @generated
4236 */
4237 EReference getUnaryExpression_Body();
4238
4239 /**
4240 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp <em>Op</em>}'.
4241 * <!-- begin-user-doc -->
4242 * <!-- end-user-doc -->
4243 * @return the meta object for the attribute '<em>Op</em>'.
4244 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp()
4245 * @see #getUnaryExpression()
4246 * @generated
4247 */
4248 EAttribute getUnaryExpression_Op();
4249
4250 /**
4251 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression <em>Binary Expression</em>}'.
4252 * <!-- begin-user-doc -->
4253 * <!-- end-user-doc -->
4254 * @return the meta object for class '<em>Binary Expression</em>'.
4255 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression
4256 * @generated
4257 */
4258 EClass getBinaryExpression();
4259
4260 /**
4261 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp <em>Op</em>}'.
4262 * <!-- begin-user-doc -->
4263 * <!-- end-user-doc -->
4264 * @return the meta object for the attribute '<em>Op</em>'.
4265 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp()
4266 * @see #getBinaryExpression()
4267 * @generated
4268 */
4269 EAttribute getBinaryExpression_Op();
4270
4271 /**
4272 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft <em>Left</em>}'.
4273 * <!-- begin-user-doc -->
4274 * <!-- end-user-doc -->
4275 * @return the meta object for the containment reference '<em>Left</em>'.
4276 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft()
4277 * @see #getBinaryExpression()
4278 * @generated
4279 */
4280 EReference getBinaryExpression_Left();
4281
4282 /**
4283 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight <em>Right</em>}'.
4284 * <!-- begin-user-doc -->
4285 * <!-- end-user-doc -->
4286 * @return the meta object for the containment reference '<em>Right</em>'.
4287 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight()
4288 * @see #getBinaryExpression()
4289 * @generated
4290 */
4291 EReference getBinaryExpression_Right();
4292
4293 /**
4294 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction <em>Disjunction</em>}'.
4295 * <!-- begin-user-doc -->
4296 * <!-- end-user-doc -->
4297 * @return the meta object for class '<em>Disjunction</em>'.
4298 * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction
4299 * @generated
4300 */
4301 EClass getDisjunction();
4302
4303 /**
4304 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction <em>Conjunction</em>}'.
4305 * <!-- begin-user-doc -->
4306 * <!-- end-user-doc -->
4307 * @return the meta object for class '<em>Conjunction</em>'.
4308 * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction
4309 * @generated
4310 */
4311 EClass getConjunction();
4312
4313 /**
4314 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression <em>Conditional Expression</em>}'.
4315 * <!-- begin-user-doc -->
4316 * <!-- end-user-doc -->
4317 * @return the meta object for class '<em>Conditional Expression</em>'.
4318 * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression
4319 * @generated
4320 */
4321 EClass getConditionalExpression();
4322
4323 /**
4324 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition <em>Condition</em>}'.
4325 * <!-- begin-user-doc -->
4326 * <!-- end-user-doc -->
4327 * @return the meta object for the containment reference '<em>Condition</em>'.
4328 * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition()
4329 * @see #getConditionalExpression()
4330 * @generated
4331 */
4332 EReference getConditionalExpression_Condition();
4333
4334 /**
4335 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen <em>Then</em>}'.
4336 * <!-- begin-user-doc -->
4337 * <!-- end-user-doc -->
4338 * @return the meta object for the containment reference '<em>Then</em>'.
4339 * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen()
4340 * @see #getConditionalExpression()
4341 * @generated
4342 */
4343 EReference getConditionalExpression_Then();
4344
4345 /**
4346 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse <em>Else</em>}'.
4347 * <!-- begin-user-doc -->
4348 * <!-- end-user-doc -->
4349 * @return the meta object for the containment reference '<em>Else</em>'.
4350 * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse()
4351 * @see #getConditionalExpression()
4352 * @generated
4353 */
4354 EReference getConditionalExpression_Else();
4355
4356 /**
4357 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch <em>Switch</em>}'.
4358 * <!-- begin-user-doc -->
4359 * <!-- end-user-doc -->
4360 * @return the meta object for class '<em>Switch</em>'.
4361 * @see org.eclipse.viatra.solver.language.solverLanguage.Switch
4362 * @generated
4363 */
4364 EClass getSwitch();
4365
4366 /**
4367 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases <em>Cases</em>}'.
4368 * <!-- begin-user-doc -->
4369 * <!-- end-user-doc -->
4370 * @return the meta object for the containment reference list '<em>Cases</em>'.
4371 * @see org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases()
4372 * @see #getSwitch()
4373 * @generated
4374 */
4375 EReference getSwitch_Cases();
4376
4377 /**
4378 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Case <em>Case</em>}'.
4379 * <!-- begin-user-doc -->
4380 * <!-- end-user-doc -->
4381 * @return the meta object for class '<em>Case</em>'.
4382 * @see org.eclipse.viatra.solver.language.solverLanguage.Case
4383 * @generated
4384 */
4385 EClass getCase();
4386
4387 /**
4388 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition <em>Condition</em>}'.
4389 * <!-- begin-user-doc -->
4390 * <!-- end-user-doc -->
4391 * @return the meta object for the containment reference '<em>Condition</em>'.
4392 * @see org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition()
4393 * @see #getCase()
4394 * @generated
4395 */
4396 EReference getCase_Condition();
4397
4398 /**
4399 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody <em>Body</em>}'.
4400 * <!-- begin-user-doc -->
4401 * <!-- end-user-doc -->
4402 * @return the meta object for the containment reference '<em>Body</em>'.
4403 * @see org.eclipse.viatra.solver.language.solverLanguage.Case#getBody()
4404 * @see #getCase()
4405 * @generated
4406 */
4407 EReference getCase_Body();
4408
4409 /**
4410 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression <em>Let Expression</em>}'.
4411 * <!-- begin-user-doc -->
4412 * <!-- end-user-doc -->
4413 * @return the meta object for class '<em>Let Expression</em>'.
4414 * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression
4415 * @generated
4416 */
4417 EClass getLetExpression();
4418
4419 /**
4420 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBindings <em>Bindings</em>}'.
4421 * <!-- begin-user-doc -->
4422 * <!-- end-user-doc -->
4423 * @return the meta object for the containment reference list '<em>Bindings</em>'.
4424 * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBindings()
4425 * @see #getLetExpression()
4426 * @generated
4427 */
4428 EReference getLetExpression_Bindings();
4429
4430 /**
4431 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody <em>Body</em>}'.
4432 * <!-- begin-user-doc -->
4433 * <!-- end-user-doc -->
4434 * @return the meta object for the containment reference '<em>Body</em>'.
4435 * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody()
4436 * @see #getLetExpression()
4437 * @generated
4438 */
4439 EReference getLetExpression_Body();
4440
4441 /**
4442 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding <em>Let Binding</em>}'.
4443 * <!-- begin-user-doc -->
4444 * <!-- end-user-doc -->
4445 * @return the meta object for class '<em>Let Binding</em>'.
4446 * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding
4447 * @generated
4448 */
4449 EClass getLetBinding();
4450
4451 /**
4452 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue <em>Value</em>}'.
4453 * <!-- begin-user-doc -->
4454 * <!-- end-user-doc -->
4455 * @return the meta object for the containment reference '<em>Value</em>'.
4456 * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue()
4457 * @see #getLetBinding()
4458 * @generated
4459 */
4460 EReference getLetBinding_Value();
4461
4462 /**
4463 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable <em>Variable</em>}'.
4464 * <!-- begin-user-doc -->
4465 * <!-- end-user-doc -->
4466 * @return the meta object for the containment reference '<em>Variable</em>'.
4467 * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable()
4468 * @see #getLetBinding()
4469 * @generated
4470 */
4471 EReference getLetBinding_Variable();
4472
4473 /**
4474 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName <em>Name</em>}'.
4475 * <!-- begin-user-doc -->
4476 * <!-- end-user-doc -->
4477 * @return the meta object for the attribute '<em>Name</em>'.
4478 * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName()
4479 * @see #getLetBinding()
4480 * @generated
4481 */
4482 EAttribute getLetBinding_Name();
4483
4484 /**
4485 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType <em>Type</em>}'.
4486 * <!-- begin-user-doc -->
4487 * <!-- end-user-doc -->
4488 * @return the meta object for the reference '<em>Type</em>'.
4489 * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType()
4490 * @see #getLetBinding()
4491 * @generated
4492 */
4493 EReference getLetBinding_Type();
4494
4495 /**
4496 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal <em>Literal</em>}'.
4497 * <!-- begin-user-doc -->
4498 * <!-- end-user-doc -->
4499 * @return the meta object for class '<em>Literal</em>'.
4500 * @see org.eclipse.viatra.solver.language.solverLanguage.Literal
4501 * @generated
4502 */
4503 EClass getLiteral();
4504
4505 /**
4506 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral <em>Int Literal</em>}'.
4507 * <!-- begin-user-doc -->
4508 * <!-- end-user-doc -->
4509 * @return the meta object for class '<em>Int Literal</em>'.
4510 * @see org.eclipse.viatra.solver.language.solverLanguage.IntLiteral
4511 * @generated
4512 */
4513 EClass getIntLiteral();
4514
4515 /**
4516 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue <em>Value</em>}'.
4517 * <!-- begin-user-doc -->
4518 * <!-- end-user-doc -->
4519 * @return the meta object for the attribute '<em>Value</em>'.
4520 * @see org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue()
4521 * @see #getIntLiteral()
4522 * @generated
4523 */
4524 EAttribute getIntLiteral_Value();
4525
4526 /**
4527 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral <em>Real Literal</em>}'.
4528 * <!-- begin-user-doc -->
4529 * <!-- end-user-doc -->
4530 * @return the meta object for class '<em>Real Literal</em>'.
4531 * @see org.eclipse.viatra.solver.language.solverLanguage.RealLiteral
4532 * @generated
4533 */
4534 EClass getRealLiteral();
4535
4536 /**
4537 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue <em>Value</em>}'.
4538 * <!-- begin-user-doc -->
4539 * <!-- end-user-doc -->
4540 * @return the meta object for the attribute '<em>Value</em>'.
4541 * @see org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue()
4542 * @see #getRealLiteral()
4543 * @generated
4544 */
4545 EAttribute getRealLiteral_Value();
4546
4547 /**
4548 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral <em>String Literal</em>}'.
4549 * <!-- begin-user-doc -->
4550 * <!-- end-user-doc -->
4551 * @return the meta object for class '<em>String Literal</em>'.
4552 * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral
4553 * @generated
4554 */
4555 EClass getStringLiteral();
4556
4557 /**
4558 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue <em>Value</em>}'.
4559 * <!-- begin-user-doc -->
4560 * <!-- end-user-doc -->
4561 * @return the meta object for the attribute '<em>Value</em>'.
4562 * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue()
4563 * @see #getStringLiteral()
4564 * @generated
4565 */
4566 EAttribute getStringLiteral_Value();
4567
4568 /**
4569 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral <em>Logic Literal</em>}'.
4570 * <!-- begin-user-doc -->
4571 * <!-- end-user-doc -->
4572 * @return the meta object for class '<em>Logic Literal</em>'.
4573 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral
4574 * @generated
4575 */
4576 EClass getLogicLiteral();
4577
4578 /**
4579 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue <em>Value</em>}'.
4580 * <!-- begin-user-doc -->
4581 * <!-- end-user-doc -->
4582 * @return the meta object for the attribute '<em>Value</em>'.
4583 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue()
4584 * @see #getLogicLiteral()
4585 * @generated
4586 */
4587 EAttribute getLogicLiteral_Value();
4588
4589 /**
4590 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral <em>Empty Literal</em>}'.
4591 * <!-- begin-user-doc -->
4592 * <!-- end-user-doc -->
4593 * @return the meta object for class '<em>Empty Literal</em>'.
4594 * @see org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral
4595 * @generated
4596 */
4597 EClass getEmptyLiteral();
4598
4599 /**
4600 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression <em>Cast Expression</em>}'.
4601 * <!-- begin-user-doc -->
4602 * <!-- end-user-doc -->
4603 * @return the meta object for class '<em>Cast Expression</em>'.
4604 * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression
4605 * @generated
4606 */
4607 EClass getCastExpression();
4608
4609 /**
4610 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody <em>Body</em>}'.
4611 * <!-- begin-user-doc -->
4612 * <!-- end-user-doc -->
4613 * @return the meta object for the containment reference '<em>Body</em>'.
4614 * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody()
4615 * @see #getCastExpression()
4616 * @generated
4617 */
4618 EReference getCastExpression_Body();
4619
4620 /**
4621 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType <em>Target Type</em>}'.
4622 * <!-- begin-user-doc -->
4623 * <!-- end-user-doc -->
4624 * @return the meta object for the reference '<em>Target Type</em>'.
4625 * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType()
4626 * @see #getCastExpression()
4627 * @generated
4628 */
4629 EReference getCastExpression_TargetType();
4630
4631 /**
4632 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression <em>Aggregate Expression</em>}'.
4633 * <!-- begin-user-doc -->
4634 * <!-- end-user-doc -->
4635 * @return the meta object for class '<em>Aggregate Expression</em>'.
4636 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression
4637 * @generated
4638 */
4639 EClass getAggregateExpression();
4640
4641 /**
4642 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getForallVariables <em>Forall Variables</em>}'.
4643 * <!-- begin-user-doc -->
4644 * <!-- end-user-doc -->
4645 * @return the meta object for the containment reference list '<em>Forall Variables</em>'.
4646 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getForallVariables()
4647 * @see #getAggregateExpression()
4648 * @generated
4649 */
4650 EReference getAggregateExpression_ForallVariables();
4651
4652 /**
4653 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition <em>Condition</em>}'.
4654 * <!-- begin-user-doc -->
4655 * <!-- end-user-doc -->
4656 * @return the meta object for the containment reference '<em>Condition</em>'.
4657 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition()
4658 * @see #getAggregateExpression()
4659 * @generated
4660 */
4661 EReference getAggregateExpression_Condition();
4662
4663 /**
4664 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Count <em>Count</em>}'.
4665 * <!-- begin-user-doc -->
4666 * <!-- end-user-doc -->
4667 * @return the meta object for class '<em>Count</em>'.
4668 * @see org.eclipse.viatra.solver.language.solverLanguage.Count
4669 * @generated
4670 */
4671 EClass getCount();
4672
4673 /**
4674 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation <em>Aggregation</em>}'.
4675 * <!-- begin-user-doc -->
4676 * <!-- end-user-doc -->
4677 * @return the meta object for class '<em>Aggregation</em>'.
4678 * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation
4679 * @generated
4680 */
4681 EClass getAggregation();
4682
4683 /**
4684 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue <em>Value</em>}'.
4685 * <!-- begin-user-doc -->
4686 * <!-- end-user-doc -->
4687 * @return the meta object for the containment reference '<em>Value</em>'.
4688 * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue()
4689 * @see #getAggregation()
4690 * @generated
4691 */
4692 EReference getAggregation_Value();
4693
4694 /**
4695 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp <em>Op</em>}'.
4696 * <!-- begin-user-doc -->
4697 * <!-- end-user-doc -->
4698 * @return the meta object for the reference '<em>Op</em>'.
4699 * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp()
4700 * @see #getAggregation()
4701 * @generated
4702 */
4703 EReference getAggregation_Op();
4704
4705 /**
4706 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall <em>Forall</em>}'.
4707 * <!-- begin-user-doc -->
4708 * <!-- end-user-doc -->
4709 * @return the meta object for class '<em>Forall</em>'.
4710 * @see org.eclipse.viatra.solver.language.solverLanguage.Forall
4711 * @generated
4712 */
4713 EClass getForall();
4714
4715 /**
4716 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody <em>Body</em>}'.
4717 * <!-- begin-user-doc -->
4718 * <!-- end-user-doc -->
4719 * @return the meta object for the containment reference '<em>Body</em>'.
4720 * @see org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody()
4721 * @see #getForall()
4722 * @generated
4723 */
4724 EReference getForall_Body();
4725
4726 /**
4727 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference <em>Type Reference</em>}'.
4728 * <!-- begin-user-doc -->
4729 * <!-- end-user-doc -->
4730 * @return the meta object for class '<em>Type Reference</em>'.
4731 * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference
4732 * @generated
4733 */
4734 EClass getTypeReference();
4735
4736 /**
4737 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType <em>Force Object Type</em>}'.
4738 * <!-- begin-user-doc -->
4739 * <!-- end-user-doc -->
4740 * @return the meta object for the attribute '<em>Force Object Type</em>'.
4741 * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType()
4742 * @see #getTypeReference()
4743 * @generated
4744 */
4745 EAttribute getTypeReference_ForceObjectType();
4746
4747 /**
4748 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType <em>Type</em>}'.
4749 * <!-- begin-user-doc -->
4750 * <!-- end-user-doc -->
4751 * @return the meta object for the reference '<em>Type</em>'.
4752 * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType()
4753 * @see #getTypeReference()
4754 * @generated
4755 */
4756 EReference getTypeReference_Type();
4757
4758 /**
4759 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral <em>Infinity Literal</em>}'.
4760 * <!-- begin-user-doc -->
4761 * <!-- end-user-doc -->
4762 * @return the meta object for class '<em>Infinity Literal</em>'.
4763 * @see org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral
4764 * @generated
4765 */
4766 EClass getInfinityLiteral();
4767
4768 /**
4769 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval <em>Interval</em>}'.
4770 * <!-- begin-user-doc -->
4771 * <!-- end-user-doc -->
4772 * @return the meta object for class '<em>Interval</em>'.
4773 * @see org.eclipse.viatra.solver.language.solverLanguage.Interval
4774 * @generated
4775 */
4776 EClass getInterval();
4777
4778 /**
4779 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound <em>Lower Bound</em>}'.
4780 * <!-- begin-user-doc -->
4781 * <!-- end-user-doc -->
4782 * @return the meta object for the containment reference '<em>Lower Bound</em>'.
4783 * @see org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound()
4784 * @see #getInterval()
4785 * @generated
4786 */
4787 EReference getInterval_LowerBound();
4788
4789 /**
4790 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound <em>Upper Bound</em>}'.
4791 * <!-- begin-user-doc -->
4792 * <!-- end-user-doc -->
4793 * @return the meta object for the containment reference '<em>Upper Bound</em>'.
4794 * @see org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound()
4795 * @see #getInterval()
4796 * @generated
4797 */
4798 EReference getInterval_UpperBound();
4799
4800 /**
4801 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor <em>Functor</em>}'.
4802 * <!-- begin-user-doc -->
4803 * <!-- end-user-doc -->
4804 * @return the meta object for class '<em>Functor</em>'.
4805 * @see org.eclipse.viatra.solver.language.solverLanguage.Functor
4806 * @generated
4807 */
4808 EClass getFunctor();
4809
4810 /**
4811 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters <em>Parameters</em>}'.
4812 * <!-- begin-user-doc -->
4813 * <!-- end-user-doc -->
4814 * @return the meta object for the containment reference list '<em>Parameters</em>'.
4815 * @see org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters()
4816 * @see #getFunctor()
4817 * @generated
4818 */
4819 EReference getFunctor_Parameters();
4820
4821 /**
4822 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Relation <em>Relation</em>}'.
4823 * <!-- begin-user-doc -->
4824 * <!-- end-user-doc -->
4825 * @return the meta object for class '<em>Relation</em>'.
4826 * @see org.eclipse.viatra.solver.language.solverLanguage.Relation
4827 * @generated
4828 */
4829 EClass getRelation();
4830
4831 /**
4832 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BaseRelation <em>Base Relation</em>}'.
4833 * <!-- begin-user-doc -->
4834 * <!-- end-user-doc -->
4835 * @return the meta object for class '<em>Base Relation</em>'.
4836 * @see org.eclipse.viatra.solver.language.solverLanguage.BaseRelation
4837 * @generated
4838 */
4839 EClass getBaseRelation();
4840
4841 /**
4842 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate <em>Predicate</em>}'.
4843 * <!-- begin-user-doc -->
4844 * <!-- end-user-doc -->
4845 * @return the meta object for class '<em>Predicate</em>'.
4846 * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate
4847 * @generated
4848 */
4849 EClass getPredicate();
4850
4851 /**
4852 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Datatype <em>Datatype</em>}'.
4853 * <!-- begin-user-doc -->
4854 * <!-- end-user-doc -->
4855 * @return the meta object for class '<em>Datatype</em>'.
4856 * @see org.eclipse.viatra.solver.language.solverLanguage.Datatype
4857 * @generated
4858 */
4859 EClass getDatatype();
4860
4861 /**
4862 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Function <em>Function</em>}'.
4863 * <!-- begin-user-doc -->
4864 * <!-- end-user-doc -->
4865 * @return the meta object for class '<em>Function</em>'.
4866 * @see org.eclipse.viatra.solver.language.solverLanguage.Function
4867 * @generated
4868 */
4869 EClass getFunction();
4870
4871 /**
4872 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType <em>Result Type</em>}'.
4873 * <!-- begin-user-doc -->
4874 * <!-- end-user-doc -->
4875 * @return the meta object for the reference '<em>Result Type</em>'.
4876 * @see org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType()
4877 * @see #getFunction()
4878 * @generated
4879 */
4880 EReference getFunction_ResultType();
4881
4882 /**
4883 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric <em>Metric</em>}'.
4884 * <!-- begin-user-doc -->
4885 * <!-- end-user-doc -->
4886 * @return the meta object for class '<em>Metric</em>'.
4887 * @see org.eclipse.viatra.solver.language.solverLanguage.Metric
4888 * @generated
4889 */
4890 EClass getMetric();
4891
4892 /**
4893 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Operator <em>Operator</em>}'.
4894 * <!-- begin-user-doc -->
4895 * <!-- end-user-doc -->
4896 * @return the meta object for class '<em>Operator</em>'.
4897 * @see org.eclipse.viatra.solver.language.solverLanguage.Operator
4898 * @generated
4899 */
4900 EClass getOperator();
4901
4902 /**
4903 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Node <em>Node</em>}'.
4904 * <!-- begin-user-doc -->
4905 * <!-- end-user-doc -->
4906 * @return the meta object for class '<em>Node</em>'.
4907 * @see org.eclipse.viatra.solver.language.solverLanguage.Node
4908 * @generated
4909 */
4910 EClass getNode();
4911
4912 /**
4913 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed <em>Named</em>}'.
4914 * <!-- begin-user-doc -->
4915 * <!-- end-user-doc -->
4916 * @return the meta object for the attribute '<em>Named</em>'.
4917 * @see org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed()
4918 * @see #getNode()
4919 * @generated
4920 */
4921 EAttribute getNode_Named();
4922
4923 /**
4924 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement <em>Statement</em>}'.
4925 * <!-- begin-user-doc -->
4926 * <!-- end-user-doc -->
4927 * @return the meta object for class '<em>Statement</em>'.
4928 * @see org.eclipse.viatra.solver.language.solverLanguage.Statement
4929 * @generated
4930 */
4931 EClass getStatement();
4932
4933 /**
4934 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion <em>Abstract Assertion</em>}'.
4935 * <!-- begin-user-doc -->
4936 * <!-- end-user-doc -->
4937 * @return the meta object for class '<em>Abstract Assertion</em>'.
4938 * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion
4939 * @generated
4940 */
4941 EClass getAbstractAssertion();
4942
4943 /**
4944 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression <em>Expression</em>}'.
4945 * <!-- begin-user-doc -->
4946 * <!-- end-user-doc -->
4947 * @return the meta object for the containment reference '<em>Expression</em>'.
4948 * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression()
4949 * @see #getAbstractAssertion()
4950 * @generated
4951 */
4952 EReference getAbstractAssertion_Expression();
4953
4954 /**
4955 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange <em>Range</em>}'.
4956 * <!-- begin-user-doc -->
4957 * <!-- end-user-doc -->
4958 * @return the meta object for the containment reference '<em>Range</em>'.
4959 * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange()
4960 * @see #getAbstractAssertion()
4961 * @generated
4962 */
4963 EReference getAbstractAssertion_Range();
4964
4965 /**
4966 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton <em>Functor Definiton</em>}'.
4967 * <!-- begin-user-doc -->
4968 * <!-- end-user-doc -->
4969 * @return the meta object for class '<em>Functor Definiton</em>'.
4970 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton
4971 * @generated
4972 */
4973 EClass getFunctorDefiniton();
4974
4975 /**
4976 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead <em>Head</em>}'.
4977 * <!-- begin-user-doc -->
4978 * <!-- end-user-doc -->
4979 * @return the meta object for the containment reference '<em>Head</em>'.
4980 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead()
4981 * @see #getFunctorDefiniton()
4982 * @generated
4983 */
4984 EReference getFunctorDefiniton_Head();
4985
4986 /**
4987 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody <em>Body</em>}'.
4988 * <!-- begin-user-doc -->
4989 * <!-- end-user-doc -->
4990 * @return the meta object for the containment reference '<em>Body</em>'.
4991 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody()
4992 * @see #getFunctorDefiniton()
4993 * @generated
4994 */
4995 EReference getFunctorDefiniton_Body();
4996
4997 /**
4998 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition <em>Predicate Definition</em>}'.
4999 * <!-- begin-user-doc -->
5000 * <!-- end-user-doc -->
5001 * @return the meta object for class '<em>Predicate Definition</em>'.
5002 * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition
5003 * @generated
5004 */
5005 EClass getPredicateDefinition();
5006
5007 /**
5008 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition <em>Function Definition</em>}'.
5009 * <!-- begin-user-doc -->
5010 * <!-- end-user-doc -->
5011 * @return the meta object for class '<em>Function Definition</em>'.
5012 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition
5013 * @generated
5014 */
5015 EClass getFunctionDefinition();
5016
5017 /**
5018 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType <em>Result Type</em>}'.
5019 * <!-- begin-user-doc -->
5020 * <!-- end-user-doc -->
5021 * @return the meta object for the reference '<em>Result Type</em>'.
5022 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType()
5023 * @see #getFunctionDefinition()
5024 * @generated
5025 */
5026 EReference getFunctionDefinition_ResultType();
5027
5028 /**
5029 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute <em>Attribute</em>}'.
5030 * <!-- begin-user-doc -->
5031 * <!-- end-user-doc -->
5032 * @return the meta object for class '<em>Attribute</em>'.
5033 * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute
5034 * @generated
5035 */
5036 EClass getAttribute();
5037
5038 /**
5039 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget <em>Target</em>}'.
5040 * <!-- begin-user-doc -->
5041 * <!-- end-user-doc -->
5042 * @return the meta object for the reference '<em>Target</em>'.
5043 * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget()
5044 * @see #getAttribute()
5045 * @generated
5046 */
5047 EReference getAttribute_Target();
5048
5049 /**
5050 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind <em>Kind</em>}'.
5051 * <!-- begin-user-doc -->
5052 * <!-- end-user-doc -->
5053 * @return the meta object for the attribute '<em>Kind</em>'.
5054 * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind()
5055 * @see #getAttribute()
5056 * @generated
5057 */
5058 EAttribute getAttribute_Kind();
5059
5060 /**
5061 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration <em>Extern Declaration</em>}'.
5062 * <!-- begin-user-doc -->
5063 * <!-- end-user-doc -->
5064 * @return the meta object for class '<em>Extern Declaration</em>'.
5065 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration
5066 * @generated
5067 */
5068 EClass getExternDeclaration();
5069
5070 /**
5071 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName <em>Name</em>}'.
5072 * <!-- begin-user-doc -->
5073 * <!-- end-user-doc -->
5074 * @return the meta object for the attribute '<em>Name</em>'.
5075 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName()
5076 * @see #getExternDeclaration()
5077 * @generated
5078 */
5079 EAttribute getExternDeclaration_Name();
5080
5081 /**
5082 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration <em>Extern Functor Declaration</em>}'.
5083 * <!-- begin-user-doc -->
5084 * <!-- end-user-doc -->
5085 * @return the meta object for class '<em>Extern Functor Declaration</em>'.
5086 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration
5087 * @generated
5088 */
5089 EClass getExternFunctorDeclaration();
5090
5091 /**
5092 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList <em>Argument List</em>}'.
5093 * <!-- begin-user-doc -->
5094 * <!-- end-user-doc -->
5095 * @return the meta object for the containment reference '<em>Argument List</em>'.
5096 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList()
5097 * @see #getExternFunctorDeclaration()
5098 * @generated
5099 */
5100 EReference getExternFunctorDeclaration_ArgumentList();
5101
5102 /**
5103 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration <em>Extern Predicate Declaration</em>}'.
5104 * <!-- begin-user-doc -->
5105 * <!-- end-user-doc -->
5106 * @return the meta object for class '<em>Extern Predicate Declaration</em>'.
5107 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration
5108 * @generated
5109 */
5110 EClass getExternPredicateDeclaration();
5111
5112 /**
5113 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration <em>Extern Function Declaration</em>}'.
5114 * <!-- begin-user-doc -->
5115 * <!-- end-user-doc -->
5116 * @return the meta object for class '<em>Extern Function Declaration</em>'.
5117 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration
5118 * @generated
5119 */
5120 EClass getExternFunctionDeclaration();
5121
5122 /**
5123 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType <em>Result Type</em>}'.
5124 * <!-- begin-user-doc -->
5125 * <!-- end-user-doc -->
5126 * @return the meta object for the reference '<em>Result Type</em>'.
5127 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType()
5128 * @see #getExternFunctionDeclaration()
5129 * @generated
5130 */
5131 EReference getExternFunctionDeclaration_ResultType();
5132
5133 /**
5134 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration <em>Extern Aggregation Operator Declaration</em>}'.
5135 * <!-- begin-user-doc -->
5136 * <!-- end-user-doc -->
5137 * @return the meta object for class '<em>Extern Aggregation Operator Declaration</em>'.
5138 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration
5139 * @generated
5140 */
5141 EClass getExternAggregationOperatorDeclaration();
5142
5143 /**
5144 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType <em>Argument Type</em>}'.
5145 * <!-- begin-user-doc -->
5146 * <!-- end-user-doc -->
5147 * @return the meta object for the reference '<em>Argument Type</em>'.
5148 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType()
5149 * @see #getExternAggregationOperatorDeclaration()
5150 * @generated
5151 */
5152 EReference getExternAggregationOperatorDeclaration_ArgumentType();
5153
5154 /**
5155 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType <em>Result Type</em>}'.
5156 * <!-- begin-user-doc -->
5157 * <!-- end-user-doc -->
5158 * @return the meta object for the reference '<em>Result Type</em>'.
5159 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType()
5160 * @see #getExternAggregationOperatorDeclaration()
5161 * @generated
5162 */
5163 EReference getExternAggregationOperatorDeclaration_ResultType();
5164
5165 /**
5166 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration <em>Extern Datatype Declaration</em>}'.
5167 * <!-- begin-user-doc -->
5168 * <!-- end-user-doc -->
5169 * @return the meta object for class '<em>Extern Datatype Declaration</em>'.
5170 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration
5171 * @generated
5172 */
5173 EClass getExternDatatypeDeclaration();
5174
5175 /**
5176 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration <em>Class Declaration</em>}'.
5177 * <!-- begin-user-doc -->
5178 * <!-- end-user-doc -->
5179 * @return the meta object for class '<em>Class Declaration</em>'.
5180 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration
5181 * @generated
5182 */
5183 EClass getClassDeclaration();
5184
5185 /**
5186 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getFields <em>Fields</em>}'.
5187 * <!-- begin-user-doc -->
5188 * <!-- end-user-doc -->
5189 * @return the meta object for the containment reference list '<em>Fields</em>'.
5190 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getFields()
5191 * @see #getClassDeclaration()
5192 * @generated
5193 */
5194 EReference getClassDeclaration_Fields();
5195
5196 /**
5197 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName <em>Name</em>}'.
5198 * <!-- begin-user-doc -->
5199 * <!-- end-user-doc -->
5200 * @return the meta object for the attribute '<em>Name</em>'.
5201 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName()
5202 * @see #getClassDeclaration()
5203 * @generated
5204 */
5205 EAttribute getClassDeclaration_Name();
5206
5207 /**
5208 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract <em>Abstract</em>}'.
5209 * <!-- begin-user-doc -->
5210 * <!-- end-user-doc -->
5211 * @return the meta object for the attribute '<em>Abstract</em>'.
5212 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract()
5213 * @see #getClassDeclaration()
5214 * @generated
5215 */
5216 EAttribute getClassDeclaration_Abstract();
5217
5218 /**
5219 * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getSupertypes <em>Supertypes</em>}'.
5220 * <!-- begin-user-doc -->
5221 * <!-- end-user-doc -->
5222 * @return the meta object for the reference list '<em>Supertypes</em>'.
5223 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getSupertypes()
5224 * @see #getClassDeclaration()
5225 * @generated
5226 */
5227 EReference getClassDeclaration_Supertypes();
5228
5229 /**
5230 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot <em>Root</em>}'.
5231 * <!-- begin-user-doc -->
5232 * <!-- end-user-doc -->
5233 * @return the meta object for the attribute '<em>Root</em>'.
5234 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot()
5235 * @see #getClassDeclaration()
5236 * @generated
5237 */
5238 EAttribute getClassDeclaration_Root();
5239
5240 /**
5241 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration <em>Enum Declaration</em>}'.
5242 * <!-- begin-user-doc -->
5243 * <!-- end-user-doc -->
5244 * @return the meta object for class '<em>Enum Declaration</em>'.
5245 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration
5246 * @generated
5247 */
5248 EClass getEnumDeclaration();
5249
5250 /**
5251 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getLiterals <em>Literals</em>}'.
5252 * <!-- begin-user-doc -->
5253 * <!-- end-user-doc -->
5254 * @return the meta object for the containment reference list '<em>Literals</em>'.
5255 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getLiterals()
5256 * @see #getEnumDeclaration()
5257 * @generated
5258 */
5259 EReference getEnumDeclaration_Literals();
5260
5261 /**
5262 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName <em>Name</em>}'.
5263 * <!-- begin-user-doc -->
5264 * <!-- end-user-doc -->
5265 * @return the meta object for the attribute '<em>Name</em>'.
5266 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName()
5267 * @see #getEnumDeclaration()
5268 * @generated
5269 */
5270 EAttribute getEnumDeclaration_Name();
5271
5272 /**
5273 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral <em>Enum Literal</em>}'.
5274 * <!-- begin-user-doc -->
5275 * <!-- end-user-doc -->
5276 * @return the meta object for class '<em>Enum Literal</em>'.
5277 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral
5278 * @generated
5279 */
5280 EClass getEnumLiteral();
5281
5282 /**
5283 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName <em>Name</em>}'.
5284 * <!-- begin-user-doc -->
5285 * <!-- end-user-doc -->
5286 * @return the meta object for the attribute '<em>Name</em>'.
5287 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName()
5288 * @see #getEnumLiteral()
5289 * @generated
5290 */
5291 EAttribute getEnumLiteral_Name();
5292
5293 /**
5294 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Field <em>Field</em>}'.
5295 * <!-- begin-user-doc -->
5296 * <!-- end-user-doc -->
5297 * @return the meta object for class '<em>Field</em>'.
5298 * @see org.eclipse.viatra.solver.language.solverLanguage.Field
5299 * @generated
5300 */
5301 EClass getField();
5302
5303 /**
5304 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment <em>Containment</em>}'.
5305 * <!-- begin-user-doc -->
5306 * <!-- end-user-doc -->
5307 * @return the meta object for the attribute '<em>Containment</em>'.
5308 * @see org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment()
5309 * @see #getField()
5310 * @generated
5311 */
5312 EAttribute getField_Containment();
5313
5314 /**
5315 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference <em>Cross Reference</em>}'.
5316 * <!-- begin-user-doc -->
5317 * <!-- end-user-doc -->
5318 * @return the meta object for the attribute '<em>Cross Reference</em>'.
5319 * @see org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference()
5320 * @see #getField()
5321 * @generated
5322 */
5323 EAttribute getField_CrossReference();
5324
5325 /**
5326 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite <em>Opposite</em>}'.
5327 * <!-- begin-user-doc -->
5328 * <!-- end-user-doc -->
5329 * @return the meta object for the reference '<em>Opposite</em>'.
5330 * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite()
5331 * @see #getField()
5332 * @generated
5333 */
5334 EReference getField_Opposite();
5335
5336 /**
5337 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity <em>Multiplicity</em>}'.
5338 * <!-- begin-user-doc -->
5339 * <!-- end-user-doc -->
5340 * @return the meta object for the containment reference '<em>Multiplicity</em>'.
5341 * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity()
5342 * @see #getField()
5343 * @generated
5344 */
5345 EReference getField_Multiplicity();
5346
5347 /**
5348 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getType <em>Type</em>}'.
5349 * <!-- begin-user-doc -->
5350 * <!-- end-user-doc -->
5351 * @return the meta object for the reference '<em>Type</em>'.
5352 * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getType()
5353 * @see #getField()
5354 * @generated
5355 */
5356 EReference getField_Type();
5357
5358 /**
5359 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getName <em>Name</em>}'.
5360 * <!-- begin-user-doc -->
5361 * <!-- end-user-doc -->
5362 * @return the meta object for the attribute '<em>Name</em>'.
5363 * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getName()
5364 * @see #getField()
5365 * @generated
5366 */
5367 EAttribute getField_Name();
5368
5369 /**
5370 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Multiplicity <em>Multiplicity</em>}'.
5371 * <!-- begin-user-doc -->
5372 * <!-- end-user-doc -->
5373 * @return the meta object for class '<em>Multiplicity</em>'.
5374 * @see org.eclipse.viatra.solver.language.solverLanguage.Multiplicity
5375 * @generated
5376 */
5377 EClass getMultiplicity();
5378
5379 /**
5380 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion <em>Default Assertion</em>}'.
5381 * <!-- begin-user-doc -->
5382 * <!-- end-user-doc -->
5383 * @return the meta object for class '<em>Default Assertion</em>'.
5384 * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion
5385 * @generated
5386 */
5387 EClass getDefaultAssertion();
5388
5389 /**
5390 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Assertion <em>Assertion</em>}'.
5391 * <!-- begin-user-doc -->
5392 * <!-- end-user-doc -->
5393 * @return the meta object for class '<em>Assertion</em>'.
5394 * @see org.eclipse.viatra.solver.language.solverLanguage.Assertion
5395 * @generated
5396 */
5397 EClass getAssertion();
5398
5399 /**
5400 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity <em>Unbounded Multiplicity</em>}'.
5401 * <!-- begin-user-doc -->
5402 * <!-- end-user-doc -->
5403 * @return the meta object for class '<em>Unbounded Multiplicity</em>'.
5404 * @see org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity
5405 * @generated
5406 */
5407 EClass getUnboundedMultiplicity();
5408
5409 /**
5410 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity <em>Exact Multiplicity</em>}'.
5411 * <!-- begin-user-doc -->
5412 * <!-- end-user-doc -->
5413 * @return the meta object for class '<em>Exact Multiplicity</em>'.
5414 * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity
5415 * @generated
5416 */
5417 EClass getExactMultiplicity();
5418
5419 /**
5420 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue <em>Value</em>}'.
5421 * <!-- begin-user-doc -->
5422 * <!-- end-user-doc -->
5423 * @return the meta object for the attribute '<em>Value</em>'.
5424 * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue()
5425 * @see #getExactMultiplicity()
5426 * @generated
5427 */
5428 EAttribute getExactMultiplicity_Value();
5429
5430 /**
5431 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity <em>Bounded Multiplicity</em>}'.
5432 * <!-- begin-user-doc -->
5433 * <!-- end-user-doc -->
5434 * @return the meta object for class '<em>Bounded Multiplicity</em>'.
5435 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity
5436 * @generated
5437 */
5438 EClass getBoundedMultiplicity();
5439
5440 /**
5441 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound <em>Lower Bound</em>}'.
5442 * <!-- begin-user-doc -->
5443 * <!-- end-user-doc -->
5444 * @return the meta object for the attribute '<em>Lower Bound</em>'.
5445 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound()
5446 * @see #getBoundedMultiplicity()
5447 * @generated
5448 */
5449 EAttribute getBoundedMultiplicity_LowerBound();
5450
5451 /**
5452 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound <em>Upper Bound</em>}'.
5453 * <!-- begin-user-doc -->
5454 * <!-- end-user-doc -->
5455 * @return the meta object for the attribute '<em>Upper Bound</em>'.
5456 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound()
5457 * @see #getBoundedMultiplicity()
5458 * @generated
5459 */
5460 EAttribute getBoundedMultiplicity_UpperBound();
5461
5462 /**
5463 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes <em>Inline Predicate Attrributes</em>}'.
5464 * <!-- begin-user-doc -->
5465 * <!-- end-user-doc -->
5466 * @return the meta object for class '<em>Inline Predicate Attrributes</em>'.
5467 * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes
5468 * @generated
5469 */
5470 EClass getInlinePredicateAttrributes();
5471
5472 /**
5473 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError <em>Error</em>}'.
5474 * <!-- begin-user-doc -->
5475 * <!-- end-user-doc -->
5476 * @return the meta object for the attribute '<em>Error</em>'.
5477 * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError()
5478 * @see #getInlinePredicateAttrributes()
5479 * @generated
5480 */
5481 EAttribute getInlinePredicateAttrributes_Error();
5482
5483 /**
5484 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional <em>Functional</em>}'.
5485 * <!-- begin-user-doc -->
5486 * <!-- end-user-doc -->
5487 * @return the meta object for the attribute '<em>Functional</em>'.
5488 * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional()
5489 * @see #getInlinePredicateAttrributes()
5490 * @generated
5491 */
5492 EAttribute getInlinePredicateAttrributes_Functional();
5493
5494 /**
5495 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator <em>Aggregation Operator</em>}'.
5496 * <!-- begin-user-doc -->
5497 * <!-- end-user-doc -->
5498 * @return the meta object for class '<em>Aggregation Operator</em>'.
5499 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator
5500 * @generated
5501 */
5502 EClass getAggregationOperator();
5503
5504 /**
5505 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType <em>Argument Type</em>}'.
5506 * <!-- begin-user-doc -->
5507 * <!-- end-user-doc -->
5508 * @return the meta object for the reference '<em>Argument Type</em>'.
5509 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType()
5510 * @see #getAggregationOperator()
5511 * @generated
5512 */
5513 EReference getAggregationOperator_ArgumentType();
5514
5515 /**
5516 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType <em>Result Type</em>}'.
5517 * <!-- begin-user-doc -->
5518 * <!-- end-user-doc -->
5519 * @return the meta object for the reference '<em>Result Type</em>'.
5520 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType()
5521 * @see #getAggregationOperator()
5522 * @generated
5523 */
5524 EReference getAggregationOperator_ResultType();
5525
5526 /**
5527 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem <em>Problem</em>}'.
5528 * <!-- begin-user-doc -->
5529 * <!-- end-user-doc -->
5530 * @return the meta object for class '<em>Problem</em>'.
5531 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem
5532 * @generated
5533 */
5534 EClass getProblem();
5535
5536 /**
5537 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getName <em>Name</em>}'.
5538 * <!-- begin-user-doc -->
5539 * <!-- end-user-doc -->
5540 * @return the meta object for the attribute '<em>Name</em>'.
5541 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getName()
5542 * @see #getProblem()
5543 * @generated
5544 */
5545 EAttribute getProblem_Name();
5546
5547 /**
5548 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements <em>Statements</em>}'.
5549 * <!-- begin-user-doc -->
5550 * <!-- end-user-doc -->
5551 * @return the meta object for the containment reference list '<em>Statements</em>'.
5552 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements()
5553 * @see #getProblem()
5554 * @generated
5555 */
5556 EReference getProblem_Statements();
5557
5558 /**
5559 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getSymbols <em>Symbols</em>}'.
5560 * <!-- begin-user-doc -->
5561 * <!-- end-user-doc -->
5562 * @return the meta object for the containment reference list '<em>Symbols</em>'.
5563 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getSymbols()
5564 * @see #getProblem()
5565 * @generated
5566 */
5567 EReference getProblem_Symbols();
5568
5569 /**
5570 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getImports <em>Imports</em>}'.
5571 * <!-- begin-user-doc -->
5572 * <!-- end-user-doc -->
5573 * @return the meta object for the containment reference list '<em>Imports</em>'.
5574 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getImports()
5575 * @see #getProblem()
5576 * @generated
5577 */
5578 EReference getProblem_Imports();
5579
5580 /**
5581 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument <em>Typed Star Argument</em>}'.
5582 * <!-- begin-user-doc -->
5583 * <!-- end-user-doc -->
5584 * @return the meta object for class '<em>Typed Star Argument</em>'.
5585 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument
5586 * @generated
5587 */
5588 EClass getTypedStarArgument();
5589
5590 /**
5591 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument <em>Typed Variable Argument</em>}'.
5592 * <!-- begin-user-doc -->
5593 * <!-- end-user-doc -->
5594 * @return the meta object for class '<em>Typed Variable Argument</em>'.
5595 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument
5596 * @generated
5597 */
5598 EClass getTypedVariableArgument();
5599
5600 /**
5601 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName <em>Name</em>}'.
5602 * <!-- begin-user-doc -->
5603 * <!-- end-user-doc -->
5604 * @return the meta object for the attribute '<em>Name</em>'.
5605 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName()
5606 * @see #getTypedVariableArgument()
5607 * @generated
5608 */
5609 EAttribute getTypedVariableArgument_Name();
5610
5611 /**
5612 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion <em>Unnamed Error Predicate Defintion</em>}'.
5613 * <!-- begin-user-doc -->
5614 * <!-- end-user-doc -->
5615 * @return the meta object for class '<em>Unnamed Error Predicate Defintion</em>'.
5616 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion
5617 * @generated
5618 */
5619 EClass getUnnamedErrorPredicateDefintion();
5620
5621 /**
5622 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList <em>Argument List</em>}'.
5623 * <!-- begin-user-doc -->
5624 * <!-- end-user-doc -->
5625 * @return the meta object for the containment reference '<em>Argument List</em>'.
5626 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList()
5627 * @see #getUnnamedErrorPredicateDefintion()
5628 * @generated
5629 */
5630 EReference getUnnamedErrorPredicateDefintion_ArgumentList();
5631
5632 /**
5633 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody <em>Body</em>}'.
5634 * <!-- begin-user-doc -->
5635 * <!-- end-user-doc -->
5636 * @return the meta object for the containment reference '<em>Body</em>'.
5637 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody()
5638 * @see #getUnnamedErrorPredicateDefintion()
5639 * @generated
5640 */
5641 EReference getUnnamedErrorPredicateDefintion_Body();
5642
5643 /**
5644 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration <em>Objective Declaration</em>}'.
5645 * <!-- begin-user-doc -->
5646 * <!-- end-user-doc -->
5647 * @return the meta object for class '<em>Objective Declaration</em>'.
5648 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration
5649 * @generated
5650 */
5651 EClass getObjectiveDeclaration();
5652
5653 /**
5654 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind <em>Kind</em>}'.
5655 * <!-- begin-user-doc -->
5656 * <!-- end-user-doc -->
5657 * @return the meta object for the attribute '<em>Kind</em>'.
5658 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind()
5659 * @see #getObjectiveDeclaration()
5660 * @generated
5661 */
5662 EAttribute getObjectiveDeclaration_Kind();
5663
5664 /**
5665 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective <em>Objective</em>}'.
5666 * <!-- begin-user-doc -->
5667 * <!-- end-user-doc -->
5668 * @return the meta object for the containment reference '<em>Objective</em>'.
5669 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective()
5670 * @see #getObjectiveDeclaration()
5671 * @generated
5672 */
5673 EReference getObjectiveDeclaration_Objective();
5674
5675 /**
5676 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration <em>Scope Declaration</em>}'.
5677 * <!-- begin-user-doc -->
5678 * <!-- end-user-doc -->
5679 * @return the meta object for class '<em>Scope Declaration</em>'.
5680 * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration
5681 * @generated
5682 */
5683 EClass getScopeDeclaration();
5684
5685 /**
5686 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType <em>Type</em>}'.
5687 * <!-- begin-user-doc -->
5688 * <!-- end-user-doc -->
5689 * @return the meta object for the reference '<em>Type</em>'.
5690 * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType()
5691 * @see #getScopeDeclaration()
5692 * @generated
5693 */
5694 EReference getScopeDeclaration_Type();
5695
5696 /**
5697 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope <em>Exact Scope</em>}'.
5698 * <!-- begin-user-doc -->
5699 * <!-- end-user-doc -->
5700 * @return the meta object for class '<em>Exact Scope</em>'.
5701 * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScope
5702 * @generated
5703 */
5704 EClass getExactScope();
5705
5706 /**
5707 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize <em>Size</em>}'.
5708 * <!-- begin-user-doc -->
5709 * <!-- end-user-doc -->
5710 * @return the meta object for the attribute '<em>Size</em>'.
5711 * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize()
5712 * @see #getExactScope()
5713 * @generated
5714 */
5715 EAttribute getExactScope_Size();
5716
5717 /**
5718 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope <em>Bounded Scope</em>}'.
5719 * <!-- begin-user-doc -->
5720 * <!-- end-user-doc -->
5721 * @return the meta object for class '<em>Bounded Scope</em>'.
5722 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope
5723 * @generated
5724 */
5725 EClass getBoundedScope();
5726
5727 /**
5728 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound <em>Lower Bound</em>}'.
5729 * <!-- begin-user-doc -->
5730 * <!-- end-user-doc -->
5731 * @return the meta object for the attribute '<em>Lower Bound</em>'.
5732 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound()
5733 * @see #getBoundedScope()
5734 * @generated
5735 */
5736 EAttribute getBoundedScope_LowerBound();
5737
5738 /**
5739 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound <em>Upper Bound</em>}'.
5740 * <!-- begin-user-doc -->
5741 * <!-- end-user-doc -->
5742 * @return the meta object for the attribute '<em>Upper Bound</em>'.
5743 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound()
5744 * @see #getBoundedScope()
5745 * @generated
5746 */
5747 EAttribute getBoundedScope_UpperBound();
5748
5749 /**
5750 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope <em>Lower Bounded Scope</em>}'.
5751 * <!-- begin-user-doc -->
5752 * <!-- end-user-doc -->
5753 * @return the meta object for class '<em>Lower Bounded Scope</em>'.
5754 * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope
5755 * @generated
5756 */
5757 EClass getLowerBoundedScope();
5758
5759 /**
5760 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound <em>Lower Bound</em>}'.
5761 * <!-- begin-user-doc -->
5762 * <!-- end-user-doc -->
5763 * @return the meta object for the attribute '<em>Lower Bound</em>'.
5764 * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound()
5765 * @see #getLowerBoundedScope()
5766 * @generated
5767 */
5768 EAttribute getLowerBoundedScope_LowerBound();
5769
5770 /**
5771 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport <em>Namespace Import</em>}'.
5772 * <!-- begin-user-doc -->
5773 * <!-- end-user-doc -->
5774 * @return the meta object for class '<em>Namespace Import</em>'.
5775 * @see org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport
5776 * @generated
5777 */
5778 EClass getNamespaceImport();
5779
5780 /**
5781 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace <em>Imported Namespace</em>}'.
5782 * <!-- begin-user-doc -->
5783 * <!-- end-user-doc -->
5784 * @return the meta object for the attribute '<em>Imported Namespace</em>'.
5785 * @see org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace()
5786 * @see #getNamespaceImport()
5787 * @generated
5788 */
5789 EAttribute getNamespaceImport_ImportedNamespace();
5790
5791 /**
5792 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Import <em>Import</em>}'.
5793 * <!-- begin-user-doc -->
5794 * <!-- end-user-doc -->
5795 * @return the meta object for class '<em>Import</em>'.
5796 * @see org.eclipse.viatra.solver.language.solverLanguage.Import
5797 * @generated
5798 */
5799 EClass getImport();
5800
5801 /**
5802 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias <em>Alias</em>}'.
5803 * <!-- begin-user-doc -->
5804 * <!-- end-user-doc -->
5805 * @return the meta object for the attribute '<em>Alias</em>'.
5806 * @see org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias()
5807 * @see #getImport()
5808 * @generated
5809 */
5810 EAttribute getImport_Alias();
5811
5812 /**
5813 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport <em>Uri Import</em>}'.
5814 * <!-- begin-user-doc -->
5815 * <!-- end-user-doc -->
5816 * @return the meta object for class '<em>Uri Import</em>'.
5817 * @see org.eclipse.viatra.solver.language.solverLanguage.UriImport
5818 * @generated
5819 */
5820 EClass getUriImport();
5821
5822 /**
5823 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri <em>Uri</em>}'.
5824 * <!-- begin-user-doc -->
5825 * <!-- end-user-doc -->
5826 * @return the meta object for the attribute '<em>Uri</em>'.
5827 * @see org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri()
5828 * @see #getUriImport()
5829 * @generated
5830 */
5831 EAttribute getUriImport_Uri();
5832
5833 /**
5834 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator <em>Unary Operator</em>}'.
5835 * <!-- begin-user-doc -->
5836 * <!-- end-user-doc -->
5837 * @return the meta object for enum '<em>Unary Operator</em>'.
5838 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator
5839 * @generated
5840 */
5841 EEnum getUnaryOperator();
5842
5843 /**
5844 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator <em>Binary Operator</em>}'.
5845 * <!-- begin-user-doc -->
5846 * <!-- end-user-doc -->
5847 * @return the meta object for enum '<em>Binary Operator</em>'.
5848 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator
5849 * @generated
5850 */
5851 EEnum getBinaryOperator();
5852
5853 /**
5854 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue <em>Logic Value</em>}'.
5855 * <!-- begin-user-doc -->
5856 * <!-- end-user-doc -->
5857 * @return the meta object for enum '<em>Logic Value</em>'.
5858 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue
5859 * @generated
5860 */
5861 EEnum getLogicValue();
5862
5863 /**
5864 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind <em>Objective Kind</em>}'.
5865 * <!-- begin-user-doc -->
5866 * <!-- end-user-doc -->
5867 * @return the meta object for enum '<em>Objective Kind</em>'.
5868 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind
5869 * @generated
5870 */
5871 EEnum getObjectiveKind();
5872
5873 /**
5874 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind <em>Attribute Kind</em>}'.
5875 * <!-- begin-user-doc -->
5876 * <!-- end-user-doc -->
5877 * @return the meta object for enum '<em>Attribute Kind</em>'.
5878 * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind
5879 * @generated
5880 */
5881 EEnum getAttributeKind();
5882
5883 /**
5884 * Returns the factory that creates the instances of the model.
5885 * <!-- begin-user-doc -->
5886 * <!-- end-user-doc -->
5887 * @return the factory that creates the instances of the model.
5888 * @generated
5889 */
5890 SolverLanguageFactory getSolverLanguageFactory();
5891
5892 /**
5893 * <!-- begin-user-doc -->
5894 * Defines literals for the meta objects that represent
5895 * <ul>
5896 * <li>each class,</li>
5897 * <li>each feature of each class,</li>
5898 * <li>each operation of each class,</li>
5899 * <li>each enum,</li>
5900 * <li>and each data type</li>
5901 * </ul>
5902 * <!-- end-user-doc -->
5903 * @generated
5904 */
5905 interface Literals {
5906 /**
5907 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl <em>Path Component</em>}' class.
5908 * <!-- begin-user-doc -->
5909 * <!-- end-user-doc -->
5910 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl
5911 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPathComponent()
5912 * @generated
5913 */
5914 EClass PATH_COMPONENT = eINSTANCE.getPathComponent();
5915
5916 /**
5917 * The meta object literal for the '<em><b>Symbol</b></em>' reference feature.
5918 * <!-- begin-user-doc -->
5919 * <!-- end-user-doc -->
5920 * @generated
5921 */
5922 EReference PATH_COMPONENT__SYMBOL = eINSTANCE.getPathComponent_Symbol();
5923
5924 /**
5925 * The meta object literal for the '<em><b>Inverse</b></em>' attribute feature.
5926 * <!-- begin-user-doc -->
5927 * <!-- end-user-doc -->
5928 * @generated
5929 */
5930 EAttribute PATH_COMPONENT__INVERSE = eINSTANCE.getPathComponent_Inverse();
5931
5932 /**
5933 * The meta object literal for the '<em><b>Transitive Closure</b></em>' attribute feature.
5934 * <!-- begin-user-doc -->
5935 * <!-- end-user-doc -->
5936 * @generated
5937 */
5938 EAttribute PATH_COMPONENT__TRANSITIVE_CLOSURE = eINSTANCE.getPathComponent_TransitiveClosure();
5939
5940 /**
5941 * The meta object literal for the '<em><b>Reflexive Transitive Closure</b></em>' attribute feature.
5942 * <!-- begin-user-doc -->
5943 * <!-- end-user-doc -->
5944 * @generated
5945 */
5946 EAttribute PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE = eINSTANCE
5947 .getPathComponent_ReflexiveTransitiveClosure();
5948
5949 /**
5950 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl <em>Symbol</em>}' class.
5951 * <!-- begin-user-doc -->
5952 * <!-- end-user-doc -->
5953 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl
5954 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSymbol()
5955 * @generated
5956 */
5957 EClass SYMBOL = eINSTANCE.getSymbol();
5958
5959 /**
5960 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
5961 * <!-- begin-user-doc -->
5962 * <!-- end-user-doc -->
5963 * @generated
5964 */
5965 EAttribute SYMBOL__NAME = eINSTANCE.getSymbol_Name();
5966
5967 /**
5968 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl <em>Call</em>}' class.
5969 * <!-- begin-user-doc -->
5970 * <!-- end-user-doc -->
5971 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl
5972 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCall()
5973 * @generated
5974 */
5975 EClass CALL = eINSTANCE.getCall();
5976
5977 /**
5978 * The meta object literal for the '<em><b>Functor</b></em>' containment reference feature.
5979 * <!-- begin-user-doc -->
5980 * <!-- end-user-doc -->
5981 * @generated
5982 */
5983 EReference CALL__FUNCTOR = eINSTANCE.getCall_Functor();
5984
5985 /**
5986 * The meta object literal for the '<em><b>Argument List</b></em>' containment reference feature.
5987 * <!-- begin-user-doc -->
5988 * <!-- end-user-doc -->
5989 * @generated
5990 */
5991 EReference CALL__ARGUMENT_LIST = eINSTANCE.getCall_ArgumentList();
5992
5993 /**
5994 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl <em>Reference</em>}' class.
5995 * <!-- begin-user-doc -->
5996 * <!-- end-user-doc -->
5997 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl
5998 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReference()
5999 * @generated
6000 */
6001 EClass REFERENCE = eINSTANCE.getReference();
6002
6003 /**
6004 * The meta object literal for the '<em><b>Components</b></em>' containment reference list feature.
6005 * <!-- begin-user-doc -->
6006 * <!-- end-user-doc -->
6007 * @generated
6008 */
6009 EReference REFERENCE__COMPONENTS = eINSTANCE.getReference_Components();
6010
6011 /**
6012 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl <em>Expression</em>}' class.
6013 * <!-- begin-user-doc -->
6014 * <!-- end-user-doc -->
6015 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl
6016 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpression()
6017 * @generated
6018 */
6019 EClass EXPRESSION = eINSTANCE.getExpression();
6020
6021 /**
6022 * The meta object literal for the '<em><b>Exists Variables</b></em>' containment reference list feature.
6023 * <!-- begin-user-doc -->
6024 * <!-- end-user-doc -->
6025 * @generated
6026 */
6027 EReference EXPRESSION__EXISTS_VARIABLES = eINSTANCE.getExpression_ExistsVariables();
6028
6029 /**
6030 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl <em>Argument</em>}' class.
6031 * <!-- begin-user-doc -->
6032 * <!-- end-user-doc -->
6033 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl
6034 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgument()
6035 * @generated
6036 */
6037 EClass ARGUMENT = eINSTANCE.getArgument();
6038
6039 /**
6040 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl <em>Argument List</em>}' class.
6041 * <!-- begin-user-doc -->
6042 * <!-- end-user-doc -->
6043 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl
6044 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgumentList()
6045 * @generated
6046 */
6047 EClass ARGUMENT_LIST = eINSTANCE.getArgumentList();
6048
6049 /**
6050 * The meta object literal for the '<em><b>Arguments</b></em>' containment reference list feature.
6051 * <!-- begin-user-doc -->
6052 * <!-- end-user-doc -->
6053 * @generated
6054 */
6055 EReference ARGUMENT_LIST__ARGUMENTS = eINSTANCE.getArgumentList_Arguments();
6056
6057 /**
6058 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl <em>Expression Argument</em>}' class.
6059 * <!-- begin-user-doc -->
6060 * <!-- end-user-doc -->
6061 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl
6062 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpressionArgument()
6063 * @generated
6064 */
6065 EClass EXPRESSION_ARGUMENT = eINSTANCE.getExpressionArgument();
6066
6067 /**
6068 * The meta object literal for the '<em><b>Expression</b></em>' containment reference feature.
6069 * <!-- begin-user-doc -->
6070 * <!-- end-user-doc -->
6071 * @generated
6072 */
6073 EReference EXPRESSION_ARGUMENT__EXPRESSION = eINSTANCE.getExpressionArgument_Expression();
6074
6075 /**
6076 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl <em>Star Argument</em>}' class.
6077 * <!-- begin-user-doc -->
6078 * <!-- end-user-doc -->
6079 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl
6080 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStarArgument()
6081 * @generated
6082 */
6083 EClass STAR_ARGUMENT = eINSTANCE.getStarArgument();
6084
6085 /**
6086 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl <em>Typed Argument</em>}' class.
6087 * <!-- begin-user-doc -->
6088 * <!-- end-user-doc -->
6089 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl
6090 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedArgument()
6091 * @generated
6092 */
6093 EClass TYPED_ARGUMENT = eINSTANCE.getTypedArgument();
6094
6095 /**
6096 * The meta object literal for the '<em><b>Type Reference</b></em>' containment reference feature.
6097 * <!-- begin-user-doc -->
6098 * <!-- end-user-doc -->
6099 * @generated
6100 */
6101 EReference TYPED_ARGUMENT__TYPE_REFERENCE = eINSTANCE.getTypedArgument_TypeReference();
6102
6103 /**
6104 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl <em>Multiary Expession</em>}' class.
6105 * <!-- begin-user-doc -->
6106 * <!-- end-user-doc -->
6107 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl
6108 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiaryExpession()
6109 * @generated
6110 */
6111 EClass MULTIARY_EXPESSION = eINSTANCE.getMultiaryExpession();
6112
6113 /**
6114 * The meta object literal for the '<em><b>Children</b></em>' containment reference list feature.
6115 * <!-- begin-user-doc -->
6116 * <!-- end-user-doc -->
6117 * @generated
6118 */
6119 EReference MULTIARY_EXPESSION__CHILDREN = eINSTANCE.getMultiaryExpession_Children();
6120
6121 /**
6122 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl <em>Variable</em>}' class.
6123 * <!-- begin-user-doc -->
6124 * <!-- end-user-doc -->
6125 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl
6126 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable()
6127 * @generated
6128 */
6129 EClass VARIABLE = eINSTANCE.getVariable();
6130
6131 /**
6132 * The meta object literal for the '<em><b>Type Reference</b></em>' containment reference feature.
6133 * <!-- begin-user-doc -->
6134 * <!-- end-user-doc -->
6135 * @generated
6136 */
6137 EReference VARIABLE__TYPE_REFERENCE = eINSTANCE.getVariable_TypeReference();
6138
6139 /**
6140 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl <em>Unary Expression</em>}' class.
6141 * <!-- begin-user-doc -->
6142 * <!-- end-user-doc -->
6143 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl
6144 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryExpression()
6145 * @generated
6146 */
6147 EClass UNARY_EXPRESSION = eINSTANCE.getUnaryExpression();
6148
6149 /**
6150 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
6151 * <!-- begin-user-doc -->
6152 * <!-- end-user-doc -->
6153 * @generated
6154 */
6155 EReference UNARY_EXPRESSION__BODY = eINSTANCE.getUnaryExpression_Body();
6156
6157 /**
6158 * The meta object literal for the '<em><b>Op</b></em>' attribute feature.
6159 * <!-- begin-user-doc -->
6160 * <!-- end-user-doc -->
6161 * @generated
6162 */
6163 EAttribute UNARY_EXPRESSION__OP = eINSTANCE.getUnaryExpression_Op();
6164
6165 /**
6166 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl <em>Binary Expression</em>}' class.
6167 * <!-- begin-user-doc -->
6168 * <!-- end-user-doc -->
6169 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl
6170 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryExpression()
6171 * @generated
6172 */
6173 EClass BINARY_EXPRESSION = eINSTANCE.getBinaryExpression();
6174
6175 /**
6176 * The meta object literal for the '<em><b>Op</b></em>' attribute feature.
6177 * <!-- begin-user-doc -->
6178 * <!-- end-user-doc -->
6179 * @generated
6180 */
6181 EAttribute BINARY_EXPRESSION__OP = eINSTANCE.getBinaryExpression_Op();
6182
6183 /**
6184 * The meta object literal for the '<em><b>Left</b></em>' containment reference feature.
6185 * <!-- begin-user-doc -->
6186 * <!-- end-user-doc -->
6187 * @generated
6188 */
6189 EReference BINARY_EXPRESSION__LEFT = eINSTANCE.getBinaryExpression_Left();
6190
6191 /**
6192 * The meta object literal for the '<em><b>Right</b></em>' containment reference feature.
6193 * <!-- begin-user-doc -->
6194 * <!-- end-user-doc -->
6195 * @generated
6196 */
6197 EReference BINARY_EXPRESSION__RIGHT = eINSTANCE.getBinaryExpression_Right();
6198
6199 /**
6200 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl <em>Disjunction</em>}' class.
6201 * <!-- begin-user-doc -->
6202 * <!-- end-user-doc -->
6203 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl
6204 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDisjunction()
6205 * @generated
6206 */
6207 EClass DISJUNCTION = eINSTANCE.getDisjunction();
6208
6209 /**
6210 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl <em>Conjunction</em>}' class.
6211 * <!-- begin-user-doc -->
6212 * <!-- end-user-doc -->
6213 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl
6214 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConjunction()
6215 * @generated
6216 */
6217 EClass CONJUNCTION = eINSTANCE.getConjunction();
6218
6219 /**
6220 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl <em>Conditional Expression</em>}' class.
6221 * <!-- begin-user-doc -->
6222 * <!-- end-user-doc -->
6223 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl
6224 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConditionalExpression()
6225 * @generated
6226 */
6227 EClass CONDITIONAL_EXPRESSION = eINSTANCE.getConditionalExpression();
6228
6229 /**
6230 * The meta object literal for the '<em><b>Condition</b></em>' containment reference feature.
6231 * <!-- begin-user-doc -->
6232 * <!-- end-user-doc -->
6233 * @generated
6234 */
6235 EReference CONDITIONAL_EXPRESSION__CONDITION = eINSTANCE.getConditionalExpression_Condition();
6236
6237 /**
6238 * The meta object literal for the '<em><b>Then</b></em>' containment reference feature.
6239 * <!-- begin-user-doc -->
6240 * <!-- end-user-doc -->
6241 * @generated
6242 */
6243 EReference CONDITIONAL_EXPRESSION__THEN = eINSTANCE.getConditionalExpression_Then();
6244
6245 /**
6246 * The meta object literal for the '<em><b>Else</b></em>' containment reference feature.
6247 * <!-- begin-user-doc -->
6248 * <!-- end-user-doc -->
6249 * @generated
6250 */
6251 EReference CONDITIONAL_EXPRESSION__ELSE = eINSTANCE.getConditionalExpression_Else();
6252
6253 /**
6254 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl <em>Switch</em>}' class.
6255 * <!-- begin-user-doc -->
6256 * <!-- end-user-doc -->
6257 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl
6258 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSwitch()
6259 * @generated
6260 */
6261 EClass SWITCH = eINSTANCE.getSwitch();
6262
6263 /**
6264 * The meta object literal for the '<em><b>Cases</b></em>' containment reference list feature.
6265 * <!-- begin-user-doc -->
6266 * <!-- end-user-doc -->
6267 * @generated
6268 */
6269 EReference SWITCH__CASES = eINSTANCE.getSwitch_Cases();
6270
6271 /**
6272 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl <em>Case</em>}' class.
6273 * <!-- begin-user-doc -->
6274 * <!-- end-user-doc -->
6275 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl
6276 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCase()
6277 * @generated
6278 */
6279 EClass CASE = eINSTANCE.getCase();
6280
6281 /**
6282 * The meta object literal for the '<em><b>Condition</b></em>' containment reference feature.
6283 * <!-- begin-user-doc -->
6284 * <!-- end-user-doc -->
6285 * @generated
6286 */
6287 EReference CASE__CONDITION = eINSTANCE.getCase_Condition();
6288
6289 /**
6290 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
6291 * <!-- begin-user-doc -->
6292 * <!-- end-user-doc -->
6293 * @generated
6294 */
6295 EReference CASE__BODY = eINSTANCE.getCase_Body();
6296
6297 /**
6298 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl <em>Let Expression</em>}' class.
6299 * <!-- begin-user-doc -->
6300 * <!-- end-user-doc -->
6301 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl
6302 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetExpression()
6303 * @generated
6304 */
6305 EClass LET_EXPRESSION = eINSTANCE.getLetExpression();
6306
6307 /**
6308 * The meta object literal for the '<em><b>Bindings</b></em>' containment reference list feature.
6309 * <!-- begin-user-doc -->
6310 * <!-- end-user-doc -->
6311 * @generated
6312 */
6313 EReference LET_EXPRESSION__BINDINGS = eINSTANCE.getLetExpression_Bindings();
6314
6315 /**
6316 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
6317 * <!-- begin-user-doc -->
6318 * <!-- end-user-doc -->
6319 * @generated
6320 */
6321 EReference LET_EXPRESSION__BODY = eINSTANCE.getLetExpression_Body();
6322
6323 /**
6324 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl <em>Let Binding</em>}' class.
6325 * <!-- begin-user-doc -->
6326 * <!-- end-user-doc -->
6327 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl
6328 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetBinding()
6329 * @generated
6330 */
6331 EClass LET_BINDING = eINSTANCE.getLetBinding();
6332
6333 /**
6334 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
6335 * <!-- begin-user-doc -->
6336 * <!-- end-user-doc -->
6337 * @generated
6338 */
6339 EReference LET_BINDING__VALUE = eINSTANCE.getLetBinding_Value();
6340
6341 /**
6342 * The meta object literal for the '<em><b>Variable</b></em>' containment reference feature.
6343 * <!-- begin-user-doc -->
6344 * <!-- end-user-doc -->
6345 * @generated
6346 */
6347 EReference LET_BINDING__VARIABLE = eINSTANCE.getLetBinding_Variable();
6348
6349 /**
6350 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
6351 * <!-- begin-user-doc -->
6352 * <!-- end-user-doc -->
6353 * @generated
6354 */
6355 EAttribute LET_BINDING__NAME = eINSTANCE.getLetBinding_Name();
6356
6357 /**
6358 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
6359 * <!-- begin-user-doc -->
6360 * <!-- end-user-doc -->
6361 * @generated
6362 */
6363 EReference LET_BINDING__TYPE = eINSTANCE.getLetBinding_Type();
6364
6365 /**
6366 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl <em>Literal</em>}' class.
6367 * <!-- begin-user-doc -->
6368 * <!-- end-user-doc -->
6369 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl
6370 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral()
6371 * @generated
6372 */
6373 EClass LITERAL = eINSTANCE.getLiteral();
6374
6375 /**
6376 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl <em>Int Literal</em>}' class.
6377 * <!-- begin-user-doc -->
6378 * <!-- end-user-doc -->
6379 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl
6380 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntLiteral()
6381 * @generated
6382 */
6383 EClass INT_LITERAL = eINSTANCE.getIntLiteral();
6384
6385 /**
6386 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
6387 * <!-- begin-user-doc -->
6388 * <!-- end-user-doc -->
6389 * @generated
6390 */
6391 EAttribute INT_LITERAL__VALUE = eINSTANCE.getIntLiteral_Value();
6392
6393 /**
6394 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl <em>Real Literal</em>}' class.
6395 * <!-- begin-user-doc -->
6396 * <!-- end-user-doc -->
6397 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl
6398 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealLiteral()
6399 * @generated
6400 */
6401 EClass REAL_LITERAL = eINSTANCE.getRealLiteral();
6402
6403 /**
6404 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
6405 * <!-- begin-user-doc -->
6406 * <!-- end-user-doc -->
6407 * @generated
6408 */
6409 EAttribute REAL_LITERAL__VALUE = eINSTANCE.getRealLiteral_Value();
6410
6411 /**
6412 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl <em>String Literal</em>}' class.
6413 * <!-- begin-user-doc -->
6414 * <!-- end-user-doc -->
6415 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl
6416 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringLiteral()
6417 * @generated
6418 */
6419 EClass STRING_LITERAL = eINSTANCE.getStringLiteral();
6420
6421 /**
6422 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
6423 * <!-- begin-user-doc -->
6424 * <!-- end-user-doc -->
6425 * @generated
6426 */
6427 EAttribute STRING_LITERAL__VALUE = eINSTANCE.getStringLiteral_Value();
6428
6429 /**
6430 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl <em>Logic Literal</em>}' class.
6431 * <!-- begin-user-doc -->
6432 * <!-- end-user-doc -->
6433 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl
6434 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicLiteral()
6435 * @generated
6436 */
6437 EClass LOGIC_LITERAL = eINSTANCE.getLogicLiteral();
6438
6439 /**
6440 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
6441 * <!-- begin-user-doc -->
6442 * <!-- end-user-doc -->
6443 * @generated
6444 */
6445 EAttribute LOGIC_LITERAL__VALUE = eINSTANCE.getLogicLiteral_Value();
6446
6447 /**
6448 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl <em>Empty Literal</em>}' class.
6449 * <!-- begin-user-doc -->
6450 * <!-- end-user-doc -->
6451 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl
6452 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEmptyLiteral()
6453 * @generated
6454 */
6455 EClass EMPTY_LITERAL = eINSTANCE.getEmptyLiteral();
6456
6457 /**
6458 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl <em>Cast Expression</em>}' class.
6459 * <!-- begin-user-doc -->
6460 * <!-- end-user-doc -->
6461 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl
6462 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCastExpression()
6463 * @generated
6464 */
6465 EClass CAST_EXPRESSION = eINSTANCE.getCastExpression();
6466
6467 /**
6468 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
6469 * <!-- begin-user-doc -->
6470 * <!-- end-user-doc -->
6471 * @generated
6472 */
6473 EReference CAST_EXPRESSION__BODY = eINSTANCE.getCastExpression_Body();
6474
6475 /**
6476 * The meta object literal for the '<em><b>Target Type</b></em>' reference feature.
6477 * <!-- begin-user-doc -->
6478 * <!-- end-user-doc -->
6479 * @generated
6480 */
6481 EReference CAST_EXPRESSION__TARGET_TYPE = eINSTANCE.getCastExpression_TargetType();
6482
6483 /**
6484 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl <em>Aggregate Expression</em>}' class.
6485 * <!-- begin-user-doc -->
6486 * <!-- end-user-doc -->
6487 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl
6488 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregateExpression()
6489 * @generated
6490 */
6491 EClass AGGREGATE_EXPRESSION = eINSTANCE.getAggregateExpression();
6492
6493 /**
6494 * The meta object literal for the '<em><b>Forall Variables</b></em>' containment reference list feature.
6495 * <!-- begin-user-doc -->
6496 * <!-- end-user-doc -->
6497 * @generated
6498 */
6499 EReference AGGREGATE_EXPRESSION__FORALL_VARIABLES = eINSTANCE.getAggregateExpression_ForallVariables();
6500
6501 /**
6502 * The meta object literal for the '<em><b>Condition</b></em>' containment reference feature.
6503 * <!-- begin-user-doc -->
6504 * <!-- end-user-doc -->
6505 * @generated
6506 */
6507 EReference AGGREGATE_EXPRESSION__CONDITION = eINSTANCE.getAggregateExpression_Condition();
6508
6509 /**
6510 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl <em>Count</em>}' class.
6511 * <!-- begin-user-doc -->
6512 * <!-- end-user-doc -->
6513 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl
6514 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCount()
6515 * @generated
6516 */
6517 EClass COUNT = eINSTANCE.getCount();
6518
6519 /**
6520 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl <em>Aggregation</em>}' class.
6521 * <!-- begin-user-doc -->
6522 * <!-- end-user-doc -->
6523 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl
6524 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregation()
6525 * @generated
6526 */
6527 EClass AGGREGATION = eINSTANCE.getAggregation();
6528
6529 /**
6530 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
6531 * <!-- begin-user-doc -->
6532 * <!-- end-user-doc -->
6533 * @generated
6534 */
6535 EReference AGGREGATION__VALUE = eINSTANCE.getAggregation_Value();
6536
6537 /**
6538 * The meta object literal for the '<em><b>Op</b></em>' reference feature.
6539 * <!-- begin-user-doc -->
6540 * <!-- end-user-doc -->
6541 * @generated
6542 */
6543 EReference AGGREGATION__OP = eINSTANCE.getAggregation_Op();
6544
6545 /**
6546 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl <em>Forall</em>}' class.
6547 * <!-- begin-user-doc -->
6548 * <!-- end-user-doc -->
6549 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl
6550 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getForall()
6551 * @generated
6552 */
6553 EClass FORALL = eINSTANCE.getForall();
6554
6555 /**
6556 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
6557 * <!-- begin-user-doc -->
6558 * <!-- end-user-doc -->
6559 * @generated
6560 */
6561 EReference FORALL__BODY = eINSTANCE.getForall_Body();
6562
6563 /**
6564 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl <em>Type Reference</em>}' class.
6565 * <!-- begin-user-doc -->
6566 * <!-- end-user-doc -->
6567 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl
6568 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypeReference()
6569 * @generated
6570 */
6571 EClass TYPE_REFERENCE = eINSTANCE.getTypeReference();
6572
6573 /**
6574 * The meta object literal for the '<em><b>Force Object Type</b></em>' attribute feature.
6575 * <!-- begin-user-doc -->
6576 * <!-- end-user-doc -->
6577 * @generated
6578 */
6579 EAttribute TYPE_REFERENCE__FORCE_OBJECT_TYPE = eINSTANCE.getTypeReference_ForceObjectType();
6580
6581 /**
6582 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
6583 * <!-- begin-user-doc -->
6584 * <!-- end-user-doc -->
6585 * @generated
6586 */
6587 EReference TYPE_REFERENCE__TYPE = eINSTANCE.getTypeReference_Type();
6588
6589 /**
6590 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl <em>Infinity Literal</em>}' class.
6591 * <!-- begin-user-doc -->
6592 * <!-- end-user-doc -->
6593 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl
6594 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInfinityLiteral()
6595 * @generated
6596 */
6597 EClass INFINITY_LITERAL = eINSTANCE.getInfinityLiteral();
6598
6599 /**
6600 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl <em>Interval</em>}' class.
6601 * <!-- begin-user-doc -->
6602 * <!-- end-user-doc -->
6603 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl
6604 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterval()
6605 * @generated
6606 */
6607 EClass INTERVAL = eINSTANCE.getInterval();
6608
6609 /**
6610 * The meta object literal for the '<em><b>Lower Bound</b></em>' containment reference feature.
6611 * <!-- begin-user-doc -->
6612 * <!-- end-user-doc -->
6613 * @generated
6614 */
6615 EReference INTERVAL__LOWER_BOUND = eINSTANCE.getInterval_LowerBound();
6616
6617 /**
6618 * The meta object literal for the '<em><b>Upper Bound</b></em>' containment reference feature.
6619 * <!-- begin-user-doc -->
6620 * <!-- end-user-doc -->
6621 * @generated
6622 */
6623 EReference INTERVAL__UPPER_BOUND = eINSTANCE.getInterval_UpperBound();
6624
6625 /**
6626 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl <em>Functor</em>}' class.
6627 * <!-- begin-user-doc -->
6628 * <!-- end-user-doc -->
6629 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl
6630 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctor()
6631 * @generated
6632 */
6633 EClass FUNCTOR = eINSTANCE.getFunctor();
6634
6635 /**
6636 * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
6637 * <!-- begin-user-doc -->
6638 * <!-- end-user-doc -->
6639 * @generated
6640 */
6641 EReference FUNCTOR__PARAMETERS = eINSTANCE.getFunctor_Parameters();
6642
6643 /**
6644 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl <em>Relation</em>}' class.
6645 * <!-- begin-user-doc -->
6646 * <!-- end-user-doc -->
6647 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl
6648 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRelation()
6649 * @generated
6650 */
6651 EClass RELATION = eINSTANCE.getRelation();
6652
6653 /**
6654 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl <em>Base Relation</em>}' class.
6655 * <!-- begin-user-doc -->
6656 * <!-- end-user-doc -->
6657 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl
6658 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBaseRelation()
6659 * @generated
6660 */
6661 EClass BASE_RELATION = eINSTANCE.getBaseRelation();
6662
6663 /**
6664 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl <em>Predicate</em>}' class.
6665 * <!-- begin-user-doc -->
6666 * <!-- end-user-doc -->
6667 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl
6668 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate()
6669 * @generated
6670 */
6671 EClass PREDICATE = eINSTANCE.getPredicate();
6672
6673 /**
6674 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl <em>Datatype</em>}' class.
6675 * <!-- begin-user-doc -->
6676 * <!-- end-user-doc -->
6677 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl
6678 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDatatype()
6679 * @generated
6680 */
6681 EClass DATATYPE = eINSTANCE.getDatatype();
6682
6683 /**
6684 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl <em>Function</em>}' class.
6685 * <!-- begin-user-doc -->
6686 * <!-- end-user-doc -->
6687 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl
6688 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunction()
6689 * @generated
6690 */
6691 EClass FUNCTION = eINSTANCE.getFunction();
6692
6693 /**
6694 * The meta object literal for the '<em><b>Result Type</b></em>' reference feature.
6695 * <!-- begin-user-doc -->
6696 * <!-- end-user-doc -->
6697 * @generated
6698 */
6699 EReference FUNCTION__RESULT_TYPE = eINSTANCE.getFunction_ResultType();
6700
6701 /**
6702 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl <em>Metric</em>}' class.
6703 * <!-- begin-user-doc -->
6704 * <!-- end-user-doc -->
6705 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl
6706 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetric()
6707 * @generated
6708 */
6709 EClass METRIC = eINSTANCE.getMetric();
6710
6711 /**
6712 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl <em>Operator</em>}' class.
6713 * <!-- begin-user-doc -->
6714 * <!-- end-user-doc -->
6715 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl
6716 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getOperator()
6717 * @generated
6718 */
6719 EClass OPERATOR = eINSTANCE.getOperator();
6720
6721 /**
6722 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl <em>Node</em>}' class.
6723 * <!-- begin-user-doc -->
6724 * <!-- end-user-doc -->
6725 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl
6726 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNode()
6727 * @generated
6728 */
6729 EClass NODE = eINSTANCE.getNode();
6730
6731 /**
6732 * The meta object literal for the '<em><b>Named</b></em>' attribute feature.
6733 * <!-- begin-user-doc -->
6734 * <!-- end-user-doc -->
6735 * @generated
6736 */
6737 EAttribute NODE__NAMED = eINSTANCE.getNode_Named();
6738
6739 /**
6740 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl <em>Statement</em>}' class.
6741 * <!-- begin-user-doc -->
6742 * <!-- end-user-doc -->
6743 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl
6744 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement()
6745 * @generated
6746 */
6747 EClass STATEMENT = eINSTANCE.getStatement();
6748
6749 /**
6750 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl <em>Abstract Assertion</em>}' class.
6751 * <!-- begin-user-doc -->
6752 * <!-- end-user-doc -->
6753 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl
6754 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAbstractAssertion()
6755 * @generated
6756 */
6757 EClass ABSTRACT_ASSERTION = eINSTANCE.getAbstractAssertion();
6758
6759 /**
6760 * The meta object literal for the '<em><b>Expression</b></em>' containment reference feature.
6761 * <!-- begin-user-doc -->
6762 * <!-- end-user-doc -->
6763 * @generated
6764 */
6765 EReference ABSTRACT_ASSERTION__EXPRESSION = eINSTANCE.getAbstractAssertion_Expression();
6766
6767 /**
6768 * The meta object literal for the '<em><b>Range</b></em>' containment reference feature.
6769 * <!-- begin-user-doc -->
6770 * <!-- end-user-doc -->
6771 * @generated
6772 */
6773 EReference ABSTRACT_ASSERTION__RANGE = eINSTANCE.getAbstractAssertion_Range();
6774
6775 /**
6776 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl <em>Functor Definiton</em>}' class.
6777 * <!-- begin-user-doc -->
6778 * <!-- end-user-doc -->
6779 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl
6780 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctorDefiniton()
6781 * @generated
6782 */
6783 EClass FUNCTOR_DEFINITON = eINSTANCE.getFunctorDefiniton();
6784
6785 /**
6786 * The meta object literal for the '<em><b>Head</b></em>' containment reference feature.
6787 * <!-- begin-user-doc -->
6788 * <!-- end-user-doc -->
6789 * @generated
6790 */
6791 EReference FUNCTOR_DEFINITON__HEAD = eINSTANCE.getFunctorDefiniton_Head();
6792
6793 /**
6794 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
6795 * <!-- begin-user-doc -->
6796 * <!-- end-user-doc -->
6797 * @generated
6798 */
6799 EReference FUNCTOR_DEFINITON__BODY = eINSTANCE.getFunctorDefiniton_Body();
6800
6801 /**
6802 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl <em>Predicate Definition</em>}' class.
6803 * <!-- begin-user-doc -->
6804 * <!-- end-user-doc -->
6805 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl
6806 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateDefinition()
6807 * @generated
6808 */
6809 EClass PREDICATE_DEFINITION = eINSTANCE.getPredicateDefinition();
6810
6811 /**
6812 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl <em>Function Definition</em>}' class.
6813 * <!-- begin-user-doc -->
6814 * <!-- end-user-doc -->
6815 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl
6816 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctionDefinition()
6817 * @generated
6818 */
6819 EClass FUNCTION_DEFINITION = eINSTANCE.getFunctionDefinition();
6820
6821 /**
6822 * The meta object literal for the '<em><b>Result Type</b></em>' reference feature.
6823 * <!-- begin-user-doc -->
6824 * <!-- end-user-doc -->
6825 * @generated
6826 */
6827 EReference FUNCTION_DEFINITION__RESULT_TYPE = eINSTANCE.getFunctionDefinition_ResultType();
6828
6829 /**
6830 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl <em>Attribute</em>}' class.
6831 * <!-- begin-user-doc -->
6832 * <!-- end-user-doc -->
6833 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl
6834 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttribute()
6835 * @generated
6836 */
6837 EClass ATTRIBUTE = eINSTANCE.getAttribute();
6838
6839 /**
6840 * The meta object literal for the '<em><b>Target</b></em>' reference feature.
6841 * <!-- begin-user-doc -->
6842 * <!-- end-user-doc -->
6843 * @generated
6844 */
6845 EReference ATTRIBUTE__TARGET = eINSTANCE.getAttribute_Target();
6846
6847 /**
6848 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
6849 * <!-- begin-user-doc -->
6850 * <!-- end-user-doc -->
6851 * @generated
6852 */
6853 EAttribute ATTRIBUTE__KIND = eINSTANCE.getAttribute_Kind();
6854
6855 /**
6856 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl <em>Extern Declaration</em>}' class.
6857 * <!-- begin-user-doc -->
6858 * <!-- end-user-doc -->
6859 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl
6860 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDeclaration()
6861 * @generated
6862 */
6863 EClass EXTERN_DECLARATION = eINSTANCE.getExternDeclaration();
6864
6865 /**
6866 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
6867 * <!-- begin-user-doc -->
6868 * <!-- end-user-doc -->
6869 * @generated
6870 */
6871 EAttribute EXTERN_DECLARATION__NAME = eINSTANCE.getExternDeclaration_Name();
6872
6873 /**
6874 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl <em>Extern Functor Declaration</em>}' class.
6875 * <!-- begin-user-doc -->
6876 * <!-- end-user-doc -->
6877 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl
6878 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctorDeclaration()
6879 * @generated
6880 */
6881 EClass EXTERN_FUNCTOR_DECLARATION = eINSTANCE.getExternFunctorDeclaration();
6882
6883 /**
6884 * The meta object literal for the '<em><b>Argument List</b></em>' containment reference feature.
6885 * <!-- begin-user-doc -->
6886 * <!-- end-user-doc -->
6887 * @generated
6888 */
6889 EReference EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST = eINSTANCE.getExternFunctorDeclaration_ArgumentList();
6890
6891 /**
6892 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl <em>Extern Predicate Declaration</em>}' class.
6893 * <!-- begin-user-doc -->
6894 * <!-- end-user-doc -->
6895 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl
6896 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternPredicateDeclaration()
6897 * @generated
6898 */
6899 EClass EXTERN_PREDICATE_DECLARATION = eINSTANCE.getExternPredicateDeclaration();
6900
6901 /**
6902 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl <em>Extern Function Declaration</em>}' class.
6903 * <!-- begin-user-doc -->
6904 * <!-- end-user-doc -->
6905 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl
6906 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctionDeclaration()
6907 * @generated
6908 */
6909 EClass EXTERN_FUNCTION_DECLARATION = eINSTANCE.getExternFunctionDeclaration();
6910
6911 /**
6912 * The meta object literal for the '<em><b>Result Type</b></em>' reference feature.
6913 * <!-- begin-user-doc -->
6914 * <!-- end-user-doc -->
6915 * @generated
6916 */
6917 EReference EXTERN_FUNCTION_DECLARATION__RESULT_TYPE = eINSTANCE.getExternFunctionDeclaration_ResultType();
6918
6919 /**
6920 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl <em>Extern Aggregation Operator Declaration</em>}' class.
6921 * <!-- begin-user-doc -->
6922 * <!-- end-user-doc -->
6923 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl
6924 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternAggregationOperatorDeclaration()
6925 * @generated
6926 */
6927 EClass EXTERN_AGGREGATION_OPERATOR_DECLARATION = eINSTANCE.getExternAggregationOperatorDeclaration();
6928
6929 /**
6930 * The meta object literal for the '<em><b>Argument Type</b></em>' reference feature.
6931 * <!-- begin-user-doc -->
6932 * <!-- end-user-doc -->
6933 * @generated
6934 */
6935 EReference EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE = eINSTANCE
6936 .getExternAggregationOperatorDeclaration_ArgumentType();
6937
6938 /**
6939 * The meta object literal for the '<em><b>Result Type</b></em>' reference feature.
6940 * <!-- begin-user-doc -->
6941 * <!-- end-user-doc -->
6942 * @generated
6943 */
6944 EReference EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE = eINSTANCE
6945 .getExternAggregationOperatorDeclaration_ResultType();
6946
6947 /**
6948 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl <em>Extern Datatype Declaration</em>}' class.
6949 * <!-- begin-user-doc -->
6950 * <!-- end-user-doc -->
6951 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl
6952 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDatatypeDeclaration()
6953 * @generated
6954 */
6955 EClass EXTERN_DATATYPE_DECLARATION = eINSTANCE.getExternDatatypeDeclaration();
6956
6957 /**
6958 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl <em>Class Declaration</em>}' class.
6959 * <!-- begin-user-doc -->
6960 * <!-- end-user-doc -->
6961 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl
6962 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassDeclaration()
6963 * @generated
6964 */
6965 EClass CLASS_DECLARATION = eINSTANCE.getClassDeclaration();
6966
6967 /**
6968 * The meta object literal for the '<em><b>Fields</b></em>' containment reference list feature.
6969 * <!-- begin-user-doc -->
6970 * <!-- end-user-doc -->
6971 * @generated
6972 */
6973 EReference CLASS_DECLARATION__FIELDS = eINSTANCE.getClassDeclaration_Fields();
6974
6975 /**
6976 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
6977 * <!-- begin-user-doc -->
6978 * <!-- end-user-doc -->
6979 * @generated
6980 */
6981 EAttribute CLASS_DECLARATION__NAME = eINSTANCE.getClassDeclaration_Name();
6982
6983 /**
6984 * The meta object literal for the '<em><b>Abstract</b></em>' attribute feature.
6985 * <!-- begin-user-doc -->
6986 * <!-- end-user-doc -->
6987 * @generated
6988 */
6989 EAttribute CLASS_DECLARATION__ABSTRACT = eINSTANCE.getClassDeclaration_Abstract();
6990
6991 /**
6992 * The meta object literal for the '<em><b>Supertypes</b></em>' reference list feature.
6993 * <!-- begin-user-doc -->
6994 * <!-- end-user-doc -->
6995 * @generated
6996 */
6997 EReference CLASS_DECLARATION__SUPERTYPES = eINSTANCE.getClassDeclaration_Supertypes();
6998
6999 /**
7000 * The meta object literal for the '<em><b>Root</b></em>' attribute feature.
7001 * <!-- begin-user-doc -->
7002 * <!-- end-user-doc -->
7003 * @generated
7004 */
7005 EAttribute CLASS_DECLARATION__ROOT = eINSTANCE.getClassDeclaration_Root();
7006
7007 /**
7008 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl <em>Enum Declaration</em>}' class.
7009 * <!-- begin-user-doc -->
7010 * <!-- end-user-doc -->
7011 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl
7012 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumDeclaration()
7013 * @generated
7014 */
7015 EClass ENUM_DECLARATION = eINSTANCE.getEnumDeclaration();
7016
7017 /**
7018 * The meta object literal for the '<em><b>Literals</b></em>' containment reference list feature.
7019 * <!-- begin-user-doc -->
7020 * <!-- end-user-doc -->
7021 * @generated
7022 */
7023 EReference ENUM_DECLARATION__LITERALS = eINSTANCE.getEnumDeclaration_Literals();
7024
7025 /**
7026 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
7027 * <!-- begin-user-doc -->
7028 * <!-- end-user-doc -->
7029 * @generated
7030 */
7031 EAttribute ENUM_DECLARATION__NAME = eINSTANCE.getEnumDeclaration_Name();
7032
7033 /**
7034 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl <em>Enum Literal</em>}' class.
7035 * <!-- begin-user-doc -->
7036 * <!-- end-user-doc -->
7037 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl
7038 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumLiteral()
7039 * @generated
7040 */
7041 EClass ENUM_LITERAL = eINSTANCE.getEnumLiteral();
7042
7043 /**
7044 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
7045 * <!-- begin-user-doc -->
7046 * <!-- end-user-doc -->
7047 * @generated
7048 */
7049 EAttribute ENUM_LITERAL__NAME = eINSTANCE.getEnumLiteral_Name();
7050
7051 /**
7052 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl <em>Field</em>}' class.
7053 * <!-- begin-user-doc -->
7054 * <!-- end-user-doc -->
7055 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl
7056 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getField()
7057 * @generated
7058 */
7059 EClass FIELD = eINSTANCE.getField();
7060
7061 /**
7062 * The meta object literal for the '<em><b>Containment</b></em>' attribute feature.
7063 * <!-- begin-user-doc -->
7064 * <!-- end-user-doc -->
7065 * @generated
7066 */
7067 EAttribute FIELD__CONTAINMENT = eINSTANCE.getField_Containment();
7068
7069 /**
7070 * The meta object literal for the '<em><b>Cross Reference</b></em>' attribute feature.
7071 * <!-- begin-user-doc -->
7072 * <!-- end-user-doc -->
7073 * @generated
7074 */
7075 EAttribute FIELD__CROSS_REFERENCE = eINSTANCE.getField_CrossReference();
7076
7077 /**
7078 * The meta object literal for the '<em><b>Opposite</b></em>' reference feature.
7079 * <!-- begin-user-doc -->
7080 * <!-- end-user-doc -->
7081 * @generated
7082 */
7083 EReference FIELD__OPPOSITE = eINSTANCE.getField_Opposite();
7084
7085 /**
7086 * The meta object literal for the '<em><b>Multiplicity</b></em>' containment reference feature.
7087 * <!-- begin-user-doc -->
7088 * <!-- end-user-doc -->
7089 * @generated
7090 */
7091 EReference FIELD__MULTIPLICITY = eINSTANCE.getField_Multiplicity();
7092
7093 /**
7094 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
7095 * <!-- begin-user-doc -->
7096 * <!-- end-user-doc -->
7097 * @generated
7098 */
7099 EReference FIELD__TYPE = eINSTANCE.getField_Type();
7100
7101 /**
7102 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
7103 * <!-- begin-user-doc -->
7104 * <!-- end-user-doc -->
7105 * @generated
7106 */
7107 EAttribute FIELD__NAME = eINSTANCE.getField_Name();
7108
7109 /**
7110 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl <em>Multiplicity</em>}' class.
7111 * <!-- begin-user-doc -->
7112 * <!-- end-user-doc -->
7113 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl
7114 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicity()
7115 * @generated
7116 */
7117 EClass MULTIPLICITY = eINSTANCE.getMultiplicity();
7118
7119 /**
7120 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl <em>Default Assertion</em>}' class.
7121 * <!-- begin-user-doc -->
7122 * <!-- end-user-doc -->
7123 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl
7124 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultAssertion()
7125 * @generated
7126 */
7127 EClass DEFAULT_ASSERTION = eINSTANCE.getDefaultAssertion();
7128
7129 /**
7130 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl <em>Assertion</em>}' class.
7131 * <!-- begin-user-doc -->
7132 * <!-- end-user-doc -->
7133 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl
7134 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAssertion()
7135 * @generated
7136 */
7137 EClass ASSERTION = eINSTANCE.getAssertion();
7138
7139 /**
7140 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl <em>Unbounded Multiplicity</em>}' class.
7141 * <!-- begin-user-doc -->
7142 * <!-- end-user-doc -->
7143 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl
7144 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnboundedMultiplicity()
7145 * @generated
7146 */
7147 EClass UNBOUNDED_MULTIPLICITY = eINSTANCE.getUnboundedMultiplicity();
7148
7149 /**
7150 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl <em>Exact Multiplicity</em>}' class.
7151 * <!-- begin-user-doc -->
7152 * <!-- end-user-doc -->
7153 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl
7154 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactMultiplicity()
7155 * @generated
7156 */
7157 EClass EXACT_MULTIPLICITY = eINSTANCE.getExactMultiplicity();
7158
7159 /**
7160 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
7161 * <!-- begin-user-doc -->
7162 * <!-- end-user-doc -->
7163 * @generated
7164 */
7165 EAttribute EXACT_MULTIPLICITY__VALUE = eINSTANCE.getExactMultiplicity_Value();
7166
7167 /**
7168 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl <em>Bounded Multiplicity</em>}' class.
7169 * <!-- begin-user-doc -->
7170 * <!-- end-user-doc -->
7171 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl
7172 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedMultiplicity()
7173 * @generated
7174 */
7175 EClass BOUNDED_MULTIPLICITY = eINSTANCE.getBoundedMultiplicity();
7176
7177 /**
7178 * The meta object literal for the '<em><b>Lower Bound</b></em>' attribute feature.
7179 * <!-- begin-user-doc -->
7180 * <!-- end-user-doc -->
7181 * @generated
7182 */
7183 EAttribute BOUNDED_MULTIPLICITY__LOWER_BOUND = eINSTANCE.getBoundedMultiplicity_LowerBound();
7184
7185 /**
7186 * The meta object literal for the '<em><b>Upper Bound</b></em>' attribute feature.
7187 * <!-- begin-user-doc -->
7188 * <!-- end-user-doc -->
7189 * @generated
7190 */
7191 EAttribute BOUNDED_MULTIPLICITY__UPPER_BOUND = eINSTANCE.getBoundedMultiplicity_UpperBound();
7192
7193 /**
7194 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes <em>Inline Predicate Attrributes</em>}' class.
7195 * <!-- begin-user-doc -->
7196 * <!-- end-user-doc -->
7197 * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes
7198 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInlinePredicateAttrributes()
7199 * @generated
7200 */
7201 EClass INLINE_PREDICATE_ATTRRIBUTES = eINSTANCE.getInlinePredicateAttrributes();
7202
7203 /**
7204 * The meta object literal for the '<em><b>Error</b></em>' attribute feature.
7205 * <!-- begin-user-doc -->
7206 * <!-- end-user-doc -->
7207 * @generated
7208 */
7209 EAttribute INLINE_PREDICATE_ATTRRIBUTES__ERROR = eINSTANCE.getInlinePredicateAttrributes_Error();
7210
7211 /**
7212 * The meta object literal for the '<em><b>Functional</b></em>' attribute feature.
7213 * <!-- begin-user-doc -->
7214 * <!-- end-user-doc -->
7215 * @generated
7216 */
7217 EAttribute INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL = eINSTANCE.getInlinePredicateAttrributes_Functional();
7218
7219 /**
7220 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl <em>Aggregation Operator</em>}' class.
7221 * <!-- begin-user-doc -->
7222 * <!-- end-user-doc -->
7223 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl
7224 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregationOperator()
7225 * @generated
7226 */
7227 EClass AGGREGATION_OPERATOR = eINSTANCE.getAggregationOperator();
7228
7229 /**
7230 * The meta object literal for the '<em><b>Argument Type</b></em>' reference feature.
7231 * <!-- begin-user-doc -->
7232 * <!-- end-user-doc -->
7233 * @generated
7234 */
7235 EReference AGGREGATION_OPERATOR__ARGUMENT_TYPE = eINSTANCE.getAggregationOperator_ArgumentType();
7236
7237 /**
7238 * The meta object literal for the '<em><b>Result Type</b></em>' reference feature.
7239 * <!-- begin-user-doc -->
7240 * <!-- end-user-doc -->
7241 * @generated
7242 */
7243 EReference AGGREGATION_OPERATOR__RESULT_TYPE = eINSTANCE.getAggregationOperator_ResultType();
7244
7245 /**
7246 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl <em>Problem</em>}' class.
7247 * <!-- begin-user-doc -->
7248 * <!-- end-user-doc -->
7249 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl
7250 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem()
7251 * @generated
7252 */
7253 EClass PROBLEM = eINSTANCE.getProblem();
7254
7255 /**
7256 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
7257 * <!-- begin-user-doc -->
7258 * <!-- end-user-doc -->
7259 * @generated
7260 */
7261 EAttribute PROBLEM__NAME = eINSTANCE.getProblem_Name();
7262
7263 /**
7264 * The meta object literal for the '<em><b>Statements</b></em>' containment reference list feature.
7265 * <!-- begin-user-doc -->
7266 * <!-- end-user-doc -->
7267 * @generated
7268 */
7269 EReference PROBLEM__STATEMENTS = eINSTANCE.getProblem_Statements();
7270
7271 /**
7272 * The meta object literal for the '<em><b>Symbols</b></em>' containment reference list feature.
7273 * <!-- begin-user-doc -->
7274 * <!-- end-user-doc -->
7275 * @generated
7276 */
7277 EReference PROBLEM__SYMBOLS = eINSTANCE.getProblem_Symbols();
7278
7279 /**
7280 * The meta object literal for the '<em><b>Imports</b></em>' containment reference list feature.
7281 * <!-- begin-user-doc -->
7282 * <!-- end-user-doc -->
7283 * @generated
7284 */
7285 EReference PROBLEM__IMPORTS = eINSTANCE.getProblem_Imports();
7286
7287 /**
7288 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl <em>Typed Star Argument</em>}' class.
7289 * <!-- begin-user-doc -->
7290 * <!-- end-user-doc -->
7291 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl
7292 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedStarArgument()
7293 * @generated
7294 */
7295 EClass TYPED_STAR_ARGUMENT = eINSTANCE.getTypedStarArgument();
7296
7297 /**
7298 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl <em>Typed Variable Argument</em>}' class.
7299 * <!-- begin-user-doc -->
7300 * <!-- end-user-doc -->
7301 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl
7302 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedVariableArgument()
7303 * @generated
7304 */
7305 EClass TYPED_VARIABLE_ARGUMENT = eINSTANCE.getTypedVariableArgument();
7306
7307 /**
7308 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
7309 * <!-- begin-user-doc -->
7310 * <!-- end-user-doc -->
7311 * @generated
7312 */
7313 EAttribute TYPED_VARIABLE_ARGUMENT__NAME = eINSTANCE.getTypedVariableArgument_Name();
7314
7315 /**
7316 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl <em>Unnamed Error Predicate Defintion</em>}' class.
7317 * <!-- begin-user-doc -->
7318 * <!-- end-user-doc -->
7319 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl
7320 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedErrorPredicateDefintion()
7321 * @generated
7322 */
7323 EClass UNNAMED_ERROR_PREDICATE_DEFINTION = eINSTANCE.getUnnamedErrorPredicateDefintion();
7324
7325 /**
7326 * The meta object literal for the '<em><b>Argument List</b></em>' containment reference feature.
7327 * <!-- begin-user-doc -->
7328 * <!-- end-user-doc -->
7329 * @generated
7330 */
7331 EReference UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST = eINSTANCE
7332 .getUnnamedErrorPredicateDefintion_ArgumentList();
7333
7334 /**
7335 * The meta object literal for the '<em><b>Body</b></em>' containment reference feature.
7336 * <!-- begin-user-doc -->
7337 * <!-- end-user-doc -->
7338 * @generated
7339 */
7340 EReference UNNAMED_ERROR_PREDICATE_DEFINTION__BODY = eINSTANCE.getUnnamedErrorPredicateDefintion_Body();
7341
7342 /**
7343 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl <em>Objective Declaration</em>}' class.
7344 * <!-- begin-user-doc -->
7345 * <!-- end-user-doc -->
7346 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl
7347 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveDeclaration()
7348 * @generated
7349 */
7350 EClass OBJECTIVE_DECLARATION = eINSTANCE.getObjectiveDeclaration();
7351
7352 /**
7353 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
7354 * <!-- begin-user-doc -->
7355 * <!-- end-user-doc -->
7356 * @generated
7357 */
7358 EAttribute OBJECTIVE_DECLARATION__KIND = eINSTANCE.getObjectiveDeclaration_Kind();
7359
7360 /**
7361 * The meta object literal for the '<em><b>Objective</b></em>' containment reference feature.
7362 * <!-- begin-user-doc -->
7363 * <!-- end-user-doc -->
7364 * @generated
7365 */
7366 EReference OBJECTIVE_DECLARATION__OBJECTIVE = eINSTANCE.getObjectiveDeclaration_Objective();
7367
7368 /**
7369 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl <em>Scope Declaration</em>}' class.
7370 * <!-- begin-user-doc -->
7371 * <!-- end-user-doc -->
7372 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl
7373 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getScopeDeclaration()
7374 * @generated
7375 */
7376 EClass SCOPE_DECLARATION = eINSTANCE.getScopeDeclaration();
7377
7378 /**
7379 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
7380 * <!-- begin-user-doc -->
7381 * <!-- end-user-doc -->
7382 * @generated
7383 */
7384 EReference SCOPE_DECLARATION__TYPE = eINSTANCE.getScopeDeclaration_Type();
7385
7386 /**
7387 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl <em>Exact Scope</em>}' class.
7388 * <!-- begin-user-doc -->
7389 * <!-- end-user-doc -->
7390 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl
7391 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactScope()
7392 * @generated
7393 */
7394 EClass EXACT_SCOPE = eINSTANCE.getExactScope();
7395
7396 /**
7397 * The meta object literal for the '<em><b>Size</b></em>' attribute feature.
7398 * <!-- begin-user-doc -->
7399 * <!-- end-user-doc -->
7400 * @generated
7401 */
7402 EAttribute EXACT_SCOPE__SIZE = eINSTANCE.getExactScope_Size();
7403
7404 /**
7405 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl <em>Bounded Scope</em>}' class.
7406 * <!-- begin-user-doc -->
7407 * <!-- end-user-doc -->
7408 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl
7409 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedScope()
7410 * @generated
7411 */
7412 EClass BOUNDED_SCOPE = eINSTANCE.getBoundedScope();
7413
7414 /**
7415 * The meta object literal for the '<em><b>Lower Bound</b></em>' attribute feature.
7416 * <!-- begin-user-doc -->
7417 * <!-- end-user-doc -->
7418 * @generated
7419 */
7420 EAttribute BOUNDED_SCOPE__LOWER_BOUND = eINSTANCE.getBoundedScope_LowerBound();
7421
7422 /**
7423 * The meta object literal for the '<em><b>Upper Bound</b></em>' attribute feature.
7424 * <!-- begin-user-doc -->
7425 * <!-- end-user-doc -->
7426 * @generated
7427 */
7428 EAttribute BOUNDED_SCOPE__UPPER_BOUND = eINSTANCE.getBoundedScope_UpperBound();
7429
7430 /**
7431 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl <em>Lower Bounded Scope</em>}' class.
7432 * <!-- begin-user-doc -->
7433 * <!-- end-user-doc -->
7434 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl
7435 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLowerBoundedScope()
7436 * @generated
7437 */
7438 EClass LOWER_BOUNDED_SCOPE = eINSTANCE.getLowerBoundedScope();
7439
7440 /**
7441 * The meta object literal for the '<em><b>Lower Bound</b></em>' attribute feature.
7442 * <!-- begin-user-doc -->
7443 * <!-- end-user-doc -->
7444 * @generated
7445 */
7446 EAttribute LOWER_BOUNDED_SCOPE__LOWER_BOUND = eINSTANCE.getLowerBoundedScope_LowerBound();
7447
7448 /**
7449 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl <em>Namespace Import</em>}' class.
7450 * <!-- begin-user-doc -->
7451 * <!-- end-user-doc -->
7452 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl
7453 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamespaceImport()
7454 * @generated
7455 */
7456 EClass NAMESPACE_IMPORT = eINSTANCE.getNamespaceImport();
7457
7458 /**
7459 * The meta object literal for the '<em><b>Imported Namespace</b></em>' attribute feature.
7460 * <!-- begin-user-doc -->
7461 * <!-- end-user-doc -->
7462 * @generated
7463 */
7464 EAttribute NAMESPACE_IMPORT__IMPORTED_NAMESPACE = eINSTANCE.getNamespaceImport_ImportedNamespace();
7465
7466 /**
7467 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl <em>Import</em>}' class.
7468 * <!-- begin-user-doc -->
7469 * <!-- end-user-doc -->
7470 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl
7471 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getImport()
7472 * @generated
7473 */
7474 EClass IMPORT = eINSTANCE.getImport();
7475
7476 /**
7477 * The meta object literal for the '<em><b>Alias</b></em>' attribute feature.
7478 * <!-- begin-user-doc -->
7479 * <!-- end-user-doc -->
7480 * @generated
7481 */
7482 EAttribute IMPORT__ALIAS = eINSTANCE.getImport_Alias();
7483
7484 /**
7485 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl <em>Uri Import</em>}' class.
7486 * <!-- begin-user-doc -->
7487 * <!-- end-user-doc -->
7488 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl
7489 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUriImport()
7490 * @generated
7491 */
7492 EClass URI_IMPORT = eINSTANCE.getUriImport();
7493
7494 /**
7495 * The meta object literal for the '<em><b>Uri</b></em>' attribute feature.
7496 * <!-- begin-user-doc -->
7497 * <!-- end-user-doc -->
7498 * @generated
7499 */
7500 EAttribute URI_IMPORT__URI = eINSTANCE.getUriImport_Uri();
7501
7502 /**
7503 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator <em>Unary Operator</em>}' enum.
7504 * <!-- begin-user-doc -->
7505 * <!-- end-user-doc -->
7506 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator
7507 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryOperator()
7508 * @generated
7509 */
7510 EEnum UNARY_OPERATOR = eINSTANCE.getUnaryOperator();
7511
7512 /**
7513 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator <em>Binary Operator</em>}' enum.
7514 * <!-- begin-user-doc -->
7515 * <!-- end-user-doc -->
7516 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator
7517 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryOperator()
7518 * @generated
7519 */
7520 EEnum BINARY_OPERATOR = eINSTANCE.getBinaryOperator();
7521
7522 /**
7523 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue <em>Logic Value</em>}' enum.
7524 * <!-- begin-user-doc -->
7525 * <!-- end-user-doc -->
7526 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue
7527 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicValue()
7528 * @generated
7529 */
7530 EEnum LOGIC_VALUE = eINSTANCE.getLogicValue();
7531
7532 /**
7533 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind <em>Objective Kind</em>}' enum.
7534 * <!-- begin-user-doc -->
7535 * <!-- end-user-doc -->
7536 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind
7537 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveKind()
7538 * @generated
7539 */
7540 EEnum OBJECTIVE_KIND = eINSTANCE.getObjectiveKind();
7541
7542 /**
7543 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind <em>Attribute Kind</em>}' enum.
7544 * <!-- begin-user-doc -->
7545 * <!-- end-user-doc -->
7546 * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind
7547 * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttributeKind()
7548 * @generated
7549 */
7550 EEnum ATTRIBUTE_KIND = eINSTANCE.getAttributeKind();
7551
7552 }
7553
7554} //SolverLanguagePackage
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java
new file mode 100644
index 00000000..c81bd654
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Star Argument</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStarArgument()
12 * @model
13 * @generated
14 */
15public interface StarArgument extends Argument {
16} // StarArgument
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java
new file mode 100644
index 00000000..0db8c675
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java
@@ -0,0 +1,18 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Statement</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStatement()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Statement extends EObject {
18} // Statement
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java
new file mode 100644
index 00000000..cc361917
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>String Literal</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue <em>Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringLiteral()
18 * @model
19 * @generated
20 */
21public interface StringLiteral extends Literal {
22 /**
23 * Returns the value of the '<em><b>Value</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Value</em>' attribute.
27 * @see #setValue(String)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringLiteral_Value()
29 * @model
30 * @generated
31 */
32 String getValue();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue <em>Value</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Value</em>' attribute.
39 * @see #getValue()
40 * @generated
41 */
42 void setValue(String value);
43
44} // StringLiteral
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java
new file mode 100644
index 00000000..7f2111bd
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java
@@ -0,0 +1,36 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Switch</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases <em>Cases</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSwitch()
20 * @model
21 * @generated
22 */
23public interface Switch extends Expression {
24 /**
25 * Returns the value of the '<em><b>Cases</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Case}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Cases</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSwitch_Cases()
31 * @model containment="true"
32 * @generated
33 */
34 EList<Case> getCases();
35
36} // Switch
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java
new file mode 100644
index 00000000..bf8f220b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java
@@ -0,0 +1,46 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Symbol</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSymbol()
20 * @model abstract="true"
21 * @generated
22 */
23public interface Symbol extends EObject {
24 /**
25 * Returns the value of the '<em><b>Name</b></em>' attribute.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Name</em>' attribute.
29 * @see #setName(String)
30 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSymbol_Name()
31 * @model
32 * @generated
33 */
34 String getName();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName <em>Name</em>}' attribute.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Name</em>' attribute.
41 * @see #getName()
42 * @generated
43 */
44 void setName(String value);
45
46} // Symbol
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java
new file mode 100644
index 00000000..9a448bba
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java
@@ -0,0 +1,69 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Type Reference</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType <em>Force Object Type</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType <em>Type</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypeReference()
21 * @model
22 * @generated
23 */
24public interface TypeReference extends EObject {
25 /**
26 * Returns the value of the '<em><b>Force Object Type</b></em>' attribute.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Force Object Type</em>' attribute.
30 * @see #setForceObjectType(boolean)
31 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypeReference_ForceObjectType()
32 * @model
33 * @generated
34 */
35 boolean isForceObjectType();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType <em>Force Object Type</em>}' attribute.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Force Object Type</em>' attribute.
42 * @see #isForceObjectType()
43 * @generated
44 */
45 void setForceObjectType(boolean value);
46
47 /**
48 * Returns the value of the '<em><b>Type</b></em>' reference.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @return the value of the '<em>Type</em>' reference.
52 * @see #setType(Symbol)
53 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypeReference_Type()
54 * @model
55 * @generated
56 */
57 Symbol getType();
58
59 /**
60 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType <em>Type</em>}' reference.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @param value the new value of the '<em>Type</em>' reference.
64 * @see #getType()
65 * @generated
66 */
67 void setType(Symbol value);
68
69} // TypeReference
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java
new file mode 100644
index 00000000..b9b411f5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Typed Argument</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference <em>Type Reference</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument()
18 * @model abstract="true"
19 * @generated
20 */
21public interface TypedArgument extends Argument {
22 /**
23 * Returns the value of the '<em><b>Type Reference</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Type Reference</em>' containment reference.
27 * @see #setTypeReference(TypeReference)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument_TypeReference()
29 * @model containment="true"
30 * @generated
31 */
32 TypeReference getTypeReference();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference <em>Type Reference</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Type Reference</em>' containment reference.
39 * @see #getTypeReference()
40 * @generated
41 */
42 void setTypeReference(TypeReference value);
43
44} // TypedArgument
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java
new file mode 100644
index 00000000..0693f4e0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Typed Star Argument</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedStarArgument()
12 * @model
13 * @generated
14 */
15public interface TypedStarArgument extends TypedArgument {
16} // TypedStarArgument
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java
new file mode 100644
index 00000000..8a86fd9a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Typed Variable Argument</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName <em>Name</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedVariableArgument()
18 * @model
19 * @generated
20 */
21public interface TypedVariableArgument extends TypedArgument {
22 /**
23 * Returns the value of the '<em><b>Name</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Name</em>' attribute.
27 * @see #setName(String)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedVariableArgument_Name()
29 * @model
30 * @generated
31 */
32 String getName();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName <em>Name</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Name</em>' attribute.
39 * @see #getName()
40 * @generated
41 */
42 void setName(String value);
43
44} // TypedVariableArgument
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java
new file mode 100644
index 00000000..a317b366
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java
@@ -0,0 +1,70 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Unary Expression</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody <em>Body</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp <em>Op</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression()
19 * @model
20 * @generated
21 */
22public interface UnaryExpression extends Expression {
23 /**
24 * Returns the value of the '<em><b>Body</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Body</em>' containment reference.
28 * @see #setBody(Expression)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression_Body()
30 * @model containment="true"
31 * @generated
32 */
33 Expression getBody();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody <em>Body</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Body</em>' containment reference.
40 * @see #getBody()
41 * @generated
42 */
43 void setBody(Expression value);
44
45 /**
46 * Returns the value of the '<em><b>Op</b></em>' attribute.
47 * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator}.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @return the value of the '<em>Op</em>' attribute.
51 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator
52 * @see #setOp(UnaryOperator)
53 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression_Op()
54 * @model
55 * @generated
56 */
57 UnaryOperator getOp();
58
59 /**
60 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp <em>Op</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @param value the new value of the '<em>Op</em>' attribute.
64 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator
65 * @see #getOp()
66 * @generated
67 */
68 void setOp(UnaryOperator value);
69
70} // UnaryExpression
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java
new file mode 100644
index 00000000..ef404f46
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java
@@ -0,0 +1,250 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.List;
8
9import org.eclipse.emf.common.util.Enumerator;
10
11/**
12 * <!-- begin-user-doc -->
13 * A representation of the literals of the enumeration '<em><b>Unary Operator</b></em>',
14 * and utility methods for working with them.
15 * <!-- end-user-doc -->
16 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryOperator()
17 * @model
18 * @generated
19 */
20public enum UnaryOperator implements Enumerator {
21 /**
22 * The '<em><b>NOT</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #NOT_VALUE
26 * @generated
27 * @ordered
28 */
29 NOT(0, "NOT", "NOT"),
30
31 /**
32 * The '<em><b>PLUS</b></em>' literal object.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #PLUS_VALUE
36 * @generated
37 * @ordered
38 */
39 PLUS(1, "PLUS", "PLUS"),
40
41 /**
42 * The '<em><b>MINUS</b></em>' literal object.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #MINUS_VALUE
46 * @generated
47 * @ordered
48 */
49 MINUS(2, "MINUS", "MINUS"),
50
51 /**
52 * The '<em><b>MAYBE</b></em>' literal object.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #MAYBE_VALUE
56 * @generated
57 * @ordered
58 */
59 MAYBE(3, "MAYBE", "MAYBE");
60
61 /**
62 * The '<em><b>NOT</b></em>' literal value.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @see #NOT
66 * @model
67 * @generated
68 * @ordered
69 */
70 public static final int NOT_VALUE = 0;
71
72 /**
73 * The '<em><b>PLUS</b></em>' literal value.
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @see #PLUS
77 * @model
78 * @generated
79 * @ordered
80 */
81 public static final int PLUS_VALUE = 1;
82
83 /**
84 * The '<em><b>MINUS</b></em>' literal value.
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @see #MINUS
88 * @model
89 * @generated
90 * @ordered
91 */
92 public static final int MINUS_VALUE = 2;
93
94 /**
95 * The '<em><b>MAYBE</b></em>' literal value.
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @see #MAYBE
99 * @model
100 * @generated
101 * @ordered
102 */
103 public static final int MAYBE_VALUE = 3;
104
105 /**
106 * An array of all the '<em><b>Unary Operator</b></em>' enumerators.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 private static final UnaryOperator[] VALUES_ARRAY = new UnaryOperator[] { NOT, PLUS, MINUS, MAYBE, };
112
113 /**
114 * A public read-only list of all the '<em><b>Unary Operator</b></em>' enumerators.
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 public static final List<UnaryOperator> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
120
121 /**
122 * Returns the '<em><b>Unary Operator</b></em>' literal with the specified literal value.
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @param literal the literal.
126 * @return the matching enumerator or <code>null</code>.
127 * @generated
128 */
129 public static UnaryOperator get(String literal) {
130 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
131 UnaryOperator result = VALUES_ARRAY[i];
132 if (result.toString().equals(literal)) {
133 return result;
134 }
135 }
136 return null;
137 }
138
139 /**
140 * Returns the '<em><b>Unary Operator</b></em>' literal with the specified name.
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @param name the name.
144 * @return the matching enumerator or <code>null</code>.
145 * @generated
146 */
147 public static UnaryOperator getByName(String name) {
148 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
149 UnaryOperator result = VALUES_ARRAY[i];
150 if (result.getName().equals(name)) {
151 return result;
152 }
153 }
154 return null;
155 }
156
157 /**
158 * Returns the '<em><b>Unary Operator</b></em>' literal with the specified integer value.
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @param value the integer value.
162 * @return the matching enumerator or <code>null</code>.
163 * @generated
164 */
165 public static UnaryOperator get(int value) {
166 switch (value) {
167 case NOT_VALUE:
168 return NOT;
169 case PLUS_VALUE:
170 return PLUS;
171 case MINUS_VALUE:
172 return MINUS;
173 case MAYBE_VALUE:
174 return MAYBE;
175 }
176 return null;
177 }
178
179 /**
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 */
184 private final int value;
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 private final String name;
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 private final String literal;
199
200 /**
201 * Only this class can construct instances.
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 private UnaryOperator(int value, String name, String literal) {
207 this.value = value;
208 this.name = name;
209 this.literal = literal;
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 public int getValue() {
218 return value;
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 public String getName() {
227 return name;
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 public String getLiteral() {
236 return literal;
237 }
238
239 /**
240 * Returns the literal value of the enumerator, which is its string representation.
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public String toString() {
247 return literal;
248 }
249
250} //UnaryOperator
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java
new file mode 100644
index 00000000..b6ce711e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java
@@ -0,0 +1,16 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Unbounded Multiplicity</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnboundedMultiplicity()
12 * @model
13 * @generated
14 */
15public interface UnboundedMultiplicity extends Multiplicity {
16} // UnboundedMultiplicity
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java
new file mode 100644
index 00000000..9b9fc4eb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java
@@ -0,0 +1,67 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Unnamed Error Predicate Defintion</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList <em>Argument List</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody <em>Body</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPredicateDefintion()
19 * @model
20 * @generated
21 */
22public interface UnnamedErrorPredicateDefintion extends Statement {
23 /**
24 * Returns the value of the '<em><b>Argument List</b></em>' containment reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Argument List</em>' containment reference.
28 * @see #setArgumentList(ArgumentList)
29 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPredicateDefintion_ArgumentList()
30 * @model containment="true"
31 * @generated
32 */
33 ArgumentList getArgumentList();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList <em>Argument List</em>}' containment reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Argument List</em>' containment reference.
40 * @see #getArgumentList()
41 * @generated
42 */
43 void setArgumentList(ArgumentList value);
44
45 /**
46 * Returns the value of the '<em><b>Body</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Body</em>' containment reference.
50 * @see #setBody(Expression)
51 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPredicateDefintion_Body()
52 * @model containment="true"
53 * @generated
54 */
55 Expression getBody();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody <em>Body</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Body</em>' containment reference.
62 * @see #getBody()
63 * @generated
64 */
65 void setBody(Expression value);
66
67} // UnnamedErrorPredicateDefintion
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java
new file mode 100644
index 00000000..1256deb8
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Uri Import</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri <em>Uri</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUriImport()
18 * @model
19 * @generated
20 */
21public interface UriImport extends Import {
22 /**
23 * Returns the value of the '<em><b>Uri</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Uri</em>' attribute.
27 * @see #setUri(String)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUriImport_Uri()
29 * @model
30 * @generated
31 */
32 String getUri();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri <em>Uri</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Uri</em>' attribute.
39 * @see #getUri()
40 * @generated
41 */
42 void setUri(String value);
43
44} // UriImport
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java
new file mode 100644
index 00000000..5e5f9298
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java
@@ -0,0 +1,44 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Variable</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 * <p>
11 * The following features are supported:
12 * </p>
13 * <ul>
14 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference <em>Type Reference</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable()
18 * @model
19 * @generated
20 */
21public interface Variable extends Symbol {
22 /**
23 * Returns the value of the '<em><b>Type Reference</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Type Reference</em>' containment reference.
27 * @see #setTypeReference(TypeReference)
28 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable_TypeReference()
29 * @model containment="true"
30 * @generated
31 */
32 TypeReference getTypeReference();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference <em>Type Reference</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Type Reference</em>' containment reference.
39 * @see #getTypeReference()
40 * @generated
41 */
42 void setTypeReference(TypeReference value);
43
44} // Variable
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java
new file mode 100644
index 00000000..ec01140f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java
@@ -0,0 +1,255 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion;
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Abstract Assertion</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl#getExpression <em>Expression</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl#getRange <em>Range</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public abstract class AbstractAssertionImpl extends StatementImpl implements AbstractAssertion {
32 /**
33 * The cached value of the '{@link #getExpression() <em>Expression</em>}' containment reference.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getExpression()
37 * @generated
38 * @ordered
39 */
40 protected Expression expression;
41
42 /**
43 * The cached value of the '{@link #getRange() <em>Range</em>}' containment reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getRange()
47 * @generated
48 * @ordered
49 */
50 protected Expression range;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected AbstractAssertionImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return SolverLanguagePackage.Literals.ABSTRACT_ASSERTION;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public Expression getExpression() {
77 return expression;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public NotificationChain basicSetExpression(Expression newExpression, NotificationChain msgs) {
86 Expression oldExpression = expression;
87 expression = newExpression;
88 if (eNotificationRequired()) {
89 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
90 SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, oldExpression, newExpression);
91 if (msgs == null)
92 msgs = notification;
93 else
94 msgs.add(notification);
95 }
96 return msgs;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public void setExpression(Expression newExpression) {
105 if (newExpression != expression) {
106 NotificationChain msgs = null;
107 if (expression != null)
108 msgs = ((InternalEObject) expression).eInverseRemove(this,
109 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, null, msgs);
110 if (newExpression != null)
111 msgs = ((InternalEObject) newExpression).eInverseAdd(this,
112 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, null, msgs);
113 msgs = basicSetExpression(newExpression, msgs);
114 if (msgs != null)
115 msgs.dispatch();
116 } else if (eNotificationRequired())
117 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION,
118 newExpression, newExpression));
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public Expression getRange() {
127 return range;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public NotificationChain basicSetRange(Expression newRange, NotificationChain msgs) {
136 Expression oldRange = range;
137 range = newRange;
138 if (eNotificationRequired()) {
139 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
140 SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, oldRange, newRange);
141 if (msgs == null)
142 msgs = notification;
143 else
144 msgs.add(notification);
145 }
146 return msgs;
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 public void setRange(Expression newRange) {
155 if (newRange != range) {
156 NotificationChain msgs = null;
157 if (range != null)
158 msgs = ((InternalEObject) range).eInverseRemove(this,
159 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, null, msgs);
160 if (newRange != null)
161 msgs = ((InternalEObject) newRange).eInverseAdd(this,
162 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, null, msgs);
163 msgs = basicSetRange(newRange, msgs);
164 if (msgs != null)
165 msgs.dispatch();
166 } else if (eNotificationRequired())
167 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE,
168 newRange, newRange));
169 }
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 @Override
177 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
178 switch (featureID) {
179 case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION:
180 return basicSetExpression(null, msgs);
181 case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE:
182 return basicSetRange(null, msgs);
183 }
184 return super.eInverseRemove(otherEnd, featureID, msgs);
185 }
186
187 /**
188 * <!-- begin-user-doc -->
189 * <!-- end-user-doc -->
190 * @generated
191 */
192 @Override
193 public Object eGet(int featureID, boolean resolve, boolean coreType) {
194 switch (featureID) {
195 case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION:
196 return getExpression();
197 case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE:
198 return getRange();
199 }
200 return super.eGet(featureID, resolve, coreType);
201 }
202
203 /**
204 * <!-- begin-user-doc -->
205 * <!-- end-user-doc -->
206 * @generated
207 */
208 @Override
209 public void eSet(int featureID, Object newValue) {
210 switch (featureID) {
211 case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION:
212 setExpression((Expression) newValue);
213 return;
214 case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE:
215 setRange((Expression) newValue);
216 return;
217 }
218 super.eSet(featureID, newValue);
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 @Override
227 public void eUnset(int featureID) {
228 switch (featureID) {
229 case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION:
230 setExpression((Expression) null);
231 return;
232 case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE:
233 setRange((Expression) null);
234 return;
235 }
236 super.eUnset(featureID);
237 }
238
239 /**
240 * <!-- begin-user-doc -->
241 * <!-- end-user-doc -->
242 * @generated
243 */
244 @Override
245 public boolean eIsSet(int featureID) {
246 switch (featureID) {
247 case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION:
248 return expression != null;
249 case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE:
250 return range != null;
251 }
252 return super.eIsSet(featureID);
253 }
254
255} //AbstractAssertionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java
new file mode 100644
index 00000000..9427a84d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java
@@ -0,0 +1,228 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16
17import org.eclipse.emf.ecore.util.EObjectContainmentEList;
18import org.eclipse.emf.ecore.util.InternalEList;
19
20import org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression;
21import org.eclipse.viatra.solver.language.solverLanguage.Expression;
22import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
23import org.eclipse.viatra.solver.language.solverLanguage.Variable;
24
25/**
26 * <!-- begin-user-doc -->
27 * An implementation of the model object '<em><b>Aggregate Expression</b></em>'.
28 * <!-- end-user-doc -->
29 * <p>
30 * The following features are implemented:
31 * </p>
32 * <ul>
33 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl#getForallVariables <em>Forall Variables</em>}</li>
34 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl#getCondition <em>Condition</em>}</li>
35 * </ul>
36 *
37 * @generated
38 */
39public abstract class AggregateExpressionImpl extends ExpressionImpl implements AggregateExpression {
40 /**
41 * The cached value of the '{@link #getForallVariables() <em>Forall Variables</em>}' containment reference list.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getForallVariables()
45 * @generated
46 * @ordered
47 */
48 protected EList<Variable> forallVariables;
49
50 /**
51 * The cached value of the '{@link #getCondition() <em>Condition</em>}' containment reference.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @see #getCondition()
55 * @generated
56 * @ordered
57 */
58 protected Expression condition;
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 protected AggregateExpressionImpl() {
66 super();
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 @Override
75 protected EClass eStaticClass() {
76 return SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION;
77 }
78
79 /**
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @generated
83 */
84 public EList<Variable> getForallVariables() {
85 if (forallVariables == null) {
86 forallVariables = new EObjectContainmentEList<Variable>(Variable.class, this,
87 SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES);
88 }
89 return forallVariables;
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 public Expression getCondition() {
98 return condition;
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) {
107 Expression oldCondition = condition;
108 condition = newCondition;
109 if (eNotificationRequired()) {
110 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
111 SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, oldCondition, newCondition);
112 if (msgs == null)
113 msgs = notification;
114 else
115 msgs.add(notification);
116 }
117 return msgs;
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 public void setCondition(Expression newCondition) {
126 if (newCondition != condition) {
127 NotificationChain msgs = null;
128 if (condition != null)
129 msgs = ((InternalEObject) condition).eInverseRemove(this,
130 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, null, msgs);
131 if (newCondition != null)
132 msgs = ((InternalEObject) newCondition).eInverseAdd(this,
133 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, null, msgs);
134 msgs = basicSetCondition(newCondition, msgs);
135 if (msgs != null)
136 msgs.dispatch();
137 } else if (eNotificationRequired())
138 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION,
139 newCondition, newCondition));
140 }
141
142 /**
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 */
147 @Override
148 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
149 switch (featureID) {
150 case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES:
151 return ((InternalEList<?>) getForallVariables()).basicRemove(otherEnd, msgs);
152 case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION:
153 return basicSetCondition(null, msgs);
154 }
155 return super.eInverseRemove(otherEnd, featureID, msgs);
156 }
157
158 /**
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @generated
162 */
163 @Override
164 public Object eGet(int featureID, boolean resolve, boolean coreType) {
165 switch (featureID) {
166 case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES:
167 return getForallVariables();
168 case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION:
169 return getCondition();
170 }
171 return super.eGet(featureID, resolve, coreType);
172 }
173
174 /**
175 * <!-- begin-user-doc -->
176 * <!-- end-user-doc -->
177 * @generated
178 */
179 @SuppressWarnings("unchecked")
180 @Override
181 public void eSet(int featureID, Object newValue) {
182 switch (featureID) {
183 case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES:
184 getForallVariables().clear();
185 getForallVariables().addAll((Collection<? extends Variable>) newValue);
186 return;
187 case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION:
188 setCondition((Expression) newValue);
189 return;
190 }
191 super.eSet(featureID, newValue);
192 }
193
194 /**
195 * <!-- begin-user-doc -->
196 * <!-- end-user-doc -->
197 * @generated
198 */
199 @Override
200 public void eUnset(int featureID) {
201 switch (featureID) {
202 case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES:
203 getForallVariables().clear();
204 return;
205 case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION:
206 setCondition((Expression) null);
207 return;
208 }
209 super.eUnset(featureID);
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 @Override
218 public boolean eIsSet(int featureID) {
219 switch (featureID) {
220 case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES:
221 return forallVariables != null && !forallVariables.isEmpty();
222 case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION:
223 return condition != null;
224 }
225 return super.eIsSet(featureID);
226 }
227
228} //AggregateExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java
new file mode 100644
index 00000000..f67de89a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java
@@ -0,0 +1,245 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Aggregation;
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Aggregation</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getValue <em>Value</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getOp <em>Op</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class AggregationImpl extends AggregateExpressionImpl implements Aggregation {
33 /**
34 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getValue()
38 * @generated
39 * @ordered
40 */
41 protected Expression value;
42
43 /**
44 * The cached value of the '{@link #getOp() <em>Op</em>}' reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getOp()
48 * @generated
49 * @ordered
50 */
51 protected Symbol op;
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 protected AggregationImpl() {
59 super();
60 }
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 @Override
68 protected EClass eStaticClass() {
69 return SolverLanguagePackage.Literals.AGGREGATION;
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 public Expression getValue() {
78 return value;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) {
87 Expression oldValue = value;
88 value = newValue;
89 if (eNotificationRequired()) {
90 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
91 SolverLanguagePackage.AGGREGATION__VALUE, oldValue, newValue);
92 if (msgs == null)
93 msgs = notification;
94 else
95 msgs.add(notification);
96 }
97 return msgs;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public void setValue(Expression newValue) {
106 if (newValue != value) {
107 NotificationChain msgs = null;
108 if (value != null)
109 msgs = ((InternalEObject) value).eInverseRemove(this,
110 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__VALUE, null, msgs);
111 if (newValue != null)
112 msgs = ((InternalEObject) newValue).eInverseAdd(this,
113 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__VALUE, null, msgs);
114 msgs = basicSetValue(newValue, msgs);
115 if (msgs != null)
116 msgs.dispatch();
117 } else if (eNotificationRequired())
118 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__VALUE, newValue,
119 newValue));
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public Symbol getOp() {
128 if (op != null && op.eIsProxy()) {
129 InternalEObject oldOp = (InternalEObject) op;
130 op = (Symbol) eResolveProxy(oldOp);
131 if (op != oldOp) {
132 if (eNotificationRequired())
133 eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.AGGREGATION__OP,
134 oldOp, op));
135 }
136 }
137 return op;
138 }
139
140 /**
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @generated
144 */
145 public Symbol basicGetOp() {
146 return op;
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 public void setOp(Symbol newOp) {
155 Symbol oldOp = op;
156 op = newOp;
157 if (eNotificationRequired())
158 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__OP, oldOp, op));
159 }
160
161 /**
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 */
166 @Override
167 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
168 switch (featureID) {
169 case SolverLanguagePackage.AGGREGATION__VALUE:
170 return basicSetValue(null, msgs);
171 }
172 return super.eInverseRemove(otherEnd, featureID, msgs);
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 @Override
181 public Object eGet(int featureID, boolean resolve, boolean coreType) {
182 switch (featureID) {
183 case SolverLanguagePackage.AGGREGATION__VALUE:
184 return getValue();
185 case SolverLanguagePackage.AGGREGATION__OP:
186 if (resolve)
187 return getOp();
188 return basicGetOp();
189 }
190 return super.eGet(featureID, resolve, coreType);
191 }
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 @Override
199 public void eSet(int featureID, Object newValue) {
200 switch (featureID) {
201 case SolverLanguagePackage.AGGREGATION__VALUE:
202 setValue((Expression) newValue);
203 return;
204 case SolverLanguagePackage.AGGREGATION__OP:
205 setOp((Symbol) newValue);
206 return;
207 }
208 super.eSet(featureID, newValue);
209 }
210
211 /**
212 * <!-- begin-user-doc -->
213 * <!-- end-user-doc -->
214 * @generated
215 */
216 @Override
217 public void eUnset(int featureID) {
218 switch (featureID) {
219 case SolverLanguagePackage.AGGREGATION__VALUE:
220 setValue((Expression) null);
221 return;
222 case SolverLanguagePackage.AGGREGATION__OP:
223 setOp((Symbol) null);
224 return;
225 }
226 super.eUnset(featureID);
227 }
228
229 /**
230 * <!-- begin-user-doc -->
231 * <!-- end-user-doc -->
232 * @generated
233 */
234 @Override
235 public boolean eIsSet(int featureID) {
236 switch (featureID) {
237 case SolverLanguagePackage.AGGREGATION__VALUE:
238 return value != null;
239 case SolverLanguagePackage.AGGREGATION__OP:
240 return op != null;
241 }
242 return super.eIsSet(featureID);
243 }
244
245} //AggregationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java
new file mode 100644
index 00000000..6842754e
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java
@@ -0,0 +1,222 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator;
13import org.eclipse.viatra.solver.language.solverLanguage.Datatype;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Aggregation Operator</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl#getArgumentType <em>Argument Type</em>}</li>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl#getResultType <em>Result Type</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class AggregationOperatorImpl extends SymbolImpl implements AggregationOperator {
31 /**
32 * The cached value of the '{@link #getArgumentType() <em>Argument Type</em>}' reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getArgumentType()
36 * @generated
37 * @ordered
38 */
39 protected Datatype argumentType;
40
41 /**
42 * The cached value of the '{@link #getResultType() <em>Result Type</em>}' reference.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #getResultType()
46 * @generated
47 * @ordered
48 */
49 protected Datatype resultType;
50
51 /**
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @generated
55 */
56 protected AggregationOperatorImpl() {
57 super();
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 @Override
66 protected EClass eStaticClass() {
67 return SolverLanguagePackage.Literals.AGGREGATION_OPERATOR;
68 }
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 public Datatype getArgumentType() {
76 if (argumentType != null && argumentType.eIsProxy()) {
77 InternalEObject oldArgumentType = (InternalEObject) argumentType;
78 argumentType = (Datatype) eResolveProxy(oldArgumentType);
79 if (argumentType != oldArgumentType) {
80 if (eNotificationRequired())
81 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
82 SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE, oldArgumentType, argumentType));
83 }
84 }
85 return argumentType;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public Datatype basicGetArgumentType() {
94 return argumentType;
95 }
96
97 /**
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 public void setArgumentType(Datatype newArgumentType) {
103 Datatype oldArgumentType = argumentType;
104 argumentType = newArgumentType;
105 if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET,
107 SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE, oldArgumentType, argumentType));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public Datatype getResultType() {
116 if (resultType != null && resultType.eIsProxy()) {
117 InternalEObject oldResultType = (InternalEObject) resultType;
118 resultType = (Datatype) eResolveProxy(oldResultType);
119 if (resultType != oldResultType) {
120 if (eNotificationRequired())
121 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
122 SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE, oldResultType, resultType));
123 }
124 }
125 return resultType;
126 }
127
128 /**
129 * <!-- begin-user-doc -->
130 * <!-- end-user-doc -->
131 * @generated
132 */
133 public Datatype basicGetResultType() {
134 return resultType;
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 public void setResultType(Datatype newResultType) {
143 Datatype oldResultType = resultType;
144 resultType = newResultType;
145 if (eNotificationRequired())
146 eNotify(new ENotificationImpl(this, Notification.SET,
147 SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE, oldResultType, resultType));
148 }
149
150 /**
151 * <!-- begin-user-doc -->
152 * <!-- end-user-doc -->
153 * @generated
154 */
155 @Override
156 public Object eGet(int featureID, boolean resolve, boolean coreType) {
157 switch (featureID) {
158 case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE:
159 if (resolve)
160 return getArgumentType();
161 return basicGetArgumentType();
162 case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE:
163 if (resolve)
164 return getResultType();
165 return basicGetResultType();
166 }
167 return super.eGet(featureID, resolve, coreType);
168 }
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 @Override
176 public void eSet(int featureID, Object newValue) {
177 switch (featureID) {
178 case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE:
179 setArgumentType((Datatype) newValue);
180 return;
181 case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE:
182 setResultType((Datatype) newValue);
183 return;
184 }
185 super.eSet(featureID, newValue);
186 }
187
188 /**
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @generated
192 */
193 @Override
194 public void eUnset(int featureID) {
195 switch (featureID) {
196 case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE:
197 setArgumentType((Datatype) null);
198 return;
199 case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE:
200 setResultType((Datatype) null);
201 return;
202 }
203 super.eUnset(featureID);
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 @Override
212 public boolean eIsSet(int featureID) {
213 switch (featureID) {
214 case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE:
215 return argumentType != null;
216 case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE:
217 return resultType != null;
218 }
219 return super.eIsSet(featureID);
220 }
221
222} //AggregationOperatorImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java
new file mode 100644
index 00000000..c245d5aa
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java
@@ -0,0 +1,39 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.solverLanguage.Argument;
10import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
11
12/**
13 * <!-- begin-user-doc -->
14 * An implementation of the model object '<em><b>Argument</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * @generated
18 */
19public abstract class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument {
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected ArgumentImpl() {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass() {
36 return SolverLanguagePackage.Literals.ARGUMENT;
37 }
38
39} //ArgumentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java
new file mode 100644
index 00000000..9d6cc468
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java
@@ -0,0 +1,153 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
15
16import org.eclipse.emf.ecore.util.EObjectContainmentEList;
17import org.eclipse.emf.ecore.util.InternalEList;
18
19import org.eclipse.viatra.solver.language.solverLanguage.Argument;
20import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
21import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Argument List</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl#getArguments <em>Arguments</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class ArgumentListImpl extends MinimalEObjectImpl.Container implements ArgumentList {
37 /**
38 * The cached value of the '{@link #getArguments() <em>Arguments</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getArguments()
42 * @generated
43 * @ordered
44 */
45 protected EList<Argument> arguments;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected ArgumentListImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return SolverLanguagePackage.Literals.ARGUMENT_LIST;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<Argument> getArguments() {
72 if (arguments == null) {
73 arguments = new EObjectContainmentEList<Argument>(Argument.class, this,
74 SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS);
75 }
76 return arguments;
77 }
78
79 /**
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @generated
83 */
84 @Override
85 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
86 switch (featureID) {
87 case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS:
88 return ((InternalEList<?>) getArguments()).basicRemove(otherEnd, msgs);
89 }
90 return super.eInverseRemove(otherEnd, featureID, msgs);
91 }
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 @Override
99 public Object eGet(int featureID, boolean resolve, boolean coreType) {
100 switch (featureID) {
101 case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS:
102 return getArguments();
103 }
104 return super.eGet(featureID, resolve, coreType);
105 }
106
107 /**
108 * <!-- begin-user-doc -->
109 * <!-- end-user-doc -->
110 * @generated
111 */
112 @SuppressWarnings("unchecked")
113 @Override
114 public void eSet(int featureID, Object newValue) {
115 switch (featureID) {
116 case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS:
117 getArguments().clear();
118 getArguments().addAll((Collection<? extends Argument>) newValue);
119 return;
120 }
121 super.eSet(featureID, newValue);
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @Override
130 public void eUnset(int featureID) {
131 switch (featureID) {
132 case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS:
133 getArguments().clear();
134 return;
135 }
136 super.eUnset(featureID);
137 }
138
139 /**
140 * <!-- begin-user-doc -->
141 * <!-- end-user-doc -->
142 * @generated
143 */
144 @Override
145 public boolean eIsSet(int featureID) {
146 switch (featureID) {
147 case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS:
148 return arguments != null && !arguments.isEmpty();
149 }
150 return super.eIsSet(featureID);
151 }
152
153} //ArgumentListImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java
new file mode 100644
index 00000000..8b4e2cde
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Assertion;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Assertion</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class AssertionImpl extends AbstractAssertionImpl implements Assertion {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected AssertionImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.ASSERTION;
35 }
36
37} //AssertionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java
new file mode 100644
index 00000000..c9974907
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java
@@ -0,0 +1,230 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.Attribute;
13import org.eclipse.viatra.solver.language.solverLanguage.AttributeKind;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Attribute</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl#getTarget <em>Target</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl#getKind <em>Kind</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public abstract class AttributeImpl extends StatementImpl implements Attribute {
32 /**
33 * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getTarget()
37 * @generated
38 * @ordered
39 */
40 protected Symbol target;
41
42 /**
43 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getKind()
47 * @generated
48 * @ordered
49 */
50 protected static final AttributeKind KIND_EDEFAULT = AttributeKind.FUNCTIONAL;
51
52 /**
53 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @see #getKind()
57 * @generated
58 * @ordered
59 */
60 protected AttributeKind kind = KIND_EDEFAULT;
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 protected AttributeImpl() {
68 super();
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 protected EClass eStaticClass() {
78 return SolverLanguagePackage.Literals.ATTRIBUTE;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public Symbol getTarget() {
87 if (target != null && target.eIsProxy()) {
88 InternalEObject oldTarget = (InternalEObject) target;
89 target = (Symbol) eResolveProxy(oldTarget);
90 if (target != oldTarget) {
91 if (eNotificationRequired())
92 eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.ATTRIBUTE__TARGET,
93 oldTarget, target));
94 }
95 }
96 return target;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public Symbol basicGetTarget() {
105 return target;
106 }
107
108 /**
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated
112 */
113 public void setTarget(Symbol newTarget) {
114 Symbol oldTarget = target;
115 target = newTarget;
116 if (eNotificationRequired())
117 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ATTRIBUTE__TARGET, oldTarget,
118 target));
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public AttributeKind getKind() {
127 return kind;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public void setKind(AttributeKind newKind) {
136 AttributeKind oldKind = kind;
137 kind = newKind == null ? KIND_EDEFAULT : newKind;
138 if (eNotificationRequired())
139 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ATTRIBUTE__KIND, oldKind,
140 kind));
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 @Override
149 public Object eGet(int featureID, boolean resolve, boolean coreType) {
150 switch (featureID) {
151 case SolverLanguagePackage.ATTRIBUTE__TARGET:
152 if (resolve)
153 return getTarget();
154 return basicGetTarget();
155 case SolverLanguagePackage.ATTRIBUTE__KIND:
156 return getKind();
157 }
158 return super.eGet(featureID, resolve, coreType);
159 }
160
161 /**
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 */
166 @Override
167 public void eSet(int featureID, Object newValue) {
168 switch (featureID) {
169 case SolverLanguagePackage.ATTRIBUTE__TARGET:
170 setTarget((Symbol) newValue);
171 return;
172 case SolverLanguagePackage.ATTRIBUTE__KIND:
173 setKind((AttributeKind) newValue);
174 return;
175 }
176 super.eSet(featureID, newValue);
177 }
178
179 /**
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 */
184 @Override
185 public void eUnset(int featureID) {
186 switch (featureID) {
187 case SolverLanguagePackage.ATTRIBUTE__TARGET:
188 setTarget((Symbol) null);
189 return;
190 case SolverLanguagePackage.ATTRIBUTE__KIND:
191 setKind(KIND_EDEFAULT);
192 return;
193 }
194 super.eUnset(featureID);
195 }
196
197 /**
198 * <!-- begin-user-doc -->
199 * <!-- end-user-doc -->
200 * @generated
201 */
202 @Override
203 public boolean eIsSet(int featureID) {
204 switch (featureID) {
205 case SolverLanguagePackage.ATTRIBUTE__TARGET:
206 return target != null;
207 case SolverLanguagePackage.ATTRIBUTE__KIND:
208 return kind != KIND_EDEFAULT;
209 }
210 return super.eIsSet(featureID);
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 @Override
219 public String toString() {
220 if (eIsProxy())
221 return super.toString();
222
223 StringBuilder result = new StringBuilder(super.toString());
224 result.append(" (kind: ");
225 result.append(kind);
226 result.append(')');
227 return result.toString();
228 }
229
230} //AttributeImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java
new file mode 100644
index 00000000..797b3a48
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.BaseRelation;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Base Relation</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class BaseRelationImpl extends RelationImpl implements BaseRelation {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected BaseRelationImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.BASE_RELATION;
35 }
36
37} //BaseRelationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java
new file mode 100644
index 00000000..e93a12ce
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java
@@ -0,0 +1,326 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression;
14import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator;
15import org.eclipse.viatra.solver.language.solverLanguage.Expression;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Binary Expression</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getOp <em>Op</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getLeft <em>Left</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getRight <em>Right</em>}</li>
29 * </ul>
30 *
31 * @generated
32 */
33public class BinaryExpressionImpl extends ExpressionImpl implements BinaryExpression {
34 /**
35 * The default value of the '{@link #getOp() <em>Op</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @see #getOp()
39 * @generated
40 * @ordered
41 */
42 protected static final BinaryOperator OP_EDEFAULT = BinaryOperator.PLUS;
43
44 /**
45 * The cached value of the '{@link #getOp() <em>Op</em>}' attribute.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #getOp()
49 * @generated
50 * @ordered
51 */
52 protected BinaryOperator op = OP_EDEFAULT;
53
54 /**
55 * The cached value of the '{@link #getLeft() <em>Left</em>}' containment reference.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #getLeft()
59 * @generated
60 * @ordered
61 */
62 protected Expression left;
63
64 /**
65 * The cached value of the '{@link #getRight() <em>Right</em>}' containment reference.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #getRight()
69 * @generated
70 * @ordered
71 */
72 protected Expression right;
73
74 /**
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @generated
78 */
79 protected BinaryExpressionImpl() {
80 super();
81 }
82
83 /**
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @generated
87 */
88 @Override
89 protected EClass eStaticClass() {
90 return SolverLanguagePackage.Literals.BINARY_EXPRESSION;
91 }
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 public BinaryOperator getOp() {
99 return op;
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 public void setOp(BinaryOperator newOp) {
108 BinaryOperator oldOp = op;
109 op = newOp == null ? OP_EDEFAULT : newOp;
110 if (eNotificationRequired())
111 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__OP, oldOp,
112 op));
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 public Expression getLeft() {
121 return left;
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 public NotificationChain basicSetLeft(Expression newLeft, NotificationChain msgs) {
130 Expression oldLeft = left;
131 left = newLeft;
132 if (eNotificationRequired()) {
133 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
134 SolverLanguagePackage.BINARY_EXPRESSION__LEFT, oldLeft, newLeft);
135 if (msgs == null)
136 msgs = notification;
137 else
138 msgs.add(notification);
139 }
140 return msgs;
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 public void setLeft(Expression newLeft) {
149 if (newLeft != left) {
150 NotificationChain msgs = null;
151 if (left != null)
152 msgs = ((InternalEObject) left).eInverseRemove(this,
153 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__LEFT, null, msgs);
154 if (newLeft != null)
155 msgs = ((InternalEObject) newLeft).eInverseAdd(this,
156 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__LEFT, null, msgs);
157 msgs = basicSetLeft(newLeft, msgs);
158 if (msgs != null)
159 msgs.dispatch();
160 } else if (eNotificationRequired())
161 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__LEFT,
162 newLeft, newLeft));
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 public Expression getRight() {
171 return right;
172 }
173
174 /**
175 * <!-- begin-user-doc -->
176 * <!-- end-user-doc -->
177 * @generated
178 */
179 public NotificationChain basicSetRight(Expression newRight, NotificationChain msgs) {
180 Expression oldRight = right;
181 right = newRight;
182 if (eNotificationRequired()) {
183 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
184 SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, oldRight, newRight);
185 if (msgs == null)
186 msgs = notification;
187 else
188 msgs.add(notification);
189 }
190 return msgs;
191 }
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 public void setRight(Expression newRight) {
199 if (newRight != right) {
200 NotificationChain msgs = null;
201 if (right != null)
202 msgs = ((InternalEObject) right).eInverseRemove(this,
203 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, null, msgs);
204 if (newRight != null)
205 msgs = ((InternalEObject) newRight).eInverseAdd(this,
206 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, null, msgs);
207 msgs = basicSetRight(newRight, msgs);
208 if (msgs != null)
209 msgs.dispatch();
210 } else if (eNotificationRequired())
211 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__RIGHT,
212 newRight, newRight));
213 }
214
215 /**
216 * <!-- begin-user-doc -->
217 * <!-- end-user-doc -->
218 * @generated
219 */
220 @Override
221 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
222 switch (featureID) {
223 case SolverLanguagePackage.BINARY_EXPRESSION__LEFT:
224 return basicSetLeft(null, msgs);
225 case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT:
226 return basicSetRight(null, msgs);
227 }
228 return super.eInverseRemove(otherEnd, featureID, msgs);
229 }
230
231 /**
232 * <!-- begin-user-doc -->
233 * <!-- end-user-doc -->
234 * @generated
235 */
236 @Override
237 public Object eGet(int featureID, boolean resolve, boolean coreType) {
238 switch (featureID) {
239 case SolverLanguagePackage.BINARY_EXPRESSION__OP:
240 return getOp();
241 case SolverLanguagePackage.BINARY_EXPRESSION__LEFT:
242 return getLeft();
243 case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT:
244 return getRight();
245 }
246 return super.eGet(featureID, resolve, coreType);
247 }
248
249 /**
250 * <!-- begin-user-doc -->
251 * <!-- end-user-doc -->
252 * @generated
253 */
254 @Override
255 public void eSet(int featureID, Object newValue) {
256 switch (featureID) {
257 case SolverLanguagePackage.BINARY_EXPRESSION__OP:
258 setOp((BinaryOperator) newValue);
259 return;
260 case SolverLanguagePackage.BINARY_EXPRESSION__LEFT:
261 setLeft((Expression) newValue);
262 return;
263 case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT:
264 setRight((Expression) newValue);
265 return;
266 }
267 super.eSet(featureID, newValue);
268 }
269
270 /**
271 * <!-- begin-user-doc -->
272 * <!-- end-user-doc -->
273 * @generated
274 */
275 @Override
276 public void eUnset(int featureID) {
277 switch (featureID) {
278 case SolverLanguagePackage.BINARY_EXPRESSION__OP:
279 setOp(OP_EDEFAULT);
280 return;
281 case SolverLanguagePackage.BINARY_EXPRESSION__LEFT:
282 setLeft((Expression) null);
283 return;
284 case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT:
285 setRight((Expression) null);
286 return;
287 }
288 super.eUnset(featureID);
289 }
290
291 /**
292 * <!-- begin-user-doc -->
293 * <!-- end-user-doc -->
294 * @generated
295 */
296 @Override
297 public boolean eIsSet(int featureID) {
298 switch (featureID) {
299 case SolverLanguagePackage.BINARY_EXPRESSION__OP:
300 return op != OP_EDEFAULT;
301 case SolverLanguagePackage.BINARY_EXPRESSION__LEFT:
302 return left != null;
303 case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT:
304 return right != null;
305 }
306 return super.eIsSet(featureID);
307 }
308
309 /**
310 * <!-- begin-user-doc -->
311 * <!-- end-user-doc -->
312 * @generated
313 */
314 @Override
315 public String toString() {
316 if (eIsProxy())
317 return super.toString();
318
319 StringBuilder result = new StringBuilder(super.toString());
320 result.append(" (op: ");
321 result.append(op);
322 result.append(')');
323 return result.toString();
324 }
325
326} //BinaryExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java
new file mode 100644
index 00000000..c4aa7dfd
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java
@@ -0,0 +1,219 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Bounded Multiplicity</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl#getLowerBound <em>Lower Bound</em>}</li>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl#getUpperBound <em>Upper Bound</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class BoundedMultiplicityImpl extends MultiplicityImpl implements BoundedMultiplicity {
29 /**
30 * The default value of the '{@link #getLowerBound() <em>Lower Bound</em>}' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getLowerBound()
34 * @generated
35 * @ordered
36 */
37 protected static final int LOWER_BOUND_EDEFAULT = 0;
38
39 /**
40 * The cached value of the '{@link #getLowerBound() <em>Lower Bound</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getLowerBound()
44 * @generated
45 * @ordered
46 */
47 protected int lowerBound = LOWER_BOUND_EDEFAULT;
48
49 /**
50 * The default value of the '{@link #getUpperBound() <em>Upper Bound</em>}' attribute.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getUpperBound()
54 * @generated
55 * @ordered
56 */
57 protected static final int UPPER_BOUND_EDEFAULT = 0;
58
59 /**
60 * The cached value of the '{@link #getUpperBound() <em>Upper Bound</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @see #getUpperBound()
64 * @generated
65 * @ordered
66 */
67 protected int upperBound = UPPER_BOUND_EDEFAULT;
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 protected BoundedMultiplicityImpl() {
75 super();
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 protected EClass eStaticClass() {
85 return SolverLanguagePackage.Literals.BOUNDED_MULTIPLICITY;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public int getLowerBound() {
94 return lowerBound;
95 }
96
97 /**
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 public void setLowerBound(int newLowerBound) {
103 int oldLowerBound = lowerBound;
104 lowerBound = newLowerBound;
105 if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET,
107 SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND, oldLowerBound, lowerBound));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public int getUpperBound() {
116 return upperBound;
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 public void setUpperBound(int newUpperBound) {
125 int oldUpperBound = upperBound;
126 upperBound = newUpperBound;
127 if (eNotificationRequired())
128 eNotify(new ENotificationImpl(this, Notification.SET,
129 SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND, oldUpperBound, upperBound));
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 @Override
138 public Object eGet(int featureID, boolean resolve, boolean coreType) {
139 switch (featureID) {
140 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND:
141 return getLowerBound();
142 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND:
143 return getUpperBound();
144 }
145 return super.eGet(featureID, resolve, coreType);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public void eSet(int featureID, Object newValue) {
155 switch (featureID) {
156 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND:
157 setLowerBound((Integer) newValue);
158 return;
159 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND:
160 setUpperBound((Integer) newValue);
161 return;
162 }
163 super.eSet(featureID, newValue);
164 }
165
166 /**
167 * <!-- begin-user-doc -->
168 * <!-- end-user-doc -->
169 * @generated
170 */
171 @Override
172 public void eUnset(int featureID) {
173 switch (featureID) {
174 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND:
175 setLowerBound(LOWER_BOUND_EDEFAULT);
176 return;
177 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND:
178 setUpperBound(UPPER_BOUND_EDEFAULT);
179 return;
180 }
181 super.eUnset(featureID);
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 @Override
190 public boolean eIsSet(int featureID) {
191 switch (featureID) {
192 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND:
193 return lowerBound != LOWER_BOUND_EDEFAULT;
194 case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND:
195 return upperBound != UPPER_BOUND_EDEFAULT;
196 }
197 return super.eIsSet(featureID);
198 }
199
200 /**
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @generated
204 */
205 @Override
206 public String toString() {
207 if (eIsProxy())
208 return super.toString();
209
210 StringBuilder result = new StringBuilder(super.toString());
211 result.append(" (lowerBound: ");
212 result.append(lowerBound);
213 result.append(", upperBound: ");
214 result.append(upperBound);
215 result.append(')');
216 return result.toString();
217 }
218
219} //BoundedMultiplicityImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java
new file mode 100644
index 00000000..acd63c55
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java
@@ -0,0 +1,219 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.BoundedScope;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Bounded Scope</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl#getLowerBound <em>Lower Bound</em>}</li>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl#getUpperBound <em>Upper Bound</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class BoundedScopeImpl extends ScopeDeclarationImpl implements BoundedScope {
29 /**
30 * The default value of the '{@link #getLowerBound() <em>Lower Bound</em>}' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getLowerBound()
34 * @generated
35 * @ordered
36 */
37 protected static final int LOWER_BOUND_EDEFAULT = 0;
38
39 /**
40 * The cached value of the '{@link #getLowerBound() <em>Lower Bound</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getLowerBound()
44 * @generated
45 * @ordered
46 */
47 protected int lowerBound = LOWER_BOUND_EDEFAULT;
48
49 /**
50 * The default value of the '{@link #getUpperBound() <em>Upper Bound</em>}' attribute.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getUpperBound()
54 * @generated
55 * @ordered
56 */
57 protected static final int UPPER_BOUND_EDEFAULT = 0;
58
59 /**
60 * The cached value of the '{@link #getUpperBound() <em>Upper Bound</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @see #getUpperBound()
64 * @generated
65 * @ordered
66 */
67 protected int upperBound = UPPER_BOUND_EDEFAULT;
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 protected BoundedScopeImpl() {
75 super();
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 protected EClass eStaticClass() {
85 return SolverLanguagePackage.Literals.BOUNDED_SCOPE;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public int getLowerBound() {
94 return lowerBound;
95 }
96
97 /**
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 public void setLowerBound(int newLowerBound) {
103 int oldLowerBound = lowerBound;
104 lowerBound = newLowerBound;
105 if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND,
107 oldLowerBound, lowerBound));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public int getUpperBound() {
116 return upperBound;
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 public void setUpperBound(int newUpperBound) {
125 int oldUpperBound = upperBound;
126 upperBound = newUpperBound;
127 if (eNotificationRequired())
128 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND,
129 oldUpperBound, upperBound));
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 @Override
138 public Object eGet(int featureID, boolean resolve, boolean coreType) {
139 switch (featureID) {
140 case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND:
141 return getLowerBound();
142 case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND:
143 return getUpperBound();
144 }
145 return super.eGet(featureID, resolve, coreType);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public void eSet(int featureID, Object newValue) {
155 switch (featureID) {
156 case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND:
157 setLowerBound((Integer) newValue);
158 return;
159 case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND:
160 setUpperBound((Integer) newValue);
161 return;
162 }
163 super.eSet(featureID, newValue);
164 }
165
166 /**
167 * <!-- begin-user-doc -->
168 * <!-- end-user-doc -->
169 * @generated
170 */
171 @Override
172 public void eUnset(int featureID) {
173 switch (featureID) {
174 case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND:
175 setLowerBound(LOWER_BOUND_EDEFAULT);
176 return;
177 case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND:
178 setUpperBound(UPPER_BOUND_EDEFAULT);
179 return;
180 }
181 super.eUnset(featureID);
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 @Override
190 public boolean eIsSet(int featureID) {
191 switch (featureID) {
192 case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND:
193 return lowerBound != LOWER_BOUND_EDEFAULT;
194 case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND:
195 return upperBound != UPPER_BOUND_EDEFAULT;
196 }
197 return super.eIsSet(featureID);
198 }
199
200 /**
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @generated
204 */
205 @Override
206 public String toString() {
207 if (eIsProxy())
208 return super.toString();
209
210 StringBuilder result = new StringBuilder(super.toString());
211 result.append(" (lowerBound: ");
212 result.append(lowerBound);
213 result.append(", upperBound: ");
214 result.append(upperBound);
215 result.append(')');
216 return result.toString();
217 }
218
219} //BoundedScopeImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java
new file mode 100644
index 00000000..59c2a372
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java
@@ -0,0 +1,256 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
14import org.eclipse.viatra.solver.language.solverLanguage.Call;
15import org.eclipse.viatra.solver.language.solverLanguage.Reference;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Call</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#getFunctor <em>Functor</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#getArgumentList <em>Argument List</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class CallImpl extends ExpressionImpl implements Call {
33 /**
34 * The cached value of the '{@link #getFunctor() <em>Functor</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getFunctor()
38 * @generated
39 * @ordered
40 */
41 protected Reference functor;
42
43 /**
44 * The cached value of the '{@link #getArgumentList() <em>Argument List</em>}' containment reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getArgumentList()
48 * @generated
49 * @ordered
50 */
51 protected ArgumentList argumentList;
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 protected CallImpl() {
59 super();
60 }
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 @Override
68 protected EClass eStaticClass() {
69 return SolverLanguagePackage.Literals.CALL;
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 public Reference getFunctor() {
78 return functor;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public NotificationChain basicSetFunctor(Reference newFunctor, NotificationChain msgs) {
87 Reference oldFunctor = functor;
88 functor = newFunctor;
89 if (eNotificationRequired()) {
90 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
91 SolverLanguagePackage.CALL__FUNCTOR, oldFunctor, newFunctor);
92 if (msgs == null)
93 msgs = notification;
94 else
95 msgs.add(notification);
96 }
97 return msgs;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public void setFunctor(Reference newFunctor) {
106 if (newFunctor != functor) {
107 NotificationChain msgs = null;
108 if (functor != null)
109 msgs = ((InternalEObject) functor).eInverseRemove(this,
110 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__FUNCTOR, null, msgs);
111 if (newFunctor != null)
112 msgs = ((InternalEObject) newFunctor).eInverseAdd(this,
113 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__FUNCTOR, null, msgs);
114 msgs = basicSetFunctor(newFunctor, msgs);
115 if (msgs != null)
116 msgs.dispatch();
117 } else if (eNotificationRequired())
118 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__FUNCTOR, newFunctor,
119 newFunctor));
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public ArgumentList getArgumentList() {
128 return argumentList;
129 }
130
131 /**
132 * <!-- begin-user-doc -->
133 * <!-- end-user-doc -->
134 * @generated
135 */
136 public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) {
137 ArgumentList oldArgumentList = argumentList;
138 argumentList = newArgumentList;
139 if (eNotificationRequired()) {
140 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
141 SolverLanguagePackage.CALL__ARGUMENT_LIST, oldArgumentList, newArgumentList);
142 if (msgs == null)
143 msgs = notification;
144 else
145 msgs.add(notification);
146 }
147 return msgs;
148 }
149
150 /**
151 * <!-- begin-user-doc -->
152 * <!-- end-user-doc -->
153 * @generated
154 */
155 public void setArgumentList(ArgumentList newArgumentList) {
156 if (newArgumentList != argumentList) {
157 NotificationChain msgs = null;
158 if (argumentList != null)
159 msgs = ((InternalEObject) argumentList).eInverseRemove(this,
160 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__ARGUMENT_LIST, null, msgs);
161 if (newArgumentList != null)
162 msgs = ((InternalEObject) newArgumentList).eInverseAdd(this,
163 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__ARGUMENT_LIST, null, msgs);
164 msgs = basicSetArgumentList(newArgumentList, msgs);
165 if (msgs != null)
166 msgs.dispatch();
167 } else if (eNotificationRequired())
168 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__ARGUMENT_LIST,
169 newArgumentList, newArgumentList));
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 @Override
178 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
179 switch (featureID) {
180 case SolverLanguagePackage.CALL__FUNCTOR:
181 return basicSetFunctor(null, msgs);
182 case SolverLanguagePackage.CALL__ARGUMENT_LIST:
183 return basicSetArgumentList(null, msgs);
184 }
185 return super.eInverseRemove(otherEnd, featureID, msgs);
186 }
187
188 /**
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @generated
192 */
193 @Override
194 public Object eGet(int featureID, boolean resolve, boolean coreType) {
195 switch (featureID) {
196 case SolverLanguagePackage.CALL__FUNCTOR:
197 return getFunctor();
198 case SolverLanguagePackage.CALL__ARGUMENT_LIST:
199 return getArgumentList();
200 }
201 return super.eGet(featureID, resolve, coreType);
202 }
203
204 /**
205 * <!-- begin-user-doc -->
206 * <!-- end-user-doc -->
207 * @generated
208 */
209 @Override
210 public void eSet(int featureID, Object newValue) {
211 switch (featureID) {
212 case SolverLanguagePackage.CALL__FUNCTOR:
213 setFunctor((Reference) newValue);
214 return;
215 case SolverLanguagePackage.CALL__ARGUMENT_LIST:
216 setArgumentList((ArgumentList) newValue);
217 return;
218 }
219 super.eSet(featureID, newValue);
220 }
221
222 /**
223 * <!-- begin-user-doc -->
224 * <!-- end-user-doc -->
225 * @generated
226 */
227 @Override
228 public void eUnset(int featureID) {
229 switch (featureID) {
230 case SolverLanguagePackage.CALL__FUNCTOR:
231 setFunctor((Reference) null);
232 return;
233 case SolverLanguagePackage.CALL__ARGUMENT_LIST:
234 setArgumentList((ArgumentList) null);
235 return;
236 }
237 super.eUnset(featureID);
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public boolean eIsSet(int featureID) {
247 switch (featureID) {
248 case SolverLanguagePackage.CALL__FUNCTOR:
249 return functor != null;
250 case SolverLanguagePackage.CALL__ARGUMENT_LIST:
251 return argumentList != null;
252 }
253 return super.eIsSet(featureID);
254 }
255
256} //CallImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java
new file mode 100644
index 00000000..9c4d6820
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java
@@ -0,0 +1,254 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Case;
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Case</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl#getCondition <em>Condition</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl#getBody <em>Body</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class CaseImpl extends ExpressionImpl implements Case {
32 /**
33 * The cached value of the '{@link #getCondition() <em>Condition</em>}' containment reference.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getCondition()
37 * @generated
38 * @ordered
39 */
40 protected Expression condition;
41
42 /**
43 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getBody()
47 * @generated
48 * @ordered
49 */
50 protected Expression body;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected CaseImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return SolverLanguagePackage.Literals.CASE;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public Expression getCondition() {
77 return condition;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) {
86 Expression oldCondition = condition;
87 condition = newCondition;
88 if (eNotificationRequired()) {
89 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
90 SolverLanguagePackage.CASE__CONDITION, oldCondition, newCondition);
91 if (msgs == null)
92 msgs = notification;
93 else
94 msgs.add(notification);
95 }
96 return msgs;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public void setCondition(Expression newCondition) {
105 if (newCondition != condition) {
106 NotificationChain msgs = null;
107 if (condition != null)
108 msgs = ((InternalEObject) condition).eInverseRemove(this,
109 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__CONDITION, null, msgs);
110 if (newCondition != null)
111 msgs = ((InternalEObject) newCondition).eInverseAdd(this,
112 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__CONDITION, null, msgs);
113 msgs = basicSetCondition(newCondition, msgs);
114 if (msgs != null)
115 msgs.dispatch();
116 } else if (eNotificationRequired())
117 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__CONDITION, newCondition,
118 newCondition));
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public Expression getBody() {
127 return body;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
136 Expression oldBody = body;
137 body = newBody;
138 if (eNotificationRequired()) {
139 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
140 SolverLanguagePackage.CASE__BODY, oldBody, newBody);
141 if (msgs == null)
142 msgs = notification;
143 else
144 msgs.add(notification);
145 }
146 return msgs;
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 public void setBody(Expression newBody) {
155 if (newBody != body) {
156 NotificationChain msgs = null;
157 if (body != null)
158 msgs = ((InternalEObject) body).eInverseRemove(this,
159 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__BODY, null, msgs);
160 if (newBody != null)
161 msgs = ((InternalEObject) newBody).eInverseAdd(this,
162 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__BODY, null, msgs);
163 msgs = basicSetBody(newBody, msgs);
164 if (msgs != null)
165 msgs.dispatch();
166 } else if (eNotificationRequired())
167 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__BODY, newBody, newBody));
168 }
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 @Override
176 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
177 switch (featureID) {
178 case SolverLanguagePackage.CASE__CONDITION:
179 return basicSetCondition(null, msgs);
180 case SolverLanguagePackage.CASE__BODY:
181 return basicSetBody(null, msgs);
182 }
183 return super.eInverseRemove(otherEnd, featureID, msgs);
184 }
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 @Override
192 public Object eGet(int featureID, boolean resolve, boolean coreType) {
193 switch (featureID) {
194 case SolverLanguagePackage.CASE__CONDITION:
195 return getCondition();
196 case SolverLanguagePackage.CASE__BODY:
197 return getBody();
198 }
199 return super.eGet(featureID, resolve, coreType);
200 }
201
202 /**
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @generated
206 */
207 @Override
208 public void eSet(int featureID, Object newValue) {
209 switch (featureID) {
210 case SolverLanguagePackage.CASE__CONDITION:
211 setCondition((Expression) newValue);
212 return;
213 case SolverLanguagePackage.CASE__BODY:
214 setBody((Expression) newValue);
215 return;
216 }
217 super.eSet(featureID, newValue);
218 }
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 @Override
226 public void eUnset(int featureID) {
227 switch (featureID) {
228 case SolverLanguagePackage.CASE__CONDITION:
229 setCondition((Expression) null);
230 return;
231 case SolverLanguagePackage.CASE__BODY:
232 setBody((Expression) null);
233 return;
234 }
235 super.eUnset(featureID);
236 }
237
238 /**
239 * <!-- begin-user-doc -->
240 * <!-- end-user-doc -->
241 * @generated
242 */
243 @Override
244 public boolean eIsSet(int featureID) {
245 switch (featureID) {
246 case SolverLanguagePackage.CASE__CONDITION:
247 return condition != null;
248 case SolverLanguagePackage.CASE__BODY:
249 return body != null;
250 }
251 return super.eIsSet(featureID);
252 }
253
254} //CaseImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java
new file mode 100644
index 00000000..66baf204
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java
@@ -0,0 +1,246 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.CastExpression;
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Cast Expression</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl#getBody <em>Body</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl#getTargetType <em>Target Type</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class CastExpressionImpl extends ExpressionImpl implements CastExpression {
33 /**
34 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getBody()
38 * @generated
39 * @ordered
40 */
41 protected Expression body;
42
43 /**
44 * The cached value of the '{@link #getTargetType() <em>Target Type</em>}' reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getTargetType()
48 * @generated
49 * @ordered
50 */
51 protected Symbol targetType;
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 protected CastExpressionImpl() {
59 super();
60 }
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 @Override
68 protected EClass eStaticClass() {
69 return SolverLanguagePackage.Literals.CAST_EXPRESSION;
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 public Expression getBody() {
78 return body;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
87 Expression oldBody = body;
88 body = newBody;
89 if (eNotificationRequired()) {
90 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
91 SolverLanguagePackage.CAST_EXPRESSION__BODY, oldBody, newBody);
92 if (msgs == null)
93 msgs = notification;
94 else
95 msgs.add(notification);
96 }
97 return msgs;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public void setBody(Expression newBody) {
106 if (newBody != body) {
107 NotificationChain msgs = null;
108 if (body != null)
109 msgs = ((InternalEObject) body).eInverseRemove(this,
110 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CAST_EXPRESSION__BODY, null, msgs);
111 if (newBody != null)
112 msgs = ((InternalEObject) newBody).eInverseAdd(this,
113 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CAST_EXPRESSION__BODY, null, msgs);
114 msgs = basicSetBody(newBody, msgs);
115 if (msgs != null)
116 msgs.dispatch();
117 } else if (eNotificationRequired())
118 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__BODY, newBody,
119 newBody));
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public Symbol getTargetType() {
128 if (targetType != null && targetType.eIsProxy()) {
129 InternalEObject oldTargetType = (InternalEObject) targetType;
130 targetType = (Symbol) eResolveProxy(oldTargetType);
131 if (targetType != oldTargetType) {
132 if (eNotificationRequired())
133 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
134 SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE, oldTargetType, targetType));
135 }
136 }
137 return targetType;
138 }
139
140 /**
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @generated
144 */
145 public Symbol basicGetTargetType() {
146 return targetType;
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 public void setTargetType(Symbol newTargetType) {
155 Symbol oldTargetType = targetType;
156 targetType = newTargetType;
157 if (eNotificationRequired())
158 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE,
159 oldTargetType, targetType));
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 @Override
168 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
169 switch (featureID) {
170 case SolverLanguagePackage.CAST_EXPRESSION__BODY:
171 return basicSetBody(null, msgs);
172 }
173 return super.eInverseRemove(otherEnd, featureID, msgs);
174 }
175
176 /**
177 * <!-- begin-user-doc -->
178 * <!-- end-user-doc -->
179 * @generated
180 */
181 @Override
182 public Object eGet(int featureID, boolean resolve, boolean coreType) {
183 switch (featureID) {
184 case SolverLanguagePackage.CAST_EXPRESSION__BODY:
185 return getBody();
186 case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE:
187 if (resolve)
188 return getTargetType();
189 return basicGetTargetType();
190 }
191 return super.eGet(featureID, resolve, coreType);
192 }
193
194 /**
195 * <!-- begin-user-doc -->
196 * <!-- end-user-doc -->
197 * @generated
198 */
199 @Override
200 public void eSet(int featureID, Object newValue) {
201 switch (featureID) {
202 case SolverLanguagePackage.CAST_EXPRESSION__BODY:
203 setBody((Expression) newValue);
204 return;
205 case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE:
206 setTargetType((Symbol) newValue);
207 return;
208 }
209 super.eSet(featureID, newValue);
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 @Override
218 public void eUnset(int featureID) {
219 switch (featureID) {
220 case SolverLanguagePackage.CAST_EXPRESSION__BODY:
221 setBody((Expression) null);
222 return;
223 case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE:
224 setTargetType((Symbol) null);
225 return;
226 }
227 super.eUnset(featureID);
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 @Override
236 public boolean eIsSet(int featureID) {
237 switch (featureID) {
238 case SolverLanguagePackage.CAST_EXPRESSION__BODY:
239 return body != null;
240 case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE:
241 return targetType != null;
242 }
243 return super.eIsSet(featureID);
244 }
245
246} //CastExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java
new file mode 100644
index 00000000..a9bfeab7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java
@@ -0,0 +1,371 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16
17import org.eclipse.emf.ecore.util.EObjectContainmentEList;
18import org.eclipse.emf.ecore.util.EObjectResolvingEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21import org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration;
22import org.eclipse.viatra.solver.language.solverLanguage.Field;
23import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
24import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
25
26/**
27 * <!-- begin-user-doc -->
28 * An implementation of the model object '<em><b>Class Declaration</b></em>'.
29 * <!-- end-user-doc -->
30 * <p>
31 * The following features are implemented:
32 * </p>
33 * <ul>
34 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#getFields <em>Fields</em>}</li>
35 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#getName <em>Name</em>}</li>
36 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#isAbstract <em>Abstract</em>}</li>
37 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#getSupertypes <em>Supertypes</em>}</li>
38 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#isRoot <em>Root</em>}</li>
39 * </ul>
40 *
41 * @generated
42 */
43public class ClassDeclarationImpl extends StatementImpl implements ClassDeclaration {
44 /**
45 * The cached value of the '{@link #getFields() <em>Fields</em>}' containment reference list.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #getFields()
49 * @generated
50 * @ordered
51 */
52 protected EList<Field> fields;
53
54 /**
55 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #getName()
59 * @generated
60 * @ordered
61 */
62 protected static final String NAME_EDEFAULT = null;
63
64 /**
65 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #getName()
69 * @generated
70 * @ordered
71 */
72 protected String name = NAME_EDEFAULT;
73
74 /**
75 * The default value of the '{@link #isAbstract() <em>Abstract</em>}' attribute.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @see #isAbstract()
79 * @generated
80 * @ordered
81 */
82 protected static final boolean ABSTRACT_EDEFAULT = false;
83
84 /**
85 * The cached value of the '{@link #isAbstract() <em>Abstract</em>}' attribute.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @see #isAbstract()
89 * @generated
90 * @ordered
91 */
92 protected boolean abstract_ = ABSTRACT_EDEFAULT;
93
94 /**
95 * The cached value of the '{@link #getSupertypes() <em>Supertypes</em>}' reference list.
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @see #getSupertypes()
99 * @generated
100 * @ordered
101 */
102 protected EList<Symbol> supertypes;
103
104 /**
105 * The default value of the '{@link #isRoot() <em>Root</em>}' attribute.
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @see #isRoot()
109 * @generated
110 * @ordered
111 */
112 protected static final boolean ROOT_EDEFAULT = false;
113
114 /**
115 * The cached value of the '{@link #isRoot() <em>Root</em>}' attribute.
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @see #isRoot()
119 * @generated
120 * @ordered
121 */
122 protected boolean root = ROOT_EDEFAULT;
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 protected ClassDeclarationImpl() {
130 super();
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 protected EClass eStaticClass() {
140 return SolverLanguagePackage.Literals.CLASS_DECLARATION;
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 public EList<Field> getFields() {
149 if (fields == null) {
150 fields = new EObjectContainmentEList<Field>(Field.class, this,
151 SolverLanguagePackage.CLASS_DECLARATION__FIELDS);
152 }
153 return fields;
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 public String getName() {
162 return name;
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 public void setName(String newName) {
171 String oldName = name;
172 name = newName;
173 if (eNotificationRequired())
174 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DECLARATION__NAME,
175 oldName, name));
176 }
177
178 /**
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @generated
182 */
183 public boolean isAbstract() {
184 return abstract_;
185 }
186
187 /**
188 * <!-- begin-user-doc -->
189 * <!-- end-user-doc -->
190 * @generated
191 */
192 public void setAbstract(boolean newAbstract) {
193 boolean oldAbstract = abstract_;
194 abstract_ = newAbstract;
195 if (eNotificationRequired())
196 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT,
197 oldAbstract, abstract_));
198 }
199
200 /**
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @generated
204 */
205 public EList<Symbol> getSupertypes() {
206 if (supertypes == null) {
207 supertypes = new EObjectResolvingEList<Symbol>(Symbol.class, this,
208 SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES);
209 }
210 return supertypes;
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 public boolean isRoot() {
219 return root;
220 }
221
222 /**
223 * <!-- begin-user-doc -->
224 * <!-- end-user-doc -->
225 * @generated
226 */
227 public void setRoot(boolean newRoot) {
228 boolean oldRoot = root;
229 root = newRoot;
230 if (eNotificationRequired())
231 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DECLARATION__ROOT,
232 oldRoot, root));
233 }
234
235 /**
236 * <!-- begin-user-doc -->
237 * <!-- end-user-doc -->
238 * @generated
239 */
240 @Override
241 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
242 switch (featureID) {
243 case SolverLanguagePackage.CLASS_DECLARATION__FIELDS:
244 return ((InternalEList<?>) getFields()).basicRemove(otherEnd, msgs);
245 }
246 return super.eInverseRemove(otherEnd, featureID, msgs);
247 }
248
249 /**
250 * <!-- begin-user-doc -->
251 * <!-- end-user-doc -->
252 * @generated
253 */
254 @Override
255 public Object eGet(int featureID, boolean resolve, boolean coreType) {
256 switch (featureID) {
257 case SolverLanguagePackage.CLASS_DECLARATION__FIELDS:
258 return getFields();
259 case SolverLanguagePackage.CLASS_DECLARATION__NAME:
260 return getName();
261 case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT:
262 return isAbstract();
263 case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES:
264 return getSupertypes();
265 case SolverLanguagePackage.CLASS_DECLARATION__ROOT:
266 return isRoot();
267 }
268 return super.eGet(featureID, resolve, coreType);
269 }
270
271 /**
272 * <!-- begin-user-doc -->
273 * <!-- end-user-doc -->
274 * @generated
275 */
276 @SuppressWarnings("unchecked")
277 @Override
278 public void eSet(int featureID, Object newValue) {
279 switch (featureID) {
280 case SolverLanguagePackage.CLASS_DECLARATION__FIELDS:
281 getFields().clear();
282 getFields().addAll((Collection<? extends Field>) newValue);
283 return;
284 case SolverLanguagePackage.CLASS_DECLARATION__NAME:
285 setName((String) newValue);
286 return;
287 case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT:
288 setAbstract((Boolean) newValue);
289 return;
290 case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES:
291 getSupertypes().clear();
292 getSupertypes().addAll((Collection<? extends Symbol>) newValue);
293 return;
294 case SolverLanguagePackage.CLASS_DECLARATION__ROOT:
295 setRoot((Boolean) newValue);
296 return;
297 }
298 super.eSet(featureID, newValue);
299 }
300
301 /**
302 * <!-- begin-user-doc -->
303 * <!-- end-user-doc -->
304 * @generated
305 */
306 @Override
307 public void eUnset(int featureID) {
308 switch (featureID) {
309 case SolverLanguagePackage.CLASS_DECLARATION__FIELDS:
310 getFields().clear();
311 return;
312 case SolverLanguagePackage.CLASS_DECLARATION__NAME:
313 setName(NAME_EDEFAULT);
314 return;
315 case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT:
316 setAbstract(ABSTRACT_EDEFAULT);
317 return;
318 case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES:
319 getSupertypes().clear();
320 return;
321 case SolverLanguagePackage.CLASS_DECLARATION__ROOT:
322 setRoot(ROOT_EDEFAULT);
323 return;
324 }
325 super.eUnset(featureID);
326 }
327
328 /**
329 * <!-- begin-user-doc -->
330 * <!-- end-user-doc -->
331 * @generated
332 */
333 @Override
334 public boolean eIsSet(int featureID) {
335 switch (featureID) {
336 case SolverLanguagePackage.CLASS_DECLARATION__FIELDS:
337 return fields != null && !fields.isEmpty();
338 case SolverLanguagePackage.CLASS_DECLARATION__NAME:
339 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
340 case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT:
341 return abstract_ != ABSTRACT_EDEFAULT;
342 case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES:
343 return supertypes != null && !supertypes.isEmpty();
344 case SolverLanguagePackage.CLASS_DECLARATION__ROOT:
345 return root != ROOT_EDEFAULT;
346 }
347 return super.eIsSet(featureID);
348 }
349
350 /**
351 * <!-- begin-user-doc -->
352 * <!-- end-user-doc -->
353 * @generated
354 */
355 @Override
356 public String toString() {
357 if (eIsProxy())
358 return super.toString();
359
360 StringBuilder result = new StringBuilder(super.toString());
361 result.append(" (name: ");
362 result.append(name);
363 result.append(", abstract: ");
364 result.append(abstract_);
365 result.append(", root: ");
366 result.append(root);
367 result.append(')');
368 return result.toString();
369 }
370
371} //ClassDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java
new file mode 100644
index 00000000..30d5c6c1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java
@@ -0,0 +1,328 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression;
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Conditional Expression</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl#getCondition <em>Condition</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl#getThen <em>Then</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl#getElse <em>Else</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class ConditionalExpressionImpl extends ExpressionImpl implements ConditionalExpression {
33 /**
34 * The cached value of the '{@link #getCondition() <em>Condition</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getCondition()
38 * @generated
39 * @ordered
40 */
41 protected Expression condition;
42
43 /**
44 * The cached value of the '{@link #getThen() <em>Then</em>}' containment reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getThen()
48 * @generated
49 * @ordered
50 */
51 protected Expression then;
52
53 /**
54 * The cached value of the '{@link #getElse() <em>Else</em>}' containment reference.
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @see #getElse()
58 * @generated
59 * @ordered
60 */
61 protected Expression else_;
62
63 /**
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 protected ConditionalExpressionImpl() {
69 super();
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 @Override
78 protected EClass eStaticClass() {
79 return SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 public Expression getCondition() {
88 return condition;
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) {
97 Expression oldCondition = condition;
98 condition = newCondition;
99 if (eNotificationRequired()) {
100 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
101 SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, oldCondition, newCondition);
102 if (msgs == null)
103 msgs = notification;
104 else
105 msgs.add(notification);
106 }
107 return msgs;
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public void setCondition(Expression newCondition) {
116 if (newCondition != condition) {
117 NotificationChain msgs = null;
118 if (condition != null)
119 msgs = ((InternalEObject) condition).eInverseRemove(this,
120 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs);
121 if (newCondition != null)
122 msgs = ((InternalEObject) newCondition).eInverseAdd(this,
123 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs);
124 msgs = basicSetCondition(newCondition, msgs);
125 if (msgs != null)
126 msgs.dispatch();
127 } else if (eNotificationRequired())
128 eNotify(new ENotificationImpl(this, Notification.SET,
129 SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, newCondition, newCondition));
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 public Expression getThen() {
138 return then;
139 }
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 public NotificationChain basicSetThen(Expression newThen, NotificationChain msgs) {
147 Expression oldThen = then;
148 then = newThen;
149 if (eNotificationRequired()) {
150 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
151 SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, oldThen, newThen);
152 if (msgs == null)
153 msgs = notification;
154 else
155 msgs.add(notification);
156 }
157 return msgs;
158 }
159
160 /**
161 * <!-- begin-user-doc -->
162 * <!-- end-user-doc -->
163 * @generated
164 */
165 public void setThen(Expression newThen) {
166 if (newThen != then) {
167 NotificationChain msgs = null;
168 if (then != null)
169 msgs = ((InternalEObject) then).eInverseRemove(this,
170 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, null, msgs);
171 if (newThen != null)
172 msgs = ((InternalEObject) newThen).eInverseAdd(this,
173 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, null, msgs);
174 msgs = basicSetThen(newThen, msgs);
175 if (msgs != null)
176 msgs.dispatch();
177 } else if (eNotificationRequired())
178 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN,
179 newThen, newThen));
180 }
181
182 /**
183 * <!-- begin-user-doc -->
184 * <!-- end-user-doc -->
185 * @generated
186 */
187 public Expression getElse() {
188 return else_;
189 }
190
191 /**
192 * <!-- begin-user-doc -->
193 * <!-- end-user-doc -->
194 * @generated
195 */
196 public NotificationChain basicSetElse(Expression newElse, NotificationChain msgs) {
197 Expression oldElse = else_;
198 else_ = newElse;
199 if (eNotificationRequired()) {
200 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
201 SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, oldElse, newElse);
202 if (msgs == null)
203 msgs = notification;
204 else
205 msgs.add(notification);
206 }
207 return msgs;
208 }
209
210 /**
211 * <!-- begin-user-doc -->
212 * <!-- end-user-doc -->
213 * @generated
214 */
215 public void setElse(Expression newElse) {
216 if (newElse != else_) {
217 NotificationChain msgs = null;
218 if (else_ != null)
219 msgs = ((InternalEObject) else_).eInverseRemove(this,
220 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, null, msgs);
221 if (newElse != null)
222 msgs = ((InternalEObject) newElse).eInverseAdd(this,
223 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, null, msgs);
224 msgs = basicSetElse(newElse, msgs);
225 if (msgs != null)
226 msgs.dispatch();
227 } else if (eNotificationRequired())
228 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE,
229 newElse, newElse));
230 }
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
237 @Override
238 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
239 switch (featureID) {
240 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION:
241 return basicSetCondition(null, msgs);
242 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN:
243 return basicSetThen(null, msgs);
244 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE:
245 return basicSetElse(null, msgs);
246 }
247 return super.eInverseRemove(otherEnd, featureID, msgs);
248 }
249
250 /**
251 * <!-- begin-user-doc -->
252 * <!-- end-user-doc -->
253 * @generated
254 */
255 @Override
256 public Object eGet(int featureID, boolean resolve, boolean coreType) {
257 switch (featureID) {
258 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION:
259 return getCondition();
260 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN:
261 return getThen();
262 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE:
263 return getElse();
264 }
265 return super.eGet(featureID, resolve, coreType);
266 }
267
268 /**
269 * <!-- begin-user-doc -->
270 * <!-- end-user-doc -->
271 * @generated
272 */
273 @Override
274 public void eSet(int featureID, Object newValue) {
275 switch (featureID) {
276 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION:
277 setCondition((Expression) newValue);
278 return;
279 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN:
280 setThen((Expression) newValue);
281 return;
282 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE:
283 setElse((Expression) newValue);
284 return;
285 }
286 super.eSet(featureID, newValue);
287 }
288
289 /**
290 * <!-- begin-user-doc -->
291 * <!-- end-user-doc -->
292 * @generated
293 */
294 @Override
295 public void eUnset(int featureID) {
296 switch (featureID) {
297 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION:
298 setCondition((Expression) null);
299 return;
300 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN:
301 setThen((Expression) null);
302 return;
303 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE:
304 setElse((Expression) null);
305 return;
306 }
307 super.eUnset(featureID);
308 }
309
310 /**
311 * <!-- begin-user-doc -->
312 * <!-- end-user-doc -->
313 * @generated
314 */
315 @Override
316 public boolean eIsSet(int featureID) {
317 switch (featureID) {
318 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION:
319 return condition != null;
320 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN:
321 return then != null;
322 case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE:
323 return else_ != null;
324 }
325 return super.eIsSet(featureID);
326 }
327
328} //ConditionalExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java
new file mode 100644
index 00000000..6ac60dc1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Conjunction;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Conjunction</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ConjunctionImpl extends MultiaryExpessionImpl implements Conjunction {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected ConjunctionImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.CONJUNCTION;
35 }
36
37} //ConjunctionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java
new file mode 100644
index 00000000..b4a870c7
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Count;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Count</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class CountImpl extends AggregateExpressionImpl implements Count {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected CountImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.COUNT;
35 }
36
37} //CountImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java
new file mode 100644
index 00000000..eeb6a1d4
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Datatype;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Datatype</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class DatatypeImpl extends RelationImpl implements Datatype {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected DatatypeImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.DATATYPE;
35 }
36
37} //DatatypeImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java
new file mode 100644
index 00000000..52d5240c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Default Assertion</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class DefaultAssertionImpl extends AbstractAssertionImpl implements DefaultAssertion {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected DefaultAssertionImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.DEFAULT_ASSERTION;
35 }
36
37} //DefaultAssertionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java
new file mode 100644
index 00000000..a13a92f5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Disjunction;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Disjunction</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class DisjunctionImpl extends MultiaryExpessionImpl implements Disjunction {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected DisjunctionImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.DISJUNCTION;
35 }
36
37} //DisjunctionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java
new file mode 100644
index 00000000..b5dc7e54
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Empty Literal</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class EmptyLiteralImpl extends LiteralImpl implements EmptyLiteral {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected EmptyLiteralImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.EMPTY_LITERAL;
35 }
36
37} //EmptyLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java
new file mode 100644
index 00000000..1ddcc2f1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java
@@ -0,0 +1,224 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16
17import org.eclipse.emf.ecore.util.EObjectContainmentEList;
18import org.eclipse.emf.ecore.util.InternalEList;
19
20import org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration;
21import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral;
22import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Enum Declaration</b></em>'.
27 * <!-- end-user-doc -->
28 * <p>
29 * The following features are implemented:
30 * </p>
31 * <ul>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl#getLiterals <em>Literals</em>}</li>
33 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl#getName <em>Name</em>}</li>
34 * </ul>
35 *
36 * @generated
37 */
38public class EnumDeclarationImpl extends StatementImpl implements EnumDeclaration {
39 /**
40 * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getLiterals()
44 * @generated
45 * @ordered
46 */
47 protected EList<EnumLiteral> literals;
48
49 /**
50 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getName()
54 * @generated
55 * @ordered
56 */
57 protected static final String NAME_EDEFAULT = null;
58
59 /**
60 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @see #getName()
64 * @generated
65 * @ordered
66 */
67 protected String name = NAME_EDEFAULT;
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 protected EnumDeclarationImpl() {
75 super();
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 protected EClass eStaticClass() {
85 return SolverLanguagePackage.Literals.ENUM_DECLARATION;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public EList<EnumLiteral> getLiterals() {
94 if (literals == null) {
95 literals = new EObjectContainmentEList<EnumLiteral>(EnumLiteral.class, this,
96 SolverLanguagePackage.ENUM_DECLARATION__LITERALS);
97 }
98 return literals;
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 public String getName() {
107 return name;
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public void setName(String newName) {
116 String oldName = name;
117 name = newName;
118 if (eNotificationRequired())
119 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ENUM_DECLARATION__NAME, oldName,
120 name));
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
130 switch (featureID) {
131 case SolverLanguagePackage.ENUM_DECLARATION__LITERALS:
132 return ((InternalEList<?>) getLiterals()).basicRemove(otherEnd, msgs);
133 }
134 return super.eInverseRemove(otherEnd, featureID, msgs);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public Object eGet(int featureID, boolean resolve, boolean coreType) {
144 switch (featureID) {
145 case SolverLanguagePackage.ENUM_DECLARATION__LITERALS:
146 return getLiterals();
147 case SolverLanguagePackage.ENUM_DECLARATION__NAME:
148 return getName();
149 }
150 return super.eGet(featureID, resolve, coreType);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @SuppressWarnings("unchecked")
159 @Override
160 public void eSet(int featureID, Object newValue) {
161 switch (featureID) {
162 case SolverLanguagePackage.ENUM_DECLARATION__LITERALS:
163 getLiterals().clear();
164 getLiterals().addAll((Collection<? extends EnumLiteral>) newValue);
165 return;
166 case SolverLanguagePackage.ENUM_DECLARATION__NAME:
167 setName((String) newValue);
168 return;
169 }
170 super.eSet(featureID, newValue);
171 }
172
173 /**
174 * <!-- begin-user-doc -->
175 * <!-- end-user-doc -->
176 * @generated
177 */
178 @Override
179 public void eUnset(int featureID) {
180 switch (featureID) {
181 case SolverLanguagePackage.ENUM_DECLARATION__LITERALS:
182 getLiterals().clear();
183 return;
184 case SolverLanguagePackage.ENUM_DECLARATION__NAME:
185 setName(NAME_EDEFAULT);
186 return;
187 }
188 super.eUnset(featureID);
189 }
190
191 /**
192 * <!-- begin-user-doc -->
193 * <!-- end-user-doc -->
194 * @generated
195 */
196 @Override
197 public boolean eIsSet(int featureID) {
198 switch (featureID) {
199 case SolverLanguagePackage.ENUM_DECLARATION__LITERALS:
200 return literals != null && !literals.isEmpty();
201 case SolverLanguagePackage.ENUM_DECLARATION__NAME:
202 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
203 }
204 return super.eIsSet(featureID);
205 }
206
207 /**
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 */
212 @Override
213 public String toString() {
214 if (eIsProxy())
215 return super.toString();
216
217 StringBuilder result = new StringBuilder(super.toString());
218 result.append(" (name: ");
219 result.append(name);
220 result.append(')');
221 return result.toString();
222 }
223
224} //EnumDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java
new file mode 100644
index 00000000..5b7f9cb1
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java
@@ -0,0 +1,165 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Enum Literal</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class EnumLiteralImpl extends MinimalEObjectImpl.Container implements EnumLiteral {
29 /**
30 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getName()
34 * @generated
35 * @ordered
36 */
37 protected static final String NAME_EDEFAULT = null;
38
39 /**
40 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getName()
44 * @generated
45 * @ordered
46 */
47 protected String name = NAME_EDEFAULT;
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 protected EnumLiteralImpl() {
55 super();
56 }
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 @Override
64 protected EClass eStaticClass() {
65 return SolverLanguagePackage.Literals.ENUM_LITERAL;
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 public String getName() {
74 return name;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public void setName(String newName) {
83 String oldName = name;
84 name = newName;
85 if (eNotificationRequired())
86 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ENUM_LITERAL__NAME, oldName,
87 name));
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 public Object eGet(int featureID, boolean resolve, boolean coreType) {
97 switch (featureID) {
98 case SolverLanguagePackage.ENUM_LITERAL__NAME:
99 return getName();
100 }
101 return super.eGet(featureID, resolve, coreType);
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @Override
110 public void eSet(int featureID, Object newValue) {
111 switch (featureID) {
112 case SolverLanguagePackage.ENUM_LITERAL__NAME:
113 setName((String) newValue);
114 return;
115 }
116 super.eSet(featureID, newValue);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public void eUnset(int featureID) {
126 switch (featureID) {
127 case SolverLanguagePackage.ENUM_LITERAL__NAME:
128 setName(NAME_EDEFAULT);
129 return;
130 }
131 super.eUnset(featureID);
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 @Override
140 public boolean eIsSet(int featureID) {
141 switch (featureID) {
142 case SolverLanguagePackage.ENUM_LITERAL__NAME:
143 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
144 }
145 return super.eIsSet(featureID);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public String toString() {
155 if (eIsProxy())
156 return super.toString();
157
158 StringBuilder result = new StringBuilder(super.toString());
159 result.append(" (name: ");
160 result.append(name);
161 result.append(')');
162 return result.toString();
163 }
164
165} //EnumLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java
new file mode 100644
index 00000000..f981aede
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Exact Multiplicity</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl#getValue <em>Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class ExactMultiplicityImpl extends MultiplicityImpl implements ExactMultiplicity {
28 /**
29 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getValue()
33 * @generated
34 * @ordered
35 */
36 protected static final int VALUE_EDEFAULT = 0;
37
38 /**
39 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getValue()
43 * @generated
44 * @ordered
45 */
46 protected int value = VALUE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected ExactMultiplicityImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.EXACT_MULTIPLICITY;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public int getValue() {
73 return value;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setValue(int newValue) {
82 int oldValue = value;
83 value = newValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE,
86 oldValue, value));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE:
98 return getValue();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE:
112 setValue((Integer) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE:
127 setValue(VALUE_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE:
142 return value != VALUE_EDEFAULT;
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (value: ");
159 result.append(value);
160 result.append(')');
161 return result.toString();
162 }
163
164} //ExactMultiplicityImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java
new file mode 100644
index 00000000..80b06171
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.ExactScope;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Exact Scope</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl#getSize <em>Size</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class ExactScopeImpl extends ScopeDeclarationImpl implements ExactScope {
28 /**
29 * The default value of the '{@link #getSize() <em>Size</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getSize()
33 * @generated
34 * @ordered
35 */
36 protected static final int SIZE_EDEFAULT = 0;
37
38 /**
39 * The cached value of the '{@link #getSize() <em>Size</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getSize()
43 * @generated
44 * @ordered
45 */
46 protected int size = SIZE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected ExactScopeImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.EXACT_SCOPE;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public int getSize() {
73 return size;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setSize(int newSize) {
82 int oldSize = size;
83 size = newSize;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXACT_SCOPE__SIZE, oldSize,
86 size));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.EXACT_SCOPE__SIZE:
98 return getSize();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.EXACT_SCOPE__SIZE:
112 setSize((Integer) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.EXACT_SCOPE__SIZE:
127 setSize(SIZE_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.EXACT_SCOPE__SIZE:
142 return size != SIZE_EDEFAULT;
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (size: ");
159 result.append(size);
160 result.append(')');
161 return result.toString();
162 }
163
164} //ExactScopeImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java
new file mode 100644
index 00000000..7e84a49a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java
@@ -0,0 +1,182 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Expression;
14import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Expression Argument</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl#getExpression <em>Expression</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class ExpressionArgumentImpl extends ArgumentImpl implements ExpressionArgument {
31 /**
32 * The cached value of the '{@link #getExpression() <em>Expression</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getExpression()
36 * @generated
37 * @ordered
38 */
39 protected Expression expression;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected ExpressionArgumentImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public Expression getExpression() {
66 return expression;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetExpression(Expression newExpression, NotificationChain msgs) {
75 Expression oldExpression = expression;
76 expression = newExpression;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, oldExpression, newExpression);
80 if (msgs == null)
81 msgs = notification;
82 else
83 msgs.add(notification);
84 }
85 return msgs;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public void setExpression(Expression newExpression) {
94 if (newExpression != expression) {
95 NotificationChain msgs = null;
96 if (expression != null)
97 msgs = ((InternalEObject) expression).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, null, msgs);
99 if (newExpression != null)
100 msgs = ((InternalEObject) newExpression).eInverseAdd(this,
101 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, null, msgs);
102 msgs = basicSetExpression(newExpression, msgs);
103 if (msgs != null)
104 msgs.dispatch();
105 } else if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION,
107 newExpression, newExpression));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
117 switch (featureID) {
118 case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION:
119 return basicSetExpression(null, msgs);
120 }
121 return super.eInverseRemove(otherEnd, featureID, msgs);
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @Override
130 public Object eGet(int featureID, boolean resolve, boolean coreType) {
131 switch (featureID) {
132 case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION:
133 return getExpression();
134 }
135 return super.eGet(featureID, resolve, coreType);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public void eSet(int featureID, Object newValue) {
145 switch (featureID) {
146 case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION:
147 setExpression((Expression) newValue);
148 return;
149 }
150 super.eSet(featureID, newValue);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @Override
159 public void eUnset(int featureID) {
160 switch (featureID) {
161 case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION:
162 setExpression((Expression) null);
163 return;
164 }
165 super.eUnset(featureID);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public boolean eIsSet(int featureID) {
175 switch (featureID) {
176 case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION:
177 return expression != null;
178 }
179 return super.eIsSet(featureID);
180 }
181
182} //ExpressionArgumentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java
new file mode 100644
index 00000000..0b917b30
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java
@@ -0,0 +1,151 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.util.EObjectContainmentEList;
15import org.eclipse.emf.ecore.util.InternalEList;
16
17import org.eclipse.viatra.solver.language.solverLanguage.Expression;
18import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
19import org.eclipse.viatra.solver.language.solverLanguage.Variable;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Expression</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl#getExistsVariables <em>Exists Variables</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public abstract class ExpressionImpl extends StatementImpl implements Expression {
35 /**
36 * The cached value of the '{@link #getExistsVariables() <em>Exists Variables</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getExistsVariables()
40 * @generated
41 * @ordered
42 */
43 protected EList<Variable> existsVariables;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected ExpressionImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return SolverLanguagePackage.Literals.EXPRESSION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<Variable> getExistsVariables() {
70 if (existsVariables == null) {
71 existsVariables = new EObjectContainmentEList<Variable>(Variable.class, this,
72 SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES);
73 }
74 return existsVariables;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES:
86 return ((InternalEList<?>) getExistsVariables()).basicRemove(otherEnd, msgs);
87 }
88 return super.eInverseRemove(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES:
100 return getExistsVariables();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @SuppressWarnings("unchecked")
111 @Override
112 public void eSet(int featureID, Object newValue) {
113 switch (featureID) {
114 case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES:
115 getExistsVariables().clear();
116 getExistsVariables().addAll((Collection<? extends Variable>) newValue);
117 return;
118 }
119 super.eSet(featureID, newValue);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 @Override
128 public void eUnset(int featureID) {
129 switch (featureID) {
130 case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES:
131 getExistsVariables().clear();
132 return;
133 }
134 super.eUnset(featureID);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public boolean eIsSet(int featureID) {
144 switch (featureID) {
145 case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES:
146 return existsVariables != null && !existsVariables.isEmpty();
147 }
148 return super.eIsSet(featureID);
149 }
150
151} //ExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java
new file mode 100644
index 00000000..f3a34f73
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java
@@ -0,0 +1,227 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Extern Aggregation Operator Declaration</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl#getArgumentType <em>Argument Type</em>}</li>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl#getResultType <em>Result Type</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class ExternAggregationOperatorDeclarationImpl extends ExternDeclarationImpl
31 implements ExternAggregationOperatorDeclaration {
32 /**
33 * The cached value of the '{@link #getArgumentType() <em>Argument Type</em>}' reference.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getArgumentType()
37 * @generated
38 * @ordered
39 */
40 protected Symbol argumentType;
41
42 /**
43 * The cached value of the '{@link #getResultType() <em>Result Type</em>}' reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getResultType()
47 * @generated
48 * @ordered
49 */
50 protected Symbol resultType;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected ExternAggregationOperatorDeclarationImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public Symbol getArgumentType() {
77 if (argumentType != null && argumentType.eIsProxy()) {
78 InternalEObject oldArgumentType = (InternalEObject) argumentType;
79 argumentType = (Symbol) eResolveProxy(oldArgumentType);
80 if (argumentType != oldArgumentType) {
81 if (eNotificationRequired())
82 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
83 SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE,
84 oldArgumentType, argumentType));
85 }
86 }
87 return argumentType;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public Symbol basicGetArgumentType() {
96 return argumentType;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public void setArgumentType(Symbol newArgumentType) {
105 Symbol oldArgumentType = argumentType;
106 argumentType = newArgumentType;
107 if (eNotificationRequired())
108 eNotify(new ENotificationImpl(this, Notification.SET,
109 SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE, oldArgumentType,
110 argumentType));
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public Symbol getResultType() {
119 if (resultType != null && resultType.eIsProxy()) {
120 InternalEObject oldResultType = (InternalEObject) resultType;
121 resultType = (Symbol) eResolveProxy(oldResultType);
122 if (resultType != oldResultType) {
123 if (eNotificationRequired())
124 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
125 SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE, oldResultType,
126 resultType));
127 }
128 }
129 return resultType;
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 public Symbol basicGetResultType() {
138 return resultType;
139 }
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 public void setResultType(Symbol newResultType) {
147 Symbol oldResultType = resultType;
148 resultType = newResultType;
149 if (eNotificationRequired())
150 eNotify(new ENotificationImpl(this, Notification.SET,
151 SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE, oldResultType,
152 resultType));
153 }
154
155 /**
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 @Override
161 public Object eGet(int featureID, boolean resolve, boolean coreType) {
162 switch (featureID) {
163 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE:
164 if (resolve)
165 return getArgumentType();
166 return basicGetArgumentType();
167 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE:
168 if (resolve)
169 return getResultType();
170 return basicGetResultType();
171 }
172 return super.eGet(featureID, resolve, coreType);
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 @Override
181 public void eSet(int featureID, Object newValue) {
182 switch (featureID) {
183 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE:
184 setArgumentType((Symbol) newValue);
185 return;
186 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE:
187 setResultType((Symbol) newValue);
188 return;
189 }
190 super.eSet(featureID, newValue);
191 }
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 @Override
199 public void eUnset(int featureID) {
200 switch (featureID) {
201 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE:
202 setArgumentType((Symbol) null);
203 return;
204 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE:
205 setResultType((Symbol) null);
206 return;
207 }
208 super.eUnset(featureID);
209 }
210
211 /**
212 * <!-- begin-user-doc -->
213 * <!-- end-user-doc -->
214 * @generated
215 */
216 @Override
217 public boolean eIsSet(int featureID) {
218 switch (featureID) {
219 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE:
220 return argumentType != null;
221 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE:
222 return resultType != null;
223 }
224 return super.eIsSet(featureID);
225 }
226
227} //ExternAggregationOperatorDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java
new file mode 100644
index 00000000..f2411a6b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Extern Datatype Declaration</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ExternDatatypeDeclarationImpl extends ExternDeclarationImpl implements ExternDatatypeDeclaration {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected ExternDatatypeDeclarationImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.EXTERN_DATATYPE_DECLARATION;
35 }
36
37} //ExternDatatypeDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java
new file mode 100644
index 00000000..4086decd
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Extern Declaration</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl#getName <em>Name</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public abstract class ExternDeclarationImpl extends StatementImpl implements ExternDeclaration {
28 /**
29 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getName()
33 * @generated
34 * @ordered
35 */
36 protected static final String NAME_EDEFAULT = null;
37
38 /**
39 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getName()
43 * @generated
44 * @ordered
45 */
46 protected String name = NAME_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected ExternDeclarationImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.EXTERN_DECLARATION;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public String getName() {
73 return name;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setName(String newName) {
82 String oldName = name;
83 name = newName;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_DECLARATION__NAME,
86 oldName, name));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.EXTERN_DECLARATION__NAME:
98 return getName();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.EXTERN_DECLARATION__NAME:
112 setName((String) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.EXTERN_DECLARATION__NAME:
127 setName(NAME_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.EXTERN_DECLARATION__NAME:
142 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (name: ");
159 result.append(name);
160 result.append(')');
161 return result.toString();
162 }
163
164} //ExternDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java
new file mode 100644
index 00000000..83ec9f13
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java
@@ -0,0 +1,159 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Extern Function Declaration</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl#getResultType <em>Result Type</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class ExternFunctionDeclarationImpl extends ExternFunctorDeclarationImpl implements ExternFunctionDeclaration {
30 /**
31 * The cached value of the '{@link #getResultType() <em>Result Type</em>}' reference.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getResultType()
35 * @generated
36 * @ordered
37 */
38 protected Symbol resultType;
39
40 /**
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @generated
44 */
45 protected ExternFunctionDeclarationImpl() {
46 super();
47 }
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 @Override
55 protected EClass eStaticClass() {
56 return SolverLanguagePackage.Literals.EXTERN_FUNCTION_DECLARATION;
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 public Symbol getResultType() {
65 if (resultType != null && resultType.eIsProxy()) {
66 InternalEObject oldResultType = (InternalEObject) resultType;
67 resultType = (Symbol) eResolveProxy(oldResultType);
68 if (resultType != oldResultType) {
69 if (eNotificationRequired())
70 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
71 SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE, oldResultType, resultType));
72 }
73 }
74 return resultType;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public Symbol basicGetResultType() {
83 return resultType;
84 }
85
86 /**
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @generated
90 */
91 public void setResultType(Symbol newResultType) {
92 Symbol oldResultType = resultType;
93 resultType = newResultType;
94 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET,
96 SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE, oldResultType, resultType));
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 @Override
105 public Object eGet(int featureID, boolean resolve, boolean coreType) {
106 switch (featureID) {
107 case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE:
108 if (resolve)
109 return getResultType();
110 return basicGetResultType();
111 }
112 return super.eGet(featureID, resolve, coreType);
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 @Override
121 public void eSet(int featureID, Object newValue) {
122 switch (featureID) {
123 case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE:
124 setResultType((Symbol) newValue);
125 return;
126 }
127 super.eSet(featureID, newValue);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public void eUnset(int featureID) {
137 switch (featureID) {
138 case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE:
139 setResultType((Symbol) null);
140 return;
141 }
142 super.eUnset(featureID);
143 }
144
145 /**
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 */
150 @Override
151 public boolean eIsSet(int featureID) {
152 switch (featureID) {
153 case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE:
154 return resultType != null;
155 }
156 return super.eIsSet(featureID);
157 }
158
159} //ExternFunctionDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java
new file mode 100644
index 00000000..f3c58b99
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java
@@ -0,0 +1,184 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
14import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Extern Functor Declaration</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl#getArgumentList <em>Argument List</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public abstract class ExternFunctorDeclarationImpl extends ExternDeclarationImpl implements ExternFunctorDeclaration {
31 /**
32 * The cached value of the '{@link #getArgumentList() <em>Argument List</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getArgumentList()
36 * @generated
37 * @ordered
38 */
39 protected ArgumentList argumentList;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected ExternFunctorDeclarationImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return SolverLanguagePackage.Literals.EXTERN_FUNCTOR_DECLARATION;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public ArgumentList getArgumentList() {
66 return argumentList;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) {
75 ArgumentList oldArgumentList = argumentList;
76 argumentList = newArgumentList;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, oldArgumentList, newArgumentList);
80 if (msgs == null)
81 msgs = notification;
82 else
83 msgs.add(notification);
84 }
85 return msgs;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public void setArgumentList(ArgumentList newArgumentList) {
94 if (newArgumentList != argumentList) {
95 NotificationChain msgs = null;
96 if (argumentList != null)
97 msgs = ((InternalEObject) argumentList).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, null,
99 msgs);
100 if (newArgumentList != null)
101 msgs = ((InternalEObject) newArgumentList).eInverseAdd(this,
102 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, null,
103 msgs);
104 msgs = basicSetArgumentList(newArgumentList, msgs);
105 if (msgs != null)
106 msgs.dispatch();
107 } else if (eNotificationRequired())
108 eNotify(new ENotificationImpl(this, Notification.SET,
109 SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, newArgumentList, newArgumentList));
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 @Override
118 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
119 switch (featureID) {
120 case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST:
121 return basicSetArgumentList(null, msgs);
122 }
123 return super.eInverseRemove(otherEnd, featureID, msgs);
124 }
125
126 /**
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @generated
130 */
131 @Override
132 public Object eGet(int featureID, boolean resolve, boolean coreType) {
133 switch (featureID) {
134 case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST:
135 return getArgumentList();
136 }
137 return super.eGet(featureID, resolve, coreType);
138 }
139
140 /**
141 * <!-- begin-user-doc -->
142 * <!-- end-user-doc -->
143 * @generated
144 */
145 @Override
146 public void eSet(int featureID, Object newValue) {
147 switch (featureID) {
148 case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST:
149 setArgumentList((ArgumentList) newValue);
150 return;
151 }
152 super.eSet(featureID, newValue);
153 }
154
155 /**
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 @Override
161 public void eUnset(int featureID) {
162 switch (featureID) {
163 case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST:
164 setArgumentList((ArgumentList) null);
165 return;
166 }
167 super.eUnset(featureID);
168 }
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 @Override
176 public boolean eIsSet(int featureID) {
177 switch (featureID) {
178 case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST:
179 return argumentList != null;
180 }
181 return super.eIsSet(featureID);
182 }
183
184} //ExternFunctorDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java
new file mode 100644
index 00000000..fa6646bf
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java
@@ -0,0 +1,260 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration;
12import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Extern Predicate Declaration</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl#isError <em>Error</em>}</li>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl#isFunctional <em>Functional</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class ExternPredicateDeclarationImpl extends ExternFunctorDeclarationImpl implements ExternPredicateDeclaration {
30 /**
31 * The default value of the '{@link #isError() <em>Error</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #isError()
35 * @generated
36 * @ordered
37 */
38 protected static final boolean ERROR_EDEFAULT = false;
39
40 /**
41 * The cached value of the '{@link #isError() <em>Error</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #isError()
45 * @generated
46 * @ordered
47 */
48 protected boolean error = ERROR_EDEFAULT;
49
50 /**
51 * The default value of the '{@link #isFunctional() <em>Functional</em>}' attribute.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @see #isFunctional()
55 * @generated
56 * @ordered
57 */
58 protected static final boolean FUNCTIONAL_EDEFAULT = false;
59
60 /**
61 * The cached value of the '{@link #isFunctional() <em>Functional</em>}' attribute.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see #isFunctional()
65 * @generated
66 * @ordered
67 */
68 protected boolean functional = FUNCTIONAL_EDEFAULT;
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 protected ExternPredicateDeclarationImpl() {
76 super();
77 }
78
79 /**
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @generated
83 */
84 @Override
85 protected EClass eStaticClass() {
86 return SolverLanguagePackage.Literals.EXTERN_PREDICATE_DECLARATION;
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 public boolean isError() {
95 return error;
96 }
97
98 /**
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @generated
102 */
103 public void setError(boolean newError) {
104 boolean oldError = error;
105 error = newError;
106 if (eNotificationRequired())
107 eNotify(new ENotificationImpl(this, Notification.SET,
108 SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR, oldError, error));
109 }
110
111 /**
112 * <!-- begin-user-doc -->
113 * <!-- end-user-doc -->
114 * @generated
115 */
116 public boolean isFunctional() {
117 return functional;
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 public void setFunctional(boolean newFunctional) {
126 boolean oldFunctional = functional;
127 functional = newFunctional;
128 if (eNotificationRequired())
129 eNotify(new ENotificationImpl(this, Notification.SET,
130 SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL, oldFunctional, functional));
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public Object eGet(int featureID, boolean resolve, boolean coreType) {
140 switch (featureID) {
141 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR:
142 return isError();
143 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL:
144 return isFunctional();
145 }
146 return super.eGet(featureID, resolve, coreType);
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 @Override
155 public void eSet(int featureID, Object newValue) {
156 switch (featureID) {
157 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR:
158 setError((Boolean) newValue);
159 return;
160 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL:
161 setFunctional((Boolean) newValue);
162 return;
163 }
164 super.eSet(featureID, newValue);
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 @Override
173 public void eUnset(int featureID) {
174 switch (featureID) {
175 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR:
176 setError(ERROR_EDEFAULT);
177 return;
178 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL:
179 setFunctional(FUNCTIONAL_EDEFAULT);
180 return;
181 }
182 super.eUnset(featureID);
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 @Override
191 public boolean eIsSet(int featureID) {
192 switch (featureID) {
193 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR:
194 return error != ERROR_EDEFAULT;
195 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL:
196 return functional != FUNCTIONAL_EDEFAULT;
197 }
198 return super.eIsSet(featureID);
199 }
200
201 /**
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 @Override
207 public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
208 if (baseClass == InlinePredicateAttrributes.class) {
209 switch (derivedFeatureID) {
210 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR:
211 return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR;
212 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL:
213 return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL;
214 default:
215 return -1;
216 }
217 }
218 return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 @Override
227 public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
228 if (baseClass == InlinePredicateAttrributes.class) {
229 switch (baseFeatureID) {
230 case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR:
231 return SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR;
232 case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL:
233 return SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL;
234 default:
235 return -1;
236 }
237 }
238 return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
239 }
240
241 /**
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @generated
245 */
246 @Override
247 public String toString() {
248 if (eIsProxy())
249 return super.toString();
250
251 StringBuilder result = new StringBuilder(super.toString());
252 result.append(" (error: ");
253 result.append(error);
254 result.append(", functional: ");
255 result.append(functional);
256 result.append(')');
257 return result.toString();
258 }
259
260} //ExternPredicateDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java
new file mode 100644
index 00000000..20fc50b9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java
@@ -0,0 +1,488 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.Field;
15import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
18
19/**
20 * <!-- begin-user-doc -->
21 * An implementation of the model object '<em><b>Field</b></em>'.
22 * <!-- end-user-doc -->
23 * <p>
24 * The following features are implemented:
25 * </p>
26 * <ul>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#isContainment <em>Containment</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#isCrossReference <em>Cross Reference</em>}</li>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getOpposite <em>Opposite</em>}</li>
30 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getMultiplicity <em>Multiplicity</em>}</li>
31 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getType <em>Type</em>}</li>
32 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getName <em>Name</em>}</li>
33 * </ul>
34 *
35 * @generated
36 */
37public class FieldImpl extends MinimalEObjectImpl.Container implements Field {
38 /**
39 * The default value of the '{@link #isContainment() <em>Containment</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #isContainment()
43 * @generated
44 * @ordered
45 */
46 protected static final boolean CONTAINMENT_EDEFAULT = false;
47
48 /**
49 * The cached value of the '{@link #isContainment() <em>Containment</em>}' attribute.
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @see #isContainment()
53 * @generated
54 * @ordered
55 */
56 protected boolean containment = CONTAINMENT_EDEFAULT;
57
58 /**
59 * The default value of the '{@link #isCrossReference() <em>Cross Reference</em>}' attribute.
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @see #isCrossReference()
63 * @generated
64 * @ordered
65 */
66 protected static final boolean CROSS_REFERENCE_EDEFAULT = false;
67
68 /**
69 * The cached value of the '{@link #isCrossReference() <em>Cross Reference</em>}' attribute.
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @see #isCrossReference()
73 * @generated
74 * @ordered
75 */
76 protected boolean crossReference = CROSS_REFERENCE_EDEFAULT;
77
78 /**
79 * The cached value of the '{@link #getOpposite() <em>Opposite</em>}' reference.
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @see #getOpposite()
83 * @generated
84 * @ordered
85 */
86 protected Symbol opposite;
87
88 /**
89 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' containment reference.
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @see #getMultiplicity()
93 * @generated
94 * @ordered
95 */
96 protected Multiplicity multiplicity;
97
98 /**
99 * The cached value of the '{@link #getType() <em>Type</em>}' reference.
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @see #getType()
103 * @generated
104 * @ordered
105 */
106 protected Symbol type;
107
108 /**
109 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
110 * <!-- begin-user-doc -->
111 * <!-- end-user-doc -->
112 * @see #getName()
113 * @generated
114 * @ordered
115 */
116 protected static final String NAME_EDEFAULT = null;
117
118 /**
119 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @see #getName()
123 * @generated
124 * @ordered
125 */
126 protected String name = NAME_EDEFAULT;
127
128 /**
129 * <!-- begin-user-doc -->
130 * <!-- end-user-doc -->
131 * @generated
132 */
133 protected FieldImpl() {
134 super();
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 protected EClass eStaticClass() {
144 return SolverLanguagePackage.Literals.FIELD;
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 public boolean isContainment() {
153 return containment;
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 public void setContainment(boolean newContainment) {
162 boolean oldContainment = containment;
163 containment = newContainment;
164 if (eNotificationRequired())
165 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__CONTAINMENT,
166 oldContainment, containment));
167 }
168
169 /**
170 * <!-- begin-user-doc -->
171 * <!-- end-user-doc -->
172 * @generated
173 */
174 public boolean isCrossReference() {
175 return crossReference;
176 }
177
178 /**
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @generated
182 */
183 public void setCrossReference(boolean newCrossReference) {
184 boolean oldCrossReference = crossReference;
185 crossReference = newCrossReference;
186 if (eNotificationRequired())
187 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__CROSS_REFERENCE,
188 oldCrossReference, crossReference));
189 }
190
191 /**
192 * <!-- begin-user-doc -->
193 * <!-- end-user-doc -->
194 * @generated
195 */
196 public Symbol getOpposite() {
197 if (opposite != null && opposite.eIsProxy()) {
198 InternalEObject oldOpposite = (InternalEObject) opposite;
199 opposite = (Symbol) eResolveProxy(oldOpposite);
200 if (opposite != oldOpposite) {
201 if (eNotificationRequired())
202 eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.FIELD__OPPOSITE,
203 oldOpposite, opposite));
204 }
205 }
206 return opposite;
207 }
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 public Symbol basicGetOpposite() {
215 return opposite;
216 }
217
218 /**
219 * <!-- begin-user-doc -->
220 * <!-- end-user-doc -->
221 * @generated
222 */
223 public void setOpposite(Symbol newOpposite) {
224 Symbol oldOpposite = opposite;
225 opposite = newOpposite;
226 if (eNotificationRequired())
227 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__OPPOSITE, oldOpposite,
228 opposite));
229 }
230
231 /**
232 * <!-- begin-user-doc -->
233 * <!-- end-user-doc -->
234 * @generated
235 */
236 public Multiplicity getMultiplicity() {
237 return multiplicity;
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 public NotificationChain basicSetMultiplicity(Multiplicity newMultiplicity, NotificationChain msgs) {
246 Multiplicity oldMultiplicity = multiplicity;
247 multiplicity = newMultiplicity;
248 if (eNotificationRequired()) {
249 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
250 SolverLanguagePackage.FIELD__MULTIPLICITY, oldMultiplicity, newMultiplicity);
251 if (msgs == null)
252 msgs = notification;
253 else
254 msgs.add(notification);
255 }
256 return msgs;
257 }
258
259 /**
260 * <!-- begin-user-doc -->
261 * <!-- end-user-doc -->
262 * @generated
263 */
264 public void setMultiplicity(Multiplicity newMultiplicity) {
265 if (newMultiplicity != multiplicity) {
266 NotificationChain msgs = null;
267 if (multiplicity != null)
268 msgs = ((InternalEObject) multiplicity).eInverseRemove(this,
269 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD__MULTIPLICITY, null, msgs);
270 if (newMultiplicity != null)
271 msgs = ((InternalEObject) newMultiplicity).eInverseAdd(this,
272 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD__MULTIPLICITY, null, msgs);
273 msgs = basicSetMultiplicity(newMultiplicity, msgs);
274 if (msgs != null)
275 msgs.dispatch();
276 } else if (eNotificationRequired())
277 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__MULTIPLICITY,
278 newMultiplicity, newMultiplicity));
279 }
280
281 /**
282 * <!-- begin-user-doc -->
283 * <!-- end-user-doc -->
284 * @generated
285 */
286 public Symbol getType() {
287 if (type != null && type.eIsProxy()) {
288 InternalEObject oldType = (InternalEObject) type;
289 type = (Symbol) eResolveProxy(oldType);
290 if (type != oldType) {
291 if (eNotificationRequired())
292 eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.FIELD__TYPE,
293 oldType, type));
294 }
295 }
296 return type;
297 }
298
299 /**
300 * <!-- begin-user-doc -->
301 * <!-- end-user-doc -->
302 * @generated
303 */
304 public Symbol basicGetType() {
305 return type;
306 }
307
308 /**
309 * <!-- begin-user-doc -->
310 * <!-- end-user-doc -->
311 * @generated
312 */
313 public void setType(Symbol newType) {
314 Symbol oldType = type;
315 type = newType;
316 if (eNotificationRequired())
317 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__TYPE, oldType, type));
318 }
319
320 /**
321 * <!-- begin-user-doc -->
322 * <!-- end-user-doc -->
323 * @generated
324 */
325 public String getName() {
326 return name;
327 }
328
329 /**
330 * <!-- begin-user-doc -->
331 * <!-- end-user-doc -->
332 * @generated
333 */
334 public void setName(String newName) {
335 String oldName = name;
336 name = newName;
337 if (eNotificationRequired())
338 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__NAME, oldName, name));
339 }
340
341 /**
342 * <!-- begin-user-doc -->
343 * <!-- end-user-doc -->
344 * @generated
345 */
346 @Override
347 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
348 switch (featureID) {
349 case SolverLanguagePackage.FIELD__MULTIPLICITY:
350 return basicSetMultiplicity(null, msgs);
351 }
352 return super.eInverseRemove(otherEnd, featureID, msgs);
353 }
354
355 /**
356 * <!-- begin-user-doc -->
357 * <!-- end-user-doc -->
358 * @generated
359 */
360 @Override
361 public Object eGet(int featureID, boolean resolve, boolean coreType) {
362 switch (featureID) {
363 case SolverLanguagePackage.FIELD__CONTAINMENT:
364 return isContainment();
365 case SolverLanguagePackage.FIELD__CROSS_REFERENCE:
366 return isCrossReference();
367 case SolverLanguagePackage.FIELD__OPPOSITE:
368 if (resolve)
369 return getOpposite();
370 return basicGetOpposite();
371 case SolverLanguagePackage.FIELD__MULTIPLICITY:
372 return getMultiplicity();
373 case SolverLanguagePackage.FIELD__TYPE:
374 if (resolve)
375 return getType();
376 return basicGetType();
377 case SolverLanguagePackage.FIELD__NAME:
378 return getName();
379 }
380 return super.eGet(featureID, resolve, coreType);
381 }
382
383 /**
384 * <!-- begin-user-doc -->
385 * <!-- end-user-doc -->
386 * @generated
387 */
388 @Override
389 public void eSet(int featureID, Object newValue) {
390 switch (featureID) {
391 case SolverLanguagePackage.FIELD__CONTAINMENT:
392 setContainment((Boolean) newValue);
393 return;
394 case SolverLanguagePackage.FIELD__CROSS_REFERENCE:
395 setCrossReference((Boolean) newValue);
396 return;
397 case SolverLanguagePackage.FIELD__OPPOSITE:
398 setOpposite((Symbol) newValue);
399 return;
400 case SolverLanguagePackage.FIELD__MULTIPLICITY:
401 setMultiplicity((Multiplicity) newValue);
402 return;
403 case SolverLanguagePackage.FIELD__TYPE:
404 setType((Symbol) newValue);
405 return;
406 case SolverLanguagePackage.FIELD__NAME:
407 setName((String) newValue);
408 return;
409 }
410 super.eSet(featureID, newValue);
411 }
412
413 /**
414 * <!-- begin-user-doc -->
415 * <!-- end-user-doc -->
416 * @generated
417 */
418 @Override
419 public void eUnset(int featureID) {
420 switch (featureID) {
421 case SolverLanguagePackage.FIELD__CONTAINMENT:
422 setContainment(CONTAINMENT_EDEFAULT);
423 return;
424 case SolverLanguagePackage.FIELD__CROSS_REFERENCE:
425 setCrossReference(CROSS_REFERENCE_EDEFAULT);
426 return;
427 case SolverLanguagePackage.FIELD__OPPOSITE:
428 setOpposite((Symbol) null);
429 return;
430 case SolverLanguagePackage.FIELD__MULTIPLICITY:
431 setMultiplicity((Multiplicity) null);
432 return;
433 case SolverLanguagePackage.FIELD__TYPE:
434 setType((Symbol) null);
435 return;
436 case SolverLanguagePackage.FIELD__NAME:
437 setName(NAME_EDEFAULT);
438 return;
439 }
440 super.eUnset(featureID);
441 }
442
443 /**
444 * <!-- begin-user-doc -->
445 * <!-- end-user-doc -->
446 * @generated
447 */
448 @Override
449 public boolean eIsSet(int featureID) {
450 switch (featureID) {
451 case SolverLanguagePackage.FIELD__CONTAINMENT:
452 return containment != CONTAINMENT_EDEFAULT;
453 case SolverLanguagePackage.FIELD__CROSS_REFERENCE:
454 return crossReference != CROSS_REFERENCE_EDEFAULT;
455 case SolverLanguagePackage.FIELD__OPPOSITE:
456 return opposite != null;
457 case SolverLanguagePackage.FIELD__MULTIPLICITY:
458 return multiplicity != null;
459 case SolverLanguagePackage.FIELD__TYPE:
460 return type != null;
461 case SolverLanguagePackage.FIELD__NAME:
462 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
463 }
464 return super.eIsSet(featureID);
465 }
466
467 /**
468 * <!-- begin-user-doc -->
469 * <!-- end-user-doc -->
470 * @generated
471 */
472 @Override
473 public String toString() {
474 if (eIsProxy())
475 return super.toString();
476
477 StringBuilder result = new StringBuilder(super.toString());
478 result.append(" (containment: ");
479 result.append(containment);
480 result.append(", crossReference: ");
481 result.append(crossReference);
482 result.append(", name: ");
483 result.append(name);
484 result.append(')');
485 return result.toString();
486 }
487
488} //FieldImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java
new file mode 100644
index 00000000..0007f67f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java
@@ -0,0 +1,182 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Expression;
14import org.eclipse.viatra.solver.language.solverLanguage.Forall;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Forall</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl#getBody <em>Body</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class ForallImpl extends AggregateExpressionImpl implements Forall {
31 /**
32 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getBody()
36 * @generated
37 * @ordered
38 */
39 protected Expression body;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected ForallImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return SolverLanguagePackage.Literals.FORALL;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public Expression getBody() {
66 return body;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
75 Expression oldBody = body;
76 body = newBody;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 SolverLanguagePackage.FORALL__BODY, oldBody, newBody);
80 if (msgs == null)
81 msgs = notification;
82 else
83 msgs.add(notification);
84 }
85 return msgs;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public void setBody(Expression newBody) {
94 if (newBody != body) {
95 NotificationChain msgs = null;
96 if (body != null)
97 msgs = ((InternalEObject) body).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FORALL__BODY, null, msgs);
99 if (newBody != null)
100 msgs = ((InternalEObject) newBody).eInverseAdd(this,
101 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FORALL__BODY, null, msgs);
102 msgs = basicSetBody(newBody, msgs);
103 if (msgs != null)
104 msgs.dispatch();
105 } else if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FORALL__BODY, newBody,
107 newBody));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
117 switch (featureID) {
118 case SolverLanguagePackage.FORALL__BODY:
119 return basicSetBody(null, msgs);
120 }
121 return super.eInverseRemove(otherEnd, featureID, msgs);
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @Override
130 public Object eGet(int featureID, boolean resolve, boolean coreType) {
131 switch (featureID) {
132 case SolverLanguagePackage.FORALL__BODY:
133 return getBody();
134 }
135 return super.eGet(featureID, resolve, coreType);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public void eSet(int featureID, Object newValue) {
145 switch (featureID) {
146 case SolverLanguagePackage.FORALL__BODY:
147 setBody((Expression) newValue);
148 return;
149 }
150 super.eSet(featureID, newValue);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @Override
159 public void eUnset(int featureID) {
160 switch (featureID) {
161 case SolverLanguagePackage.FORALL__BODY:
162 setBody((Expression) null);
163 return;
164 }
165 super.eUnset(featureID);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public boolean eIsSet(int featureID) {
175 switch (featureID) {
176 case SolverLanguagePackage.FORALL__BODY:
177 return body != null;
178 }
179 return super.eIsSet(featureID);
180 }
181
182} //ForallImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java
new file mode 100644
index 00000000..9fa59d1c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java
@@ -0,0 +1,159 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Function Definition</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl#getResultType <em>Result Type</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class FunctionDefinitionImpl extends FunctorDefinitonImpl implements FunctionDefinition {
30 /**
31 * The cached value of the '{@link #getResultType() <em>Result Type</em>}' reference.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getResultType()
35 * @generated
36 * @ordered
37 */
38 protected Symbol resultType;
39
40 /**
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @generated
44 */
45 protected FunctionDefinitionImpl() {
46 super();
47 }
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 @Override
55 protected EClass eStaticClass() {
56 return SolverLanguagePackage.Literals.FUNCTION_DEFINITION;
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 public Symbol getResultType() {
65 if (resultType != null && resultType.eIsProxy()) {
66 InternalEObject oldResultType = (InternalEObject) resultType;
67 resultType = (Symbol) eResolveProxy(oldResultType);
68 if (resultType != oldResultType) {
69 if (eNotificationRequired())
70 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
71 SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE, oldResultType, resultType));
72 }
73 }
74 return resultType;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public Symbol basicGetResultType() {
83 return resultType;
84 }
85
86 /**
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @generated
90 */
91 public void setResultType(Symbol newResultType) {
92 Symbol oldResultType = resultType;
93 resultType = newResultType;
94 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET,
96 SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE, oldResultType, resultType));
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 @Override
105 public Object eGet(int featureID, boolean resolve, boolean coreType) {
106 switch (featureID) {
107 case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE:
108 if (resolve)
109 return getResultType();
110 return basicGetResultType();
111 }
112 return super.eGet(featureID, resolve, coreType);
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 @Override
121 public void eSet(int featureID, Object newValue) {
122 switch (featureID) {
123 case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE:
124 setResultType((Symbol) newValue);
125 return;
126 }
127 super.eSet(featureID, newValue);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public void eUnset(int featureID) {
137 switch (featureID) {
138 case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE:
139 setResultType((Symbol) null);
140 return;
141 }
142 super.eUnset(featureID);
143 }
144
145 /**
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 */
150 @Override
151 public boolean eIsSet(int featureID) {
152 switch (featureID) {
153 case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE:
154 return resultType != null;
155 }
156 return super.eIsSet(featureID);
157 }
158
159} //FunctionDefinitionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java
new file mode 100644
index 00000000..2a3e7e8b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java
@@ -0,0 +1,159 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.Datatype;
13import org.eclipse.viatra.solver.language.solverLanguage.Function;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Function</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl#getResultType <em>Result Type</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public abstract class FunctionImpl extends FunctorImpl implements Function {
30 /**
31 * The cached value of the '{@link #getResultType() <em>Result Type</em>}' reference.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getResultType()
35 * @generated
36 * @ordered
37 */
38 protected Datatype resultType;
39
40 /**
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @generated
44 */
45 protected FunctionImpl() {
46 super();
47 }
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 @Override
55 protected EClass eStaticClass() {
56 return SolverLanguagePackage.Literals.FUNCTION;
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 public Datatype getResultType() {
65 if (resultType != null && resultType.eIsProxy()) {
66 InternalEObject oldResultType = (InternalEObject) resultType;
67 resultType = (Datatype) eResolveProxy(oldResultType);
68 if (resultType != oldResultType) {
69 if (eNotificationRequired())
70 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
71 SolverLanguagePackage.FUNCTION__RESULT_TYPE, oldResultType, resultType));
72 }
73 }
74 return resultType;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public Datatype basicGetResultType() {
83 return resultType;
84 }
85
86 /**
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @generated
90 */
91 public void setResultType(Datatype newResultType) {
92 Datatype oldResultType = resultType;
93 resultType = newResultType;
94 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FUNCTION__RESULT_TYPE,
96 oldResultType, resultType));
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 @Override
105 public Object eGet(int featureID, boolean resolve, boolean coreType) {
106 switch (featureID) {
107 case SolverLanguagePackage.FUNCTION__RESULT_TYPE:
108 if (resolve)
109 return getResultType();
110 return basicGetResultType();
111 }
112 return super.eGet(featureID, resolve, coreType);
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 @Override
121 public void eSet(int featureID, Object newValue) {
122 switch (featureID) {
123 case SolverLanguagePackage.FUNCTION__RESULT_TYPE:
124 setResultType((Datatype) newValue);
125 return;
126 }
127 super.eSet(featureID, newValue);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public void eUnset(int featureID) {
137 switch (featureID) {
138 case SolverLanguagePackage.FUNCTION__RESULT_TYPE:
139 setResultType((Datatype) null);
140 return;
141 }
142 super.eUnset(featureID);
143 }
144
145 /**
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 */
150 @Override
151 public boolean eIsSet(int featureID) {
152 switch (featureID) {
153 case SolverLanguagePackage.FUNCTION__RESULT_TYPE:
154 return resultType != null;
155 }
156 return super.eIsSet(featureID);
157 }
158
159} //FunctionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java
new file mode 100644
index 00000000..0dff447f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java
@@ -0,0 +1,255 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Expression;
14import org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Functor Definiton</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl#getHead <em>Head</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl#getBody <em>Body</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public abstract class FunctorDefinitonImpl extends StatementImpl implements FunctorDefiniton {
32 /**
33 * The cached value of the '{@link #getHead() <em>Head</em>}' containment reference.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getHead()
37 * @generated
38 * @ordered
39 */
40 protected Expression head;
41
42 /**
43 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getBody()
47 * @generated
48 * @ordered
49 */
50 protected Expression body;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected FunctorDefinitonImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return SolverLanguagePackage.Literals.FUNCTOR_DEFINITON;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public Expression getHead() {
77 return head;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public NotificationChain basicSetHead(Expression newHead, NotificationChain msgs) {
86 Expression oldHead = head;
87 head = newHead;
88 if (eNotificationRequired()) {
89 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
90 SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, oldHead, newHead);
91 if (msgs == null)
92 msgs = notification;
93 else
94 msgs.add(notification);
95 }
96 return msgs;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public void setHead(Expression newHead) {
105 if (newHead != head) {
106 NotificationChain msgs = null;
107 if (head != null)
108 msgs = ((InternalEObject) head).eInverseRemove(this,
109 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, null, msgs);
110 if (newHead != null)
111 msgs = ((InternalEObject) newHead).eInverseAdd(this,
112 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, null, msgs);
113 msgs = basicSetHead(newHead, msgs);
114 if (msgs != null)
115 msgs.dispatch();
116 } else if (eNotificationRequired())
117 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD,
118 newHead, newHead));
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public Expression getBody() {
127 return body;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
136 Expression oldBody = body;
137 body = newBody;
138 if (eNotificationRequired()) {
139 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
140 SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, oldBody, newBody);
141 if (msgs == null)
142 msgs = notification;
143 else
144 msgs.add(notification);
145 }
146 return msgs;
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 public void setBody(Expression newBody) {
155 if (newBody != body) {
156 NotificationChain msgs = null;
157 if (body != null)
158 msgs = ((InternalEObject) body).eInverseRemove(this,
159 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, null, msgs);
160 if (newBody != null)
161 msgs = ((InternalEObject) newBody).eInverseAdd(this,
162 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, null, msgs);
163 msgs = basicSetBody(newBody, msgs);
164 if (msgs != null)
165 msgs.dispatch();
166 } else if (eNotificationRequired())
167 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FUNCTOR_DEFINITON__BODY,
168 newBody, newBody));
169 }
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 @Override
177 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
178 switch (featureID) {
179 case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD:
180 return basicSetHead(null, msgs);
181 case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY:
182 return basicSetBody(null, msgs);
183 }
184 return super.eInverseRemove(otherEnd, featureID, msgs);
185 }
186
187 /**
188 * <!-- begin-user-doc -->
189 * <!-- end-user-doc -->
190 * @generated
191 */
192 @Override
193 public Object eGet(int featureID, boolean resolve, boolean coreType) {
194 switch (featureID) {
195 case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD:
196 return getHead();
197 case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY:
198 return getBody();
199 }
200 return super.eGet(featureID, resolve, coreType);
201 }
202
203 /**
204 * <!-- begin-user-doc -->
205 * <!-- end-user-doc -->
206 * @generated
207 */
208 @Override
209 public void eSet(int featureID, Object newValue) {
210 switch (featureID) {
211 case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD:
212 setHead((Expression) newValue);
213 return;
214 case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY:
215 setBody((Expression) newValue);
216 return;
217 }
218 super.eSet(featureID, newValue);
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 @Override
227 public void eUnset(int featureID) {
228 switch (featureID) {
229 case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD:
230 setHead((Expression) null);
231 return;
232 case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY:
233 setBody((Expression) null);
234 return;
235 }
236 super.eUnset(featureID);
237 }
238
239 /**
240 * <!-- begin-user-doc -->
241 * <!-- end-user-doc -->
242 * @generated
243 */
244 @Override
245 public boolean eIsSet(int featureID) {
246 switch (featureID) {
247 case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD:
248 return head != null;
249 case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY:
250 return body != null;
251 }
252 return super.eIsSet(featureID);
253 }
254
255} //FunctorDefinitonImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java
new file mode 100644
index 00000000..f0003552
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java
@@ -0,0 +1,151 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.util.EObjectContainmentEList;
15import org.eclipse.emf.ecore.util.InternalEList;
16
17import org.eclipse.viatra.solver.language.solverLanguage.Functor;
18import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
19import org.eclipse.viatra.solver.language.solverLanguage.Variable;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Functor</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl#getParameters <em>Parameters</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public abstract class FunctorImpl extends SymbolImpl implements Functor {
35 /**
36 * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getParameters()
40 * @generated
41 * @ordered
42 */
43 protected EList<Variable> parameters;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected FunctorImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return SolverLanguagePackage.Literals.FUNCTOR;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<Variable> getParameters() {
70 if (parameters == null) {
71 parameters = new EObjectContainmentEList<Variable>(Variable.class, this,
72 SolverLanguagePackage.FUNCTOR__PARAMETERS);
73 }
74 return parameters;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case SolverLanguagePackage.FUNCTOR__PARAMETERS:
86 return ((InternalEList<?>) getParameters()).basicRemove(otherEnd, msgs);
87 }
88 return super.eInverseRemove(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case SolverLanguagePackage.FUNCTOR__PARAMETERS:
100 return getParameters();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @SuppressWarnings("unchecked")
111 @Override
112 public void eSet(int featureID, Object newValue) {
113 switch (featureID) {
114 case SolverLanguagePackage.FUNCTOR__PARAMETERS:
115 getParameters().clear();
116 getParameters().addAll((Collection<? extends Variable>) newValue);
117 return;
118 }
119 super.eSet(featureID, newValue);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 @Override
128 public void eUnset(int featureID) {
129 switch (featureID) {
130 case SolverLanguagePackage.FUNCTOR__PARAMETERS:
131 getParameters().clear();
132 return;
133 }
134 super.eUnset(featureID);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public boolean eIsSet(int featureID) {
144 switch (featureID) {
145 case SolverLanguagePackage.FUNCTOR__PARAMETERS:
146 return parameters != null && !parameters.isEmpty();
147 }
148 return super.eIsSet(featureID);
149 }
150
151} //FunctorImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java
new file mode 100644
index 00000000..5d37e837
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java
@@ -0,0 +1,165 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.Import;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Import</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl#getAlias <em>Alias</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class ImportImpl extends MinimalEObjectImpl.Container implements Import {
29 /**
30 * The default value of the '{@link #getAlias() <em>Alias</em>}' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getAlias()
34 * @generated
35 * @ordered
36 */
37 protected static final String ALIAS_EDEFAULT = null;
38
39 /**
40 * The cached value of the '{@link #getAlias() <em>Alias</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getAlias()
44 * @generated
45 * @ordered
46 */
47 protected String alias = ALIAS_EDEFAULT;
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 protected ImportImpl() {
55 super();
56 }
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 @Override
64 protected EClass eStaticClass() {
65 return SolverLanguagePackage.Literals.IMPORT;
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 public String getAlias() {
74 return alias;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public void setAlias(String newAlias) {
83 String oldAlias = alias;
84 alias = newAlias;
85 if (eNotificationRequired())
86 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IMPORT__ALIAS, oldAlias,
87 alias));
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 public Object eGet(int featureID, boolean resolve, boolean coreType) {
97 switch (featureID) {
98 case SolverLanguagePackage.IMPORT__ALIAS:
99 return getAlias();
100 }
101 return super.eGet(featureID, resolve, coreType);
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @Override
110 public void eSet(int featureID, Object newValue) {
111 switch (featureID) {
112 case SolverLanguagePackage.IMPORT__ALIAS:
113 setAlias((String) newValue);
114 return;
115 }
116 super.eSet(featureID, newValue);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public void eUnset(int featureID) {
126 switch (featureID) {
127 case SolverLanguagePackage.IMPORT__ALIAS:
128 setAlias(ALIAS_EDEFAULT);
129 return;
130 }
131 super.eUnset(featureID);
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 @Override
140 public boolean eIsSet(int featureID) {
141 switch (featureID) {
142 case SolverLanguagePackage.IMPORT__ALIAS:
143 return ALIAS_EDEFAULT == null ? alias != null : !ALIAS_EDEFAULT.equals(alias);
144 }
145 return super.eIsSet(featureID);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public String toString() {
155 if (eIsProxy())
156 return super.toString();
157
158 StringBuilder result = new StringBuilder(super.toString());
159 result.append(" (alias: ");
160 result.append(alias);
161 result.append(')');
162 return result.toString();
163 }
164
165} //ImportImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java
new file mode 100644
index 00000000..ab6025ff
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Infinity Literal</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class InfinityLiteralImpl extends LiteralImpl implements InfinityLiteral {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected InfinityLiteralImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.INFINITY_LITERAL;
35 }
36
37} //InfinityLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java
new file mode 100644
index 00000000..0e247f42
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.IntLiteral;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Int Literal</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl#getValue <em>Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class IntLiteralImpl extends LiteralImpl implements IntLiteral {
28 /**
29 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getValue()
33 * @generated
34 * @ordered
35 */
36 protected static final int VALUE_EDEFAULT = 0;
37
38 /**
39 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getValue()
43 * @generated
44 * @ordered
45 */
46 protected int value = VALUE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected IntLiteralImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.INT_LITERAL;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public int getValue() {
73 return value;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setValue(int newValue) {
82 int oldValue = value;
83 value = newValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INT_LITERAL__VALUE, oldValue,
86 value));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.INT_LITERAL__VALUE:
98 return getValue();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.INT_LITERAL__VALUE:
112 setValue((Integer) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.INT_LITERAL__VALUE:
127 setValue(VALUE_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.INT_LITERAL__VALUE:
142 return value != VALUE_EDEFAULT;
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (value: ");
159 result.append(value);
160 result.append(')');
161 return result.toString();
162 }
163
164} //IntLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java
new file mode 100644
index 00000000..d599db6d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java
@@ -0,0 +1,255 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Expression;
14import org.eclipse.viatra.solver.language.solverLanguage.Interval;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Interval</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl#getLowerBound <em>Lower Bound</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl#getUpperBound <em>Upper Bound</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class IntervalImpl extends ExpressionImpl implements Interval {
32 /**
33 * The cached value of the '{@link #getLowerBound() <em>Lower Bound</em>}' containment reference.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #getLowerBound()
37 * @generated
38 * @ordered
39 */
40 protected Expression lowerBound;
41
42 /**
43 * The cached value of the '{@link #getUpperBound() <em>Upper Bound</em>}' containment reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getUpperBound()
47 * @generated
48 * @ordered
49 */
50 protected Expression upperBound;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected IntervalImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return SolverLanguagePackage.Literals.INTERVAL;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public Expression getLowerBound() {
77 return lowerBound;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public NotificationChain basicSetLowerBound(Expression newLowerBound, NotificationChain msgs) {
86 Expression oldLowerBound = lowerBound;
87 lowerBound = newLowerBound;
88 if (eNotificationRequired()) {
89 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
90 SolverLanguagePackage.INTERVAL__LOWER_BOUND, oldLowerBound, newLowerBound);
91 if (msgs == null)
92 msgs = notification;
93 else
94 msgs.add(notification);
95 }
96 return msgs;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public void setLowerBound(Expression newLowerBound) {
105 if (newLowerBound != lowerBound) {
106 NotificationChain msgs = null;
107 if (lowerBound != null)
108 msgs = ((InternalEObject) lowerBound).eInverseRemove(this,
109 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__LOWER_BOUND, null, msgs);
110 if (newLowerBound != null)
111 msgs = ((InternalEObject) newLowerBound).eInverseAdd(this,
112 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__LOWER_BOUND, null, msgs);
113 msgs = basicSetLowerBound(newLowerBound, msgs);
114 if (msgs != null)
115 msgs.dispatch();
116 } else if (eNotificationRequired())
117 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__LOWER_BOUND,
118 newLowerBound, newLowerBound));
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public Expression getUpperBound() {
127 return upperBound;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public NotificationChain basicSetUpperBound(Expression newUpperBound, NotificationChain msgs) {
136 Expression oldUpperBound = upperBound;
137 upperBound = newUpperBound;
138 if (eNotificationRequired()) {
139 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
140 SolverLanguagePackage.INTERVAL__UPPER_BOUND, oldUpperBound, newUpperBound);
141 if (msgs == null)
142 msgs = notification;
143 else
144 msgs.add(notification);
145 }
146 return msgs;
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 public void setUpperBound(Expression newUpperBound) {
155 if (newUpperBound != upperBound) {
156 NotificationChain msgs = null;
157 if (upperBound != null)
158 msgs = ((InternalEObject) upperBound).eInverseRemove(this,
159 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__UPPER_BOUND, null, msgs);
160 if (newUpperBound != null)
161 msgs = ((InternalEObject) newUpperBound).eInverseAdd(this,
162 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__UPPER_BOUND, null, msgs);
163 msgs = basicSetUpperBound(newUpperBound, msgs);
164 if (msgs != null)
165 msgs.dispatch();
166 } else if (eNotificationRequired())
167 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__UPPER_BOUND,
168 newUpperBound, newUpperBound));
169 }
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 @Override
177 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
178 switch (featureID) {
179 case SolverLanguagePackage.INTERVAL__LOWER_BOUND:
180 return basicSetLowerBound(null, msgs);
181 case SolverLanguagePackage.INTERVAL__UPPER_BOUND:
182 return basicSetUpperBound(null, msgs);
183 }
184 return super.eInverseRemove(otherEnd, featureID, msgs);
185 }
186
187 /**
188 * <!-- begin-user-doc -->
189 * <!-- end-user-doc -->
190 * @generated
191 */
192 @Override
193 public Object eGet(int featureID, boolean resolve, boolean coreType) {
194 switch (featureID) {
195 case SolverLanguagePackage.INTERVAL__LOWER_BOUND:
196 return getLowerBound();
197 case SolverLanguagePackage.INTERVAL__UPPER_BOUND:
198 return getUpperBound();
199 }
200 return super.eGet(featureID, resolve, coreType);
201 }
202
203 /**
204 * <!-- begin-user-doc -->
205 * <!-- end-user-doc -->
206 * @generated
207 */
208 @Override
209 public void eSet(int featureID, Object newValue) {
210 switch (featureID) {
211 case SolverLanguagePackage.INTERVAL__LOWER_BOUND:
212 setLowerBound((Expression) newValue);
213 return;
214 case SolverLanguagePackage.INTERVAL__UPPER_BOUND:
215 setUpperBound((Expression) newValue);
216 return;
217 }
218 super.eSet(featureID, newValue);
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 @Override
227 public void eUnset(int featureID) {
228 switch (featureID) {
229 case SolverLanguagePackage.INTERVAL__LOWER_BOUND:
230 setLowerBound((Expression) null);
231 return;
232 case SolverLanguagePackage.INTERVAL__UPPER_BOUND:
233 setUpperBound((Expression) null);
234 return;
235 }
236 super.eUnset(featureID);
237 }
238
239 /**
240 * <!-- begin-user-doc -->
241 * <!-- end-user-doc -->
242 * @generated
243 */
244 @Override
245 public boolean eIsSet(int featureID) {
246 switch (featureID) {
247 case SolverLanguagePackage.INTERVAL__LOWER_BOUND:
248 return lowerBound != null;
249 case SolverLanguagePackage.INTERVAL__UPPER_BOUND:
250 return upperBound != null;
251 }
252 return super.eIsSet(featureID);
253 }
254
255} //IntervalImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java
new file mode 100644
index 00000000..1f724c55
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java
@@ -0,0 +1,391 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
13
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.LetBinding;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
18import org.eclipse.viatra.solver.language.solverLanguage.Variable;
19
20/**
21 * <!-- begin-user-doc -->
22 * An implementation of the model object '<em><b>Let Binding</b></em>'.
23 * <!-- end-user-doc -->
24 * <p>
25 * The following features are implemented:
26 * </p>
27 * <ul>
28 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getValue <em>Value</em>}</li>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getVariable <em>Variable</em>}</li>
30 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getName <em>Name</em>}</li>
31 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getType <em>Type</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class LetBindingImpl extends MinimalEObjectImpl.Container implements LetBinding {
37 /**
38 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getValue()
42 * @generated
43 * @ordered
44 */
45 protected Expression value;
46
47 /**
48 * The cached value of the '{@link #getVariable() <em>Variable</em>}' containment reference.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @see #getVariable()
52 * @generated
53 * @ordered
54 */
55 protected Variable variable;
56
57 /**
58 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @see #getName()
62 * @generated
63 * @ordered
64 */
65 protected static final String NAME_EDEFAULT = null;
66
67 /**
68 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @see #getName()
72 * @generated
73 * @ordered
74 */
75 protected String name = NAME_EDEFAULT;
76
77 /**
78 * The cached value of the '{@link #getType() <em>Type</em>}' reference.
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @see #getType()
82 * @generated
83 * @ordered
84 */
85 protected Symbol type;
86
87 /**
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @generated
91 */
92 protected LetBindingImpl() {
93 super();
94 }
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 @Override
102 protected EClass eStaticClass() {
103 return SolverLanguagePackage.Literals.LET_BINDING;
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 public Expression getValue() {
112 return value;
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) {
121 Expression oldValue = value;
122 value = newValue;
123 if (eNotificationRequired()) {
124 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
125 SolverLanguagePackage.LET_BINDING__VALUE, oldValue, newValue);
126 if (msgs == null)
127 msgs = notification;
128 else
129 msgs.add(notification);
130 }
131 return msgs;
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 public void setValue(Expression newValue) {
140 if (newValue != value) {
141 NotificationChain msgs = null;
142 if (value != null)
143 msgs = ((InternalEObject) value).eInverseRemove(this,
144 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VALUE, null, msgs);
145 if (newValue != null)
146 msgs = ((InternalEObject) newValue).eInverseAdd(this,
147 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VALUE, null, msgs);
148 msgs = basicSetValue(newValue, msgs);
149 if (msgs != null)
150 msgs.dispatch();
151 } else if (eNotificationRequired())
152 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VALUE, newValue,
153 newValue));
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 public Variable getVariable() {
162 return variable;
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 public NotificationChain basicSetVariable(Variable newVariable, NotificationChain msgs) {
171 Variable oldVariable = variable;
172 variable = newVariable;
173 if (eNotificationRequired()) {
174 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
175 SolverLanguagePackage.LET_BINDING__VARIABLE, oldVariable, newVariable);
176 if (msgs == null)
177 msgs = notification;
178 else
179 msgs.add(notification);
180 }
181 return msgs;
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 public void setVariable(Variable newVariable) {
190 if (newVariable != variable) {
191 NotificationChain msgs = null;
192 if (variable != null)
193 msgs = ((InternalEObject) variable).eInverseRemove(this,
194 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VARIABLE, null, msgs);
195 if (newVariable != null)
196 msgs = ((InternalEObject) newVariable).eInverseAdd(this,
197 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VARIABLE, null, msgs);
198 msgs = basicSetVariable(newVariable, msgs);
199 if (msgs != null)
200 msgs.dispatch();
201 } else if (eNotificationRequired())
202 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VARIABLE,
203 newVariable, newVariable));
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 public String getName() {
212 return name;
213 }
214
215 /**
216 * <!-- begin-user-doc -->
217 * <!-- end-user-doc -->
218 * @generated
219 */
220 public void setName(String newName) {
221 String oldName = name;
222 name = newName;
223 if (eNotificationRequired())
224 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__NAME, oldName,
225 name));
226 }
227
228 /**
229 * <!-- begin-user-doc -->
230 * <!-- end-user-doc -->
231 * @generated
232 */
233 public Symbol getType() {
234 if (type != null && type.eIsProxy()) {
235 InternalEObject oldType = (InternalEObject) type;
236 type = (Symbol) eResolveProxy(oldType);
237 if (type != oldType) {
238 if (eNotificationRequired())
239 eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.LET_BINDING__TYPE,
240 oldType, type));
241 }
242 }
243 return type;
244 }
245
246 /**
247 * <!-- begin-user-doc -->
248 * <!-- end-user-doc -->
249 * @generated
250 */
251 public Symbol basicGetType() {
252 return type;
253 }
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 public void setType(Symbol newType) {
261 Symbol oldType = type;
262 type = newType;
263 if (eNotificationRequired())
264 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__TYPE, oldType,
265 type));
266 }
267
268 /**
269 * <!-- begin-user-doc -->
270 * <!-- end-user-doc -->
271 * @generated
272 */
273 @Override
274 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
275 switch (featureID) {
276 case SolverLanguagePackage.LET_BINDING__VALUE:
277 return basicSetValue(null, msgs);
278 case SolverLanguagePackage.LET_BINDING__VARIABLE:
279 return basicSetVariable(null, msgs);
280 }
281 return super.eInverseRemove(otherEnd, featureID, msgs);
282 }
283
284 /**
285 * <!-- begin-user-doc -->
286 * <!-- end-user-doc -->
287 * @generated
288 */
289 @Override
290 public Object eGet(int featureID, boolean resolve, boolean coreType) {
291 switch (featureID) {
292 case SolverLanguagePackage.LET_BINDING__VALUE:
293 return getValue();
294 case SolverLanguagePackage.LET_BINDING__VARIABLE:
295 return getVariable();
296 case SolverLanguagePackage.LET_BINDING__NAME:
297 return getName();
298 case SolverLanguagePackage.LET_BINDING__TYPE:
299 if (resolve)
300 return getType();
301 return basicGetType();
302 }
303 return super.eGet(featureID, resolve, coreType);
304 }
305
306 /**
307 * <!-- begin-user-doc -->
308 * <!-- end-user-doc -->
309 * @generated
310 */
311 @Override
312 public void eSet(int featureID, Object newValue) {
313 switch (featureID) {
314 case SolverLanguagePackage.LET_BINDING__VALUE:
315 setValue((Expression) newValue);
316 return;
317 case SolverLanguagePackage.LET_BINDING__VARIABLE:
318 setVariable((Variable) newValue);
319 return;
320 case SolverLanguagePackage.LET_BINDING__NAME:
321 setName((String) newValue);
322 return;
323 case SolverLanguagePackage.LET_BINDING__TYPE:
324 setType((Symbol) newValue);
325 return;
326 }
327 super.eSet(featureID, newValue);
328 }
329
330 /**
331 * <!-- begin-user-doc -->
332 * <!-- end-user-doc -->
333 * @generated
334 */
335 @Override
336 public void eUnset(int featureID) {
337 switch (featureID) {
338 case SolverLanguagePackage.LET_BINDING__VALUE:
339 setValue((Expression) null);
340 return;
341 case SolverLanguagePackage.LET_BINDING__VARIABLE:
342 setVariable((Variable) null);
343 return;
344 case SolverLanguagePackage.LET_BINDING__NAME:
345 setName(NAME_EDEFAULT);
346 return;
347 case SolverLanguagePackage.LET_BINDING__TYPE:
348 setType((Symbol) null);
349 return;
350 }
351 super.eUnset(featureID);
352 }
353
354 /**
355 * <!-- begin-user-doc -->
356 * <!-- end-user-doc -->
357 * @generated
358 */
359 @Override
360 public boolean eIsSet(int featureID) {
361 switch (featureID) {
362 case SolverLanguagePackage.LET_BINDING__VALUE:
363 return value != null;
364 case SolverLanguagePackage.LET_BINDING__VARIABLE:
365 return variable != null;
366 case SolverLanguagePackage.LET_BINDING__NAME:
367 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
368 case SolverLanguagePackage.LET_BINDING__TYPE:
369 return type != null;
370 }
371 return super.eIsSet(featureID);
372 }
373
374 /**
375 * <!-- begin-user-doc -->
376 * <!-- end-user-doc -->
377 * @generated
378 */
379 @Override
380 public String toString() {
381 if (eIsProxy())
382 return super.toString();
383
384 StringBuilder result = new StringBuilder(super.toString());
385 result.append(" (name: ");
386 result.append(name);
387 result.append(')');
388 return result.toString();
389 }
390
391} //LetBindingImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java
new file mode 100644
index 00000000..2aa319c6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java
@@ -0,0 +1,228 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16
17import org.eclipse.emf.ecore.util.EObjectContainmentEList;
18import org.eclipse.emf.ecore.util.InternalEList;
19
20import org.eclipse.viatra.solver.language.solverLanguage.Expression;
21import org.eclipse.viatra.solver.language.solverLanguage.LetBinding;
22import org.eclipse.viatra.solver.language.solverLanguage.LetExpression;
23import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
24
25/**
26 * <!-- begin-user-doc -->
27 * An implementation of the model object '<em><b>Let Expression</b></em>'.
28 * <!-- end-user-doc -->
29 * <p>
30 * The following features are implemented:
31 * </p>
32 * <ul>
33 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl#getBindings <em>Bindings</em>}</li>
34 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl#getBody <em>Body</em>}</li>
35 * </ul>
36 *
37 * @generated
38 */
39public class LetExpressionImpl extends ExpressionImpl implements LetExpression {
40 /**
41 * The cached value of the '{@link #getBindings() <em>Bindings</em>}' containment reference list.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getBindings()
45 * @generated
46 * @ordered
47 */
48 protected EList<LetBinding> bindings;
49
50 /**
51 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @see #getBody()
55 * @generated
56 * @ordered
57 */
58 protected Expression body;
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 protected LetExpressionImpl() {
66 super();
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 @Override
75 protected EClass eStaticClass() {
76 return SolverLanguagePackage.Literals.LET_EXPRESSION;
77 }
78
79 /**
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @generated
83 */
84 public EList<LetBinding> getBindings() {
85 if (bindings == null) {
86 bindings = new EObjectContainmentEList<LetBinding>(LetBinding.class, this,
87 SolverLanguagePackage.LET_EXPRESSION__BINDINGS);
88 }
89 return bindings;
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 public Expression getBody() {
98 return body;
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
107 Expression oldBody = body;
108 body = newBody;
109 if (eNotificationRequired()) {
110 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
111 SolverLanguagePackage.LET_EXPRESSION__BODY, oldBody, newBody);
112 if (msgs == null)
113 msgs = notification;
114 else
115 msgs.add(notification);
116 }
117 return msgs;
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 public void setBody(Expression newBody) {
126 if (newBody != body) {
127 NotificationChain msgs = null;
128 if (body != null)
129 msgs = ((InternalEObject) body).eInverseRemove(this,
130 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_EXPRESSION__BODY, null, msgs);
131 if (newBody != null)
132 msgs = ((InternalEObject) newBody).eInverseAdd(this,
133 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_EXPRESSION__BODY, null, msgs);
134 msgs = basicSetBody(newBody, msgs);
135 if (msgs != null)
136 msgs.dispatch();
137 } else if (eNotificationRequired())
138 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_EXPRESSION__BODY, newBody,
139 newBody));
140 }
141
142 /**
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 */
147 @Override
148 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
149 switch (featureID) {
150 case SolverLanguagePackage.LET_EXPRESSION__BINDINGS:
151 return ((InternalEList<?>) getBindings()).basicRemove(otherEnd, msgs);
152 case SolverLanguagePackage.LET_EXPRESSION__BODY:
153 return basicSetBody(null, msgs);
154 }
155 return super.eInverseRemove(otherEnd, featureID, msgs);
156 }
157
158 /**
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @generated
162 */
163 @Override
164 public Object eGet(int featureID, boolean resolve, boolean coreType) {
165 switch (featureID) {
166 case SolverLanguagePackage.LET_EXPRESSION__BINDINGS:
167 return getBindings();
168 case SolverLanguagePackage.LET_EXPRESSION__BODY:
169 return getBody();
170 }
171 return super.eGet(featureID, resolve, coreType);
172 }
173
174 /**
175 * <!-- begin-user-doc -->
176 * <!-- end-user-doc -->
177 * @generated
178 */
179 @SuppressWarnings("unchecked")
180 @Override
181 public void eSet(int featureID, Object newValue) {
182 switch (featureID) {
183 case SolverLanguagePackage.LET_EXPRESSION__BINDINGS:
184 getBindings().clear();
185 getBindings().addAll((Collection<? extends LetBinding>) newValue);
186 return;
187 case SolverLanguagePackage.LET_EXPRESSION__BODY:
188 setBody((Expression) newValue);
189 return;
190 }
191 super.eSet(featureID, newValue);
192 }
193
194 /**
195 * <!-- begin-user-doc -->
196 * <!-- end-user-doc -->
197 * @generated
198 */
199 @Override
200 public void eUnset(int featureID) {
201 switch (featureID) {
202 case SolverLanguagePackage.LET_EXPRESSION__BINDINGS:
203 getBindings().clear();
204 return;
205 case SolverLanguagePackage.LET_EXPRESSION__BODY:
206 setBody((Expression) null);
207 return;
208 }
209 super.eUnset(featureID);
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 @Override
218 public boolean eIsSet(int featureID) {
219 switch (featureID) {
220 case SolverLanguagePackage.LET_EXPRESSION__BINDINGS:
221 return bindings != null && !bindings.isEmpty();
222 case SolverLanguagePackage.LET_EXPRESSION__BODY:
223 return body != null;
224 }
225 return super.eIsSet(featureID);
226 }
227
228} //LetExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java
new file mode 100644
index 00000000..4222a258
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Literal;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Literal</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class LiteralImpl extends ExpressionImpl implements Literal {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected LiteralImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.LITERAL;
35 }
36
37} //LiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java
new file mode 100644
index 00000000..6eb60cd5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java
@@ -0,0 +1,165 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral;
12import org.eclipse.viatra.solver.language.solverLanguage.LogicValue;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Logic Literal</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl#getValue <em>Value</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class LogicLiteralImpl extends LiteralImpl implements LogicLiteral {
29 /**
30 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getValue()
34 * @generated
35 * @ordered
36 */
37 protected static final LogicValue VALUE_EDEFAULT = LogicValue.UNKNOWN;
38
39 /**
40 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getValue()
44 * @generated
45 * @ordered
46 */
47 protected LogicValue value = VALUE_EDEFAULT;
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 protected LogicLiteralImpl() {
55 super();
56 }
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 @Override
64 protected EClass eStaticClass() {
65 return SolverLanguagePackage.Literals.LOGIC_LITERAL;
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 public LogicValue getValue() {
74 return value;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public void setValue(LogicValue newValue) {
83 LogicValue oldValue = value;
84 value = newValue == null ? VALUE_EDEFAULT : newValue;
85 if (eNotificationRequired())
86 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LOGIC_LITERAL__VALUE, oldValue,
87 value));
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 public Object eGet(int featureID, boolean resolve, boolean coreType) {
97 switch (featureID) {
98 case SolverLanguagePackage.LOGIC_LITERAL__VALUE:
99 return getValue();
100 }
101 return super.eGet(featureID, resolve, coreType);
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @Override
110 public void eSet(int featureID, Object newValue) {
111 switch (featureID) {
112 case SolverLanguagePackage.LOGIC_LITERAL__VALUE:
113 setValue((LogicValue) newValue);
114 return;
115 }
116 super.eSet(featureID, newValue);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public void eUnset(int featureID) {
126 switch (featureID) {
127 case SolverLanguagePackage.LOGIC_LITERAL__VALUE:
128 setValue(VALUE_EDEFAULT);
129 return;
130 }
131 super.eUnset(featureID);
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 @Override
140 public boolean eIsSet(int featureID) {
141 switch (featureID) {
142 case SolverLanguagePackage.LOGIC_LITERAL__VALUE:
143 return value != VALUE_EDEFAULT;
144 }
145 return super.eIsSet(featureID);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public String toString() {
155 if (eIsProxy())
156 return super.toString();
157
158 StringBuilder result = new StringBuilder(super.toString());
159 result.append(" (value: ");
160 result.append(value);
161 result.append(')');
162 return result.toString();
163 }
164
165} //LogicLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java
new file mode 100644
index 00000000..56716e2c
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Lower Bounded Scope</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl#getLowerBound <em>Lower Bound</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class LowerBoundedScopeImpl extends ScopeDeclarationImpl implements LowerBoundedScope {
28 /**
29 * The default value of the '{@link #getLowerBound() <em>Lower Bound</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getLowerBound()
33 * @generated
34 * @ordered
35 */
36 protected static final int LOWER_BOUND_EDEFAULT = 0;
37
38 /**
39 * The cached value of the '{@link #getLowerBound() <em>Lower Bound</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getLowerBound()
43 * @generated
44 * @ordered
45 */
46 protected int lowerBound = LOWER_BOUND_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected LowerBoundedScopeImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.LOWER_BOUNDED_SCOPE;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public int getLowerBound() {
73 return lowerBound;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setLowerBound(int newLowerBound) {
82 int oldLowerBound = lowerBound;
83 lowerBound = newLowerBound;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET,
86 SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND, oldLowerBound, lowerBound));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND:
98 return getLowerBound();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND:
112 setLowerBound((Integer) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND:
127 setLowerBound(LOWER_BOUND_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND:
142 return lowerBound != LOWER_BOUND_EDEFAULT;
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (lowerBound: ");
159 result.append(lowerBound);
160 result.append(')');
161 return result.toString();
162 }
163
164} //LowerBoundedScopeImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java
new file mode 100644
index 00000000..0dfc03a6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Metric;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Metric</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class MetricImpl extends FunctionImpl implements Metric {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected MetricImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.METRIC;
35 }
36
37} //MetricImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java
new file mode 100644
index 00000000..75d28976
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java
@@ -0,0 +1,151 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.util.EObjectContainmentEList;
15import org.eclipse.emf.ecore.util.InternalEList;
16
17import org.eclipse.viatra.solver.language.solverLanguage.Expression;
18import org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession;
19import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Multiary Expession</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl#getChildren <em>Children</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public abstract class MultiaryExpessionImpl extends ExpressionImpl implements MultiaryExpession {
35 /**
36 * The cached value of the '{@link #getChildren() <em>Children</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getChildren()
40 * @generated
41 * @ordered
42 */
43 protected EList<Expression> children;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected MultiaryExpessionImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return SolverLanguagePackage.Literals.MULTIARY_EXPESSION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<Expression> getChildren() {
70 if (children == null) {
71 children = new EObjectContainmentEList<Expression>(Expression.class, this,
72 SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN);
73 }
74 return children;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN:
86 return ((InternalEList<?>) getChildren()).basicRemove(otherEnd, msgs);
87 }
88 return super.eInverseRemove(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN:
100 return getChildren();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @SuppressWarnings("unchecked")
111 @Override
112 public void eSet(int featureID, Object newValue) {
113 switch (featureID) {
114 case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN:
115 getChildren().clear();
116 getChildren().addAll((Collection<? extends Expression>) newValue);
117 return;
118 }
119 super.eSet(featureID, newValue);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 @Override
128 public void eUnset(int featureID) {
129 switch (featureID) {
130 case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN:
131 getChildren().clear();
132 return;
133 }
134 super.eUnset(featureID);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public boolean eIsSet(int featureID) {
144 switch (featureID) {
145 case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN:
146 return children != null && !children.isEmpty();
147 }
148 return super.eIsSet(featureID);
149 }
150
151} //MultiaryExpessionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java
new file mode 100644
index 00000000..1f8c27a4
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java
@@ -0,0 +1,39 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity;
10import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
11
12/**
13 * <!-- begin-user-doc -->
14 * An implementation of the model object '<em><b>Multiplicity</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * @generated
18 */
19public abstract class MultiplicityImpl extends MinimalEObjectImpl.Container implements Multiplicity {
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected MultiplicityImpl() {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass() {
36 return SolverLanguagePackage.Literals.MULTIPLICITY;
37 }
38
39} //MultiplicityImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java
new file mode 100644
index 00000000..24ac11e5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java
@@ -0,0 +1,166 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Namespace Import</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl#getImportedNamespace <em>Imported Namespace</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class NamespaceImportImpl extends ImportImpl implements NamespaceImport {
28 /**
29 * The default value of the '{@link #getImportedNamespace() <em>Imported Namespace</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getImportedNamespace()
33 * @generated
34 * @ordered
35 */
36 protected static final String IMPORTED_NAMESPACE_EDEFAULT = null;
37
38 /**
39 * The cached value of the '{@link #getImportedNamespace() <em>Imported Namespace</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getImportedNamespace()
43 * @generated
44 * @ordered
45 */
46 protected String importedNamespace = IMPORTED_NAMESPACE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected NamespaceImportImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.NAMESPACE_IMPORT;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public String getImportedNamespace() {
73 return importedNamespace;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setImportedNamespace(String newImportedNamespace) {
82 String oldImportedNamespace = importedNamespace;
83 importedNamespace = newImportedNamespace;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET,
86 SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE, oldImportedNamespace,
87 importedNamespace));
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 public Object eGet(int featureID, boolean resolve, boolean coreType) {
97 switch (featureID) {
98 case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE:
99 return getImportedNamespace();
100 }
101 return super.eGet(featureID, resolve, coreType);
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @Override
110 public void eSet(int featureID, Object newValue) {
111 switch (featureID) {
112 case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE:
113 setImportedNamespace((String) newValue);
114 return;
115 }
116 super.eSet(featureID, newValue);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public void eUnset(int featureID) {
126 switch (featureID) {
127 case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE:
128 setImportedNamespace(IMPORTED_NAMESPACE_EDEFAULT);
129 return;
130 }
131 super.eUnset(featureID);
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 @Override
140 public boolean eIsSet(int featureID) {
141 switch (featureID) {
142 case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE:
143 return IMPORTED_NAMESPACE_EDEFAULT == null ? importedNamespace != null
144 : !IMPORTED_NAMESPACE_EDEFAULT.equals(importedNamespace);
145 }
146 return super.eIsSet(featureID);
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 @Override
155 public String toString() {
156 if (eIsProxy())
157 return super.toString();
158
159 StringBuilder result = new StringBuilder(super.toString());
160 result.append(" (importedNamespace: ");
161 result.append(importedNamespace);
162 result.append(')');
163 return result.toString();
164 }
165
166} //NamespaceImportImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java
new file mode 100644
index 00000000..7307fada
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java
@@ -0,0 +1,163 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.Node;
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Node</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl#isNamed <em>Named</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class NodeImpl extends SymbolImpl implements Node {
28 /**
29 * The default value of the '{@link #isNamed() <em>Named</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #isNamed()
33 * @generated
34 * @ordered
35 */
36 protected static final boolean NAMED_EDEFAULT = false;
37
38 /**
39 * The cached value of the '{@link #isNamed() <em>Named</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #isNamed()
43 * @generated
44 * @ordered
45 */
46 protected boolean named = NAMED_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected NodeImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.NODE;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public boolean isNamed() {
73 return named;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setNamed(boolean newNamed) {
82 boolean oldNamed = named;
83 named = newNamed;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.NODE__NAMED, oldNamed, named));
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 @Override
94 public Object eGet(int featureID, boolean resolve, boolean coreType) {
95 switch (featureID) {
96 case SolverLanguagePackage.NODE__NAMED:
97 return isNamed();
98 }
99 return super.eGet(featureID, resolve, coreType);
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 @Override
108 public void eSet(int featureID, Object newValue) {
109 switch (featureID) {
110 case SolverLanguagePackage.NODE__NAMED:
111 setNamed((Boolean) newValue);
112 return;
113 }
114 super.eSet(featureID, newValue);
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 @Override
123 public void eUnset(int featureID) {
124 switch (featureID) {
125 case SolverLanguagePackage.NODE__NAMED:
126 setNamed(NAMED_EDEFAULT);
127 return;
128 }
129 super.eUnset(featureID);
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 @Override
138 public boolean eIsSet(int featureID) {
139 switch (featureID) {
140 case SolverLanguagePackage.NODE__NAMED:
141 return named != NAMED_EDEFAULT;
142 }
143 return super.eIsSet(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public String toString() {
153 if (eIsProxy())
154 return super.toString();
155
156 StringBuilder result = new StringBuilder(super.toString());
157 result.append(" (named: ");
158 result.append(named);
159 result.append(')');
160 return result.toString();
161 }
162
163} //NodeImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java
new file mode 100644
index 00000000..541c06ec
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java
@@ -0,0 +1,253 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Expression;
14import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration;
15import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind;
16import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Objective Declaration</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl#getKind <em>Kind</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl#getObjective <em>Objective</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class ObjectiveDeclarationImpl extends StatementImpl implements ObjectiveDeclaration {
33 /**
34 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getKind()
38 * @generated
39 * @ordered
40 */
41 protected static final ObjectiveKind KIND_EDEFAULT = ObjectiveKind.MINIMIZATION;
42
43 /**
44 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getKind()
48 * @generated
49 * @ordered
50 */
51 protected ObjectiveKind kind = KIND_EDEFAULT;
52
53 /**
54 * The cached value of the '{@link #getObjective() <em>Objective</em>}' containment reference.
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @see #getObjective()
58 * @generated
59 * @ordered
60 */
61 protected Expression objective;
62
63 /**
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 protected ObjectiveDeclarationImpl() {
69 super();
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 @Override
78 protected EClass eStaticClass() {
79 return SolverLanguagePackage.Literals.OBJECTIVE_DECLARATION;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 public ObjectiveKind getKind() {
88 return kind;
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 public void setKind(ObjectiveKind newKind) {
97 ObjectiveKind oldKind = kind;
98 kind = newKind == null ? KIND_EDEFAULT : newKind;
99 if (eNotificationRequired())
100 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND,
101 oldKind, kind));
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 public Expression getObjective() {
110 return objective;
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public NotificationChain basicSetObjective(Expression newObjective, NotificationChain msgs) {
119 Expression oldObjective = objective;
120 objective = newObjective;
121 if (eNotificationRequired()) {
122 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
123 SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, oldObjective, newObjective);
124 if (msgs == null)
125 msgs = notification;
126 else
127 msgs.add(notification);
128 }
129 return msgs;
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 public void setObjective(Expression newObjective) {
138 if (newObjective != objective) {
139 NotificationChain msgs = null;
140 if (objective != null)
141 msgs = ((InternalEObject) objective).eInverseRemove(this,
142 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, null, msgs);
143 if (newObjective != null)
144 msgs = ((InternalEObject) newObjective).eInverseAdd(this,
145 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, null, msgs);
146 msgs = basicSetObjective(newObjective, msgs);
147 if (msgs != null)
148 msgs.dispatch();
149 } else if (eNotificationRequired())
150 eNotify(new ENotificationImpl(this, Notification.SET,
151 SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, newObjective, newObjective));
152 }
153
154 /**
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @generated
158 */
159 @Override
160 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
161 switch (featureID) {
162 case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE:
163 return basicSetObjective(null, msgs);
164 }
165 return super.eInverseRemove(otherEnd, featureID, msgs);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public Object eGet(int featureID, boolean resolve, boolean coreType) {
175 switch (featureID) {
176 case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND:
177 return getKind();
178 case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE:
179 return getObjective();
180 }
181 return super.eGet(featureID, resolve, coreType);
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 @Override
190 public void eSet(int featureID, Object newValue) {
191 switch (featureID) {
192 case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND:
193 setKind((ObjectiveKind) newValue);
194 return;
195 case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE:
196 setObjective((Expression) newValue);
197 return;
198 }
199 super.eSet(featureID, newValue);
200 }
201
202 /**
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @generated
206 */
207 @Override
208 public void eUnset(int featureID) {
209 switch (featureID) {
210 case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND:
211 setKind(KIND_EDEFAULT);
212 return;
213 case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE:
214 setObjective((Expression) null);
215 return;
216 }
217 super.eUnset(featureID);
218 }
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 @Override
226 public boolean eIsSet(int featureID) {
227 switch (featureID) {
228 case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND:
229 return kind != KIND_EDEFAULT;
230 case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE:
231 return objective != null;
232 }
233 return super.eIsSet(featureID);
234 }
235
236 /**
237 * <!-- begin-user-doc -->
238 * <!-- end-user-doc -->
239 * @generated
240 */
241 @Override
242 public String toString() {
243 if (eIsProxy())
244 return super.toString();
245
246 StringBuilder result = new StringBuilder(super.toString());
247 result.append(" (kind: ");
248 result.append(kind);
249 result.append(')');
250 return result.toString();
251 }
252
253} //ObjectiveDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java
new file mode 100644
index 00000000..13f190c9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Operator;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Operator</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class OperatorImpl extends FunctionImpl implements Operator {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected OperatorImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.OPERATOR;
35 }
36
37} //OperatorImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java
new file mode 100644
index 00000000..afad504d
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java
@@ -0,0 +1,341 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.PathComponent;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Path Component</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#getSymbol <em>Symbol</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#isInverse <em>Inverse</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#isTransitiveClosure <em>Transitive Closure</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#isReflexiveTransitiveClosure <em>Reflexive Transitive Closure</em>}</li>
29 * </ul>
30 *
31 * @generated
32 */
33public class PathComponentImpl extends MinimalEObjectImpl.Container implements PathComponent {
34 /**
35 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @see #getSymbol()
39 * @generated
40 * @ordered
41 */
42 protected Symbol symbol;
43
44 /**
45 * The default value of the '{@link #isInverse() <em>Inverse</em>}' attribute.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #isInverse()
49 * @generated
50 * @ordered
51 */
52 protected static final boolean INVERSE_EDEFAULT = false;
53
54 /**
55 * The cached value of the '{@link #isInverse() <em>Inverse</em>}' attribute.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #isInverse()
59 * @generated
60 * @ordered
61 */
62 protected boolean inverse = INVERSE_EDEFAULT;
63
64 /**
65 * The default value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #isTransitiveClosure()
69 * @generated
70 * @ordered
71 */
72 protected static final boolean TRANSITIVE_CLOSURE_EDEFAULT = false;
73
74 /**
75 * The cached value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @see #isTransitiveClosure()
79 * @generated
80 * @ordered
81 */
82 protected boolean transitiveClosure = TRANSITIVE_CLOSURE_EDEFAULT;
83
84 /**
85 * The default value of the '{@link #isReflexiveTransitiveClosure() <em>Reflexive Transitive Closure</em>}' attribute.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @see #isReflexiveTransitiveClosure()
89 * @generated
90 * @ordered
91 */
92 protected static final boolean REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT = false;
93
94 /**
95 * The cached value of the '{@link #isReflexiveTransitiveClosure() <em>Reflexive Transitive Closure</em>}' attribute.
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @see #isReflexiveTransitiveClosure()
99 * @generated
100 * @ordered
101 */
102 protected boolean reflexiveTransitiveClosure = REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT;
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 protected PathComponentImpl() {
110 super();
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 @Override
119 protected EClass eStaticClass() {
120 return SolverLanguagePackage.Literals.PATH_COMPONENT;
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 public Symbol getSymbol() {
129 if (symbol != null && symbol.eIsProxy()) {
130 InternalEObject oldSymbol = (InternalEObject) symbol;
131 symbol = (Symbol) eResolveProxy(oldSymbol);
132 if (symbol != oldSymbol) {
133 if (eNotificationRequired())
134 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
135 SolverLanguagePackage.PATH_COMPONENT__SYMBOL, oldSymbol, symbol));
136 }
137 }
138 return symbol;
139 }
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 public Symbol basicGetSymbol() {
147 return symbol;
148 }
149
150 /**
151 * <!-- begin-user-doc -->
152 * <!-- end-user-doc -->
153 * @generated
154 */
155 public void setSymbol(Symbol newSymbol) {
156 Symbol oldSymbol = symbol;
157 symbol = newSymbol;
158 if (eNotificationRequired())
159 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PATH_COMPONENT__SYMBOL,
160 oldSymbol, symbol));
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 public boolean isInverse() {
169 return inverse;
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 public void setInverse(boolean newInverse) {
178 boolean oldInverse = inverse;
179 inverse = newInverse;
180 if (eNotificationRequired())
181 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PATH_COMPONENT__INVERSE,
182 oldInverse, inverse));
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 public boolean isTransitiveClosure() {
191 return transitiveClosure;
192 }
193
194 /**
195 * <!-- begin-user-doc -->
196 * <!-- end-user-doc -->
197 * @generated
198 */
199 public void setTransitiveClosure(boolean newTransitiveClosure) {
200 boolean oldTransitiveClosure = transitiveClosure;
201 transitiveClosure = newTransitiveClosure;
202 if (eNotificationRequired())
203 eNotify(new ENotificationImpl(this, Notification.SET,
204 SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE, oldTransitiveClosure, transitiveClosure));
205 }
206
207 /**
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 */
212 public boolean isReflexiveTransitiveClosure() {
213 return reflexiveTransitiveClosure;
214 }
215
216 /**
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 */
221 public void setReflexiveTransitiveClosure(boolean newReflexiveTransitiveClosure) {
222 boolean oldReflexiveTransitiveClosure = reflexiveTransitiveClosure;
223 reflexiveTransitiveClosure = newReflexiveTransitiveClosure;
224 if (eNotificationRequired())
225 eNotify(new ENotificationImpl(this, Notification.SET,
226 SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE, oldReflexiveTransitiveClosure,
227 reflexiveTransitiveClosure));
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 @Override
236 public Object eGet(int featureID, boolean resolve, boolean coreType) {
237 switch (featureID) {
238 case SolverLanguagePackage.PATH_COMPONENT__SYMBOL:
239 if (resolve)
240 return getSymbol();
241 return basicGetSymbol();
242 case SolverLanguagePackage.PATH_COMPONENT__INVERSE:
243 return isInverse();
244 case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE:
245 return isTransitiveClosure();
246 case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE:
247 return isReflexiveTransitiveClosure();
248 }
249 return super.eGet(featureID, resolve, coreType);
250 }
251
252 /**
253 * <!-- begin-user-doc -->
254 * <!-- end-user-doc -->
255 * @generated
256 */
257 @Override
258 public void eSet(int featureID, Object newValue) {
259 switch (featureID) {
260 case SolverLanguagePackage.PATH_COMPONENT__SYMBOL:
261 setSymbol((Symbol) newValue);
262 return;
263 case SolverLanguagePackage.PATH_COMPONENT__INVERSE:
264 setInverse((Boolean) newValue);
265 return;
266 case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE:
267 setTransitiveClosure((Boolean) newValue);
268 return;
269 case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE:
270 setReflexiveTransitiveClosure((Boolean) newValue);
271 return;
272 }
273 super.eSet(featureID, newValue);
274 }
275
276 /**
277 * <!-- begin-user-doc -->
278 * <!-- end-user-doc -->
279 * @generated
280 */
281 @Override
282 public void eUnset(int featureID) {
283 switch (featureID) {
284 case SolverLanguagePackage.PATH_COMPONENT__SYMBOL:
285 setSymbol((Symbol) null);
286 return;
287 case SolverLanguagePackage.PATH_COMPONENT__INVERSE:
288 setInverse(INVERSE_EDEFAULT);
289 return;
290 case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE:
291 setTransitiveClosure(TRANSITIVE_CLOSURE_EDEFAULT);
292 return;
293 case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE:
294 setReflexiveTransitiveClosure(REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT);
295 return;
296 }
297 super.eUnset(featureID);
298 }
299
300 /**
301 * <!-- begin-user-doc -->
302 * <!-- end-user-doc -->
303 * @generated
304 */
305 @Override
306 public boolean eIsSet(int featureID) {
307 switch (featureID) {
308 case SolverLanguagePackage.PATH_COMPONENT__SYMBOL:
309 return symbol != null;
310 case SolverLanguagePackage.PATH_COMPONENT__INVERSE:
311 return inverse != INVERSE_EDEFAULT;
312 case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE:
313 return transitiveClosure != TRANSITIVE_CLOSURE_EDEFAULT;
314 case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE:
315 return reflexiveTransitiveClosure != REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT;
316 }
317 return super.eIsSet(featureID);
318 }
319
320 /**
321 * <!-- begin-user-doc -->
322 * <!-- end-user-doc -->
323 * @generated
324 */
325 @Override
326 public String toString() {
327 if (eIsProxy())
328 return super.toString();
329
330 StringBuilder result = new StringBuilder(super.toString());
331 result.append(" (inverse: ");
332 result.append(inverse);
333 result.append(", transitiveClosure: ");
334 result.append(transitiveClosure);
335 result.append(", reflexiveTransitiveClosure: ");
336 result.append(reflexiveTransitiveClosure);
337 result.append(')');
338 return result.toString();
339 }
340
341} //PathComponentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java
new file mode 100644
index 00000000..c6afa7f5
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java
@@ -0,0 +1,260 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes;
12import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Predicate Definition</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#isError <em>Error</em>}</li>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#isFunctional <em>Functional</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class PredicateDefinitionImpl extends FunctorDefinitonImpl implements PredicateDefinition {
30 /**
31 * The default value of the '{@link #isError() <em>Error</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #isError()
35 * @generated
36 * @ordered
37 */
38 protected static final boolean ERROR_EDEFAULT = false;
39
40 /**
41 * The cached value of the '{@link #isError() <em>Error</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #isError()
45 * @generated
46 * @ordered
47 */
48 protected boolean error = ERROR_EDEFAULT;
49
50 /**
51 * The default value of the '{@link #isFunctional() <em>Functional</em>}' attribute.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @see #isFunctional()
55 * @generated
56 * @ordered
57 */
58 protected static final boolean FUNCTIONAL_EDEFAULT = false;
59
60 /**
61 * The cached value of the '{@link #isFunctional() <em>Functional</em>}' attribute.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see #isFunctional()
65 * @generated
66 * @ordered
67 */
68 protected boolean functional = FUNCTIONAL_EDEFAULT;
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 protected PredicateDefinitionImpl() {
76 super();
77 }
78
79 /**
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @generated
83 */
84 @Override
85 protected EClass eStaticClass() {
86 return SolverLanguagePackage.Literals.PREDICATE_DEFINITION;
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 public boolean isError() {
95 return error;
96 }
97
98 /**
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @generated
102 */
103 public void setError(boolean newError) {
104 boolean oldError = error;
105 error = newError;
106 if (eNotificationRequired())
107 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__ERROR,
108 oldError, error));
109 }
110
111 /**
112 * <!-- begin-user-doc -->
113 * <!-- end-user-doc -->
114 * @generated
115 */
116 public boolean isFunctional() {
117 return functional;
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 public void setFunctional(boolean newFunctional) {
126 boolean oldFunctional = functional;
127 functional = newFunctional;
128 if (eNotificationRequired())
129 eNotify(new ENotificationImpl(this, Notification.SET,
130 SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL, oldFunctional, functional));
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public Object eGet(int featureID, boolean resolve, boolean coreType) {
140 switch (featureID) {
141 case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR:
142 return isError();
143 case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL:
144 return isFunctional();
145 }
146 return super.eGet(featureID, resolve, coreType);
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 @Override
155 public void eSet(int featureID, Object newValue) {
156 switch (featureID) {
157 case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR:
158 setError((Boolean) newValue);
159 return;
160 case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL:
161 setFunctional((Boolean) newValue);
162 return;
163 }
164 super.eSet(featureID, newValue);
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 @Override
173 public void eUnset(int featureID) {
174 switch (featureID) {
175 case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR:
176 setError(ERROR_EDEFAULT);
177 return;
178 case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL:
179 setFunctional(FUNCTIONAL_EDEFAULT);
180 return;
181 }
182 super.eUnset(featureID);
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 @Override
191 public boolean eIsSet(int featureID) {
192 switch (featureID) {
193 case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR:
194 return error != ERROR_EDEFAULT;
195 case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL:
196 return functional != FUNCTIONAL_EDEFAULT;
197 }
198 return super.eIsSet(featureID);
199 }
200
201 /**
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 @Override
207 public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
208 if (baseClass == InlinePredicateAttrributes.class) {
209 switch (derivedFeatureID) {
210 case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR:
211 return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR;
212 case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL:
213 return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL;
214 default:
215 return -1;
216 }
217 }
218 return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 @Override
227 public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
228 if (baseClass == InlinePredicateAttrributes.class) {
229 switch (baseFeatureID) {
230 case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR:
231 return SolverLanguagePackage.PREDICATE_DEFINITION__ERROR;
232 case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL:
233 return SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL;
234 default:
235 return -1;
236 }
237 }
238 return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
239 }
240
241 /**
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @generated
245 */
246 @Override
247 public String toString() {
248 if (eIsProxy())
249 return super.toString();
250
251 StringBuilder result = new StringBuilder(super.toString());
252 result.append(" (error: ");
253 result.append(error);
254 result.append(", functional: ");
255 result.append(functional);
256 result.append(')');
257 return result.toString();
258 }
259
260} //PredicateDefinitionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java
new file mode 100644
index 00000000..316217af
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Predicate</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class PredicateImpl extends RelationImpl implements Predicate {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected PredicateImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.PREDICATE;
35 }
36
37} //PredicateImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java
new file mode 100644
index 00000000..08cec167
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java
@@ -0,0 +1,298 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8import org.eclipse.emf.common.notify.NotificationChain;
9
10import org.eclipse.emf.common.util.EList;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
17
18import org.eclipse.emf.ecore.util.EObjectContainmentEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21import org.eclipse.viatra.solver.language.solverLanguage.Import;
22import org.eclipse.viatra.solver.language.solverLanguage.Problem;
23import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
24import org.eclipse.viatra.solver.language.solverLanguage.Statement;
25import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
26
27/**
28 * <!-- begin-user-doc -->
29 * An implementation of the model object '<em><b>Problem</b></em>'.
30 * <!-- end-user-doc -->
31 * <p>
32 * The following features are implemented:
33 * </p>
34 * <ul>
35 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getName <em>Name</em>}</li>
36 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getStatements <em>Statements</em>}</li>
37 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getSymbols <em>Symbols</em>}</li>
38 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getImports <em>Imports</em>}</li>
39 * </ul>
40 *
41 * @generated
42 */
43public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem {
44 /**
45 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #getName()
49 * @generated
50 * @ordered
51 */
52 protected static final String NAME_EDEFAULT = null;
53
54 /**
55 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #getName()
59 * @generated
60 * @ordered
61 */
62 protected String name = NAME_EDEFAULT;
63
64 /**
65 * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #getStatements()
69 * @generated
70 * @ordered
71 */
72 protected EList<Statement> statements;
73
74 /**
75 * The cached value of the '{@link #getSymbols() <em>Symbols</em>}' containment reference list.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @see #getSymbols()
79 * @generated
80 * @ordered
81 */
82 protected EList<Symbol> symbols;
83
84 /**
85 * The cached value of the '{@link #getImports() <em>Imports</em>}' containment reference list.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @see #getImports()
89 * @generated
90 * @ordered
91 */
92 protected EList<Import> imports;
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 protected ProblemImpl() {
100 super();
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 protected EClass eStaticClass() {
110 return SolverLanguagePackage.Literals.PROBLEM;
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public String getName() {
119 return name;
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public void setName(String newName) {
128 String oldName = name;
129 name = newName;
130 if (eNotificationRequired())
131 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PROBLEM__NAME, oldName, name));
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 public EList<Statement> getStatements() {
140 if (statements == null) {
141 statements = new EObjectContainmentEList<Statement>(Statement.class, this,
142 SolverLanguagePackage.PROBLEM__STATEMENTS);
143 }
144 return statements;
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 public EList<Symbol> getSymbols() {
153 if (symbols == null) {
154 symbols = new EObjectContainmentEList<Symbol>(Symbol.class, this, SolverLanguagePackage.PROBLEM__SYMBOLS);
155 }
156 return symbols;
157 }
158
159 /**
160 * <!-- begin-user-doc -->
161 * <!-- end-user-doc -->
162 * @generated
163 */
164 public EList<Import> getImports() {
165 if (imports == null) {
166 imports = new EObjectContainmentEList<Import>(Import.class, this, SolverLanguagePackage.PROBLEM__IMPORTS);
167 }
168 return imports;
169 }
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 @Override
177 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
178 switch (featureID) {
179 case SolverLanguagePackage.PROBLEM__STATEMENTS:
180 return ((InternalEList<?>) getStatements()).basicRemove(otherEnd, msgs);
181 case SolverLanguagePackage.PROBLEM__SYMBOLS:
182 return ((InternalEList<?>) getSymbols()).basicRemove(otherEnd, msgs);
183 case SolverLanguagePackage.PROBLEM__IMPORTS:
184 return ((InternalEList<?>) getImports()).basicRemove(otherEnd, msgs);
185 }
186 return super.eInverseRemove(otherEnd, featureID, msgs);
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 @Override
195 public Object eGet(int featureID, boolean resolve, boolean coreType) {
196 switch (featureID) {
197 case SolverLanguagePackage.PROBLEM__NAME:
198 return getName();
199 case SolverLanguagePackage.PROBLEM__STATEMENTS:
200 return getStatements();
201 case SolverLanguagePackage.PROBLEM__SYMBOLS:
202 return getSymbols();
203 case SolverLanguagePackage.PROBLEM__IMPORTS:
204 return getImports();
205 }
206 return super.eGet(featureID, resolve, coreType);
207 }
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 @SuppressWarnings("unchecked")
215 @Override
216 public void eSet(int featureID, Object newValue) {
217 switch (featureID) {
218 case SolverLanguagePackage.PROBLEM__NAME:
219 setName((String) newValue);
220 return;
221 case SolverLanguagePackage.PROBLEM__STATEMENTS:
222 getStatements().clear();
223 getStatements().addAll((Collection<? extends Statement>) newValue);
224 return;
225 case SolverLanguagePackage.PROBLEM__SYMBOLS:
226 getSymbols().clear();
227 getSymbols().addAll((Collection<? extends Symbol>) newValue);
228 return;
229 case SolverLanguagePackage.PROBLEM__IMPORTS:
230 getImports().clear();
231 getImports().addAll((Collection<? extends Import>) newValue);
232 return;
233 }
234 super.eSet(featureID, newValue);
235 }
236
237 /**
238 * <!-- begin-user-doc -->
239 * <!-- end-user-doc -->
240 * @generated
241 */
242 @Override
243 public void eUnset(int featureID) {
244 switch (featureID) {
245 case SolverLanguagePackage.PROBLEM__NAME:
246 setName(NAME_EDEFAULT);
247 return;
248 case SolverLanguagePackage.PROBLEM__STATEMENTS:
249 getStatements().clear();
250 return;
251 case SolverLanguagePackage.PROBLEM__SYMBOLS:
252 getSymbols().clear();
253 return;
254 case SolverLanguagePackage.PROBLEM__IMPORTS:
255 getImports().clear();
256 return;
257 }
258 super.eUnset(featureID);
259 }
260
261 /**
262 * <!-- begin-user-doc -->
263 * <!-- end-user-doc -->
264 * @generated
265 */
266 @Override
267 public boolean eIsSet(int featureID) {
268 switch (featureID) {
269 case SolverLanguagePackage.PROBLEM__NAME:
270 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
271 case SolverLanguagePackage.PROBLEM__STATEMENTS:
272 return statements != null && !statements.isEmpty();
273 case SolverLanguagePackage.PROBLEM__SYMBOLS:
274 return symbols != null && !symbols.isEmpty();
275 case SolverLanguagePackage.PROBLEM__IMPORTS:
276 return imports != null && !imports.isEmpty();
277 }
278 return super.eIsSet(featureID);
279 }
280
281 /**
282 * <!-- begin-user-doc -->
283 * <!-- end-user-doc -->
284 * @generated
285 */
286 @Override
287 public String toString() {
288 if (eIsProxy())
289 return super.toString();
290
291 StringBuilder result = new StringBuilder(super.toString());
292 result.append(" (name: ");
293 result.append(name);
294 result.append(')');
295 return result.toString();
296 }
297
298} //ProblemImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java
new file mode 100644
index 00000000..7ab526b6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java
@@ -0,0 +1,166 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.math.BigDecimal;
6
7import org.eclipse.emf.common.notify.Notification;
8
9import org.eclipse.emf.ecore.EClass;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.RealLiteral;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Real Literal</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl#getValue <em>Value</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class RealLiteralImpl extends LiteralImpl implements RealLiteral {
30 /**
31 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getValue()
35 * @generated
36 * @ordered
37 */
38 protected static final BigDecimal VALUE_EDEFAULT = null;
39
40 /**
41 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getValue()
45 * @generated
46 * @ordered
47 */
48 protected BigDecimal value = VALUE_EDEFAULT;
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 protected RealLiteralImpl() {
56 super();
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 @Override
65 protected EClass eStaticClass() {
66 return SolverLanguagePackage.Literals.REAL_LITERAL;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public BigDecimal getValue() {
75 return value;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 public void setValue(BigDecimal newValue) {
84 BigDecimal oldValue = value;
85 value = newValue;
86 if (eNotificationRequired())
87 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.REAL_LITERAL__VALUE, oldValue,
88 value));
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case SolverLanguagePackage.REAL_LITERAL__VALUE:
100 return getValue();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @Override
111 public void eSet(int featureID, Object newValue) {
112 switch (featureID) {
113 case SolverLanguagePackage.REAL_LITERAL__VALUE:
114 setValue((BigDecimal) newValue);
115 return;
116 }
117 super.eSet(featureID, newValue);
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 @Override
126 public void eUnset(int featureID) {
127 switch (featureID) {
128 case SolverLanguagePackage.REAL_LITERAL__VALUE:
129 setValue(VALUE_EDEFAULT);
130 return;
131 }
132 super.eUnset(featureID);
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 @Override
141 public boolean eIsSet(int featureID) {
142 switch (featureID) {
143 case SolverLanguagePackage.REAL_LITERAL__VALUE:
144 return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
145 }
146 return super.eIsSet(featureID);
147 }
148
149 /**
150 * <!-- begin-user-doc -->
151 * <!-- end-user-doc -->
152 * @generated
153 */
154 @Override
155 public String toString() {
156 if (eIsProxy())
157 return super.toString();
158
159 StringBuilder result = new StringBuilder(super.toString());
160 result.append(" (value: ");
161 result.append(value);
162 result.append(')');
163 return result.toString();
164 }
165
166} //RealLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java
new file mode 100644
index 00000000..6224f3aa
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java
@@ -0,0 +1,151 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.util.EObjectContainmentEList;
15import org.eclipse.emf.ecore.util.InternalEList;
16
17import org.eclipse.viatra.solver.language.solverLanguage.PathComponent;
18import org.eclipse.viatra.solver.language.solverLanguage.Reference;
19import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Reference</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl#getComponents <em>Components</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class ReferenceImpl extends ExpressionImpl implements Reference {
35 /**
36 * The cached value of the '{@link #getComponents() <em>Components</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getComponents()
40 * @generated
41 * @ordered
42 */
43 protected EList<PathComponent> components;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected ReferenceImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return SolverLanguagePackage.Literals.REFERENCE;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<PathComponent> getComponents() {
70 if (components == null) {
71 components = new EObjectContainmentEList<PathComponent>(PathComponent.class, this,
72 SolverLanguagePackage.REFERENCE__COMPONENTS);
73 }
74 return components;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case SolverLanguagePackage.REFERENCE__COMPONENTS:
86 return ((InternalEList<?>) getComponents()).basicRemove(otherEnd, msgs);
87 }
88 return super.eInverseRemove(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case SolverLanguagePackage.REFERENCE__COMPONENTS:
100 return getComponents();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @SuppressWarnings("unchecked")
111 @Override
112 public void eSet(int featureID, Object newValue) {
113 switch (featureID) {
114 case SolverLanguagePackage.REFERENCE__COMPONENTS:
115 getComponents().clear();
116 getComponents().addAll((Collection<? extends PathComponent>) newValue);
117 return;
118 }
119 super.eSet(featureID, newValue);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 @Override
128 public void eUnset(int featureID) {
129 switch (featureID) {
130 case SolverLanguagePackage.REFERENCE__COMPONENTS:
131 getComponents().clear();
132 return;
133 }
134 super.eUnset(featureID);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public boolean eIsSet(int featureID) {
144 switch (featureID) {
145 case SolverLanguagePackage.REFERENCE__COMPONENTS:
146 return components != null && !components.isEmpty();
147 }
148 return super.eIsSet(featureID);
149 }
150
151} //ReferenceImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java
new file mode 100644
index 00000000..9c612858
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.Relation;
8import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Relation</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class RelationImpl extends FunctorImpl implements Relation {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected RelationImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.RELATION;
35 }
36
37} //RelationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java
new file mode 100644
index 00000000..31c2fa9f
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java
@@ -0,0 +1,159 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration;
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Scope Declaration</b></em>'.
19 * <!-- end-user-doc -->
20 * <p>
21 * The following features are implemented:
22 * </p>
23 * <ul>
24 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl#getType <em>Type</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class ScopeDeclarationImpl extends StatementImpl implements ScopeDeclaration {
30 /**
31 * The cached value of the '{@link #getType() <em>Type</em>}' reference.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getType()
35 * @generated
36 * @ordered
37 */
38 protected Symbol type;
39
40 /**
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @generated
44 */
45 protected ScopeDeclarationImpl() {
46 super();
47 }
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 @Override
55 protected EClass eStaticClass() {
56 return SolverLanguagePackage.Literals.SCOPE_DECLARATION;
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 public Symbol getType() {
65 if (type != null && type.eIsProxy()) {
66 InternalEObject oldType = (InternalEObject) type;
67 type = (Symbol) eResolveProxy(oldType);
68 if (type != oldType) {
69 if (eNotificationRequired())
70 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
71 SolverLanguagePackage.SCOPE_DECLARATION__TYPE, oldType, type));
72 }
73 }
74 return type;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public Symbol basicGetType() {
83 return type;
84 }
85
86 /**
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @generated
90 */
91 public void setType(Symbol newType) {
92 Symbol oldType = type;
93 type = newType;
94 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.SCOPE_DECLARATION__TYPE,
96 oldType, type));
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 @Override
105 public Object eGet(int featureID, boolean resolve, boolean coreType) {
106 switch (featureID) {
107 case SolverLanguagePackage.SCOPE_DECLARATION__TYPE:
108 if (resolve)
109 return getType();
110 return basicGetType();
111 }
112 return super.eGet(featureID, resolve, coreType);
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 @Override
121 public void eSet(int featureID, Object newValue) {
122 switch (featureID) {
123 case SolverLanguagePackage.SCOPE_DECLARATION__TYPE:
124 setType((Symbol) newValue);
125 return;
126 }
127 super.eSet(featureID, newValue);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public void eUnset(int featureID) {
137 switch (featureID) {
138 case SolverLanguagePackage.SCOPE_DECLARATION__TYPE:
139 setType((Symbol) null);
140 return;
141 }
142 super.eUnset(featureID);
143 }
144
145 /**
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 */
150 @Override
151 public boolean eIsSet(int featureID) {
152 switch (featureID) {
153 case SolverLanguagePackage.SCOPE_DECLARATION__TYPE:
154 return type != null;
155 }
156 return super.eIsSet(featureID);
157 }
158
159} //ScopeDeclarationImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java
new file mode 100644
index 00000000..96e741b9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java
@@ -0,0 +1,985 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6import org.eclipse.emf.ecore.EDataType;
7import org.eclipse.emf.ecore.EObject;
8import org.eclipse.emf.ecore.EPackage;
9
10import org.eclipse.emf.ecore.impl.EFactoryImpl;
11
12import org.eclipse.emf.ecore.plugin.EcorePlugin;
13
14import org.eclipse.viatra.solver.language.solverLanguage.*;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model <b>Factory</b>.
19 * <!-- end-user-doc -->
20 * @generated
21 */
22public class SolverLanguageFactoryImpl extends EFactoryImpl implements SolverLanguageFactory {
23 /**
24 * Creates the default factory implementation.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @generated
28 */
29 public static SolverLanguageFactory init() {
30 try {
31 SolverLanguageFactory theSolverLanguageFactory = (SolverLanguageFactory) EPackage.Registry.INSTANCE
32 .getEFactory(SolverLanguagePackage.eNS_URI);
33 if (theSolverLanguageFactory != null) {
34 return theSolverLanguageFactory;
35 }
36 } catch (Exception exception) {
37 EcorePlugin.INSTANCE.log(exception);
38 }
39 return new SolverLanguageFactoryImpl();
40 }
41
42 /**
43 * Creates an instance of the factory.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 public SolverLanguageFactoryImpl() {
49 super();
50 }
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 @Override
58 public EObject create(EClass eClass) {
59 switch (eClass.getClassifierID()) {
60 case SolverLanguagePackage.PATH_COMPONENT:
61 return createPathComponent();
62 case SolverLanguagePackage.CALL:
63 return createCall();
64 case SolverLanguagePackage.REFERENCE:
65 return createReference();
66 case SolverLanguagePackage.ARGUMENT_LIST:
67 return createArgumentList();
68 case SolverLanguagePackage.EXPRESSION_ARGUMENT:
69 return createExpressionArgument();
70 case SolverLanguagePackage.STAR_ARGUMENT:
71 return createStarArgument();
72 case SolverLanguagePackage.VARIABLE:
73 return createVariable();
74 case SolverLanguagePackage.UNARY_EXPRESSION:
75 return createUnaryExpression();
76 case SolverLanguagePackage.BINARY_EXPRESSION:
77 return createBinaryExpression();
78 case SolverLanguagePackage.DISJUNCTION:
79 return createDisjunction();
80 case SolverLanguagePackage.CONJUNCTION:
81 return createConjunction();
82 case SolverLanguagePackage.CONDITIONAL_EXPRESSION:
83 return createConditionalExpression();
84 case SolverLanguagePackage.SWITCH:
85 return createSwitch();
86 case SolverLanguagePackage.CASE:
87 return createCase();
88 case SolverLanguagePackage.LET_EXPRESSION:
89 return createLetExpression();
90 case SolverLanguagePackage.LET_BINDING:
91 return createLetBinding();
92 case SolverLanguagePackage.INT_LITERAL:
93 return createIntLiteral();
94 case SolverLanguagePackage.REAL_LITERAL:
95 return createRealLiteral();
96 case SolverLanguagePackage.STRING_LITERAL:
97 return createStringLiteral();
98 case SolverLanguagePackage.LOGIC_LITERAL:
99 return createLogicLiteral();
100 case SolverLanguagePackage.EMPTY_LITERAL:
101 return createEmptyLiteral();
102 case SolverLanguagePackage.CAST_EXPRESSION:
103 return createCastExpression();
104 case SolverLanguagePackage.COUNT:
105 return createCount();
106 case SolverLanguagePackage.AGGREGATION:
107 return createAggregation();
108 case SolverLanguagePackage.FORALL:
109 return createForall();
110 case SolverLanguagePackage.TYPE_REFERENCE:
111 return createTypeReference();
112 case SolverLanguagePackage.INFINITY_LITERAL:
113 return createInfinityLiteral();
114 case SolverLanguagePackage.INTERVAL:
115 return createInterval();
116 case SolverLanguagePackage.BASE_RELATION:
117 return createBaseRelation();
118 case SolverLanguagePackage.PREDICATE:
119 return createPredicate();
120 case SolverLanguagePackage.DATATYPE:
121 return createDatatype();
122 case SolverLanguagePackage.METRIC:
123 return createMetric();
124 case SolverLanguagePackage.OPERATOR:
125 return createOperator();
126 case SolverLanguagePackage.NODE:
127 return createNode();
128 case SolverLanguagePackage.PREDICATE_DEFINITION:
129 return createPredicateDefinition();
130 case SolverLanguagePackage.FUNCTION_DEFINITION:
131 return createFunctionDefinition();
132 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION:
133 return createExternPredicateDeclaration();
134 case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION:
135 return createExternFunctionDeclaration();
136 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION:
137 return createExternAggregationOperatorDeclaration();
138 case SolverLanguagePackage.EXTERN_DATATYPE_DECLARATION:
139 return createExternDatatypeDeclaration();
140 case SolverLanguagePackage.CLASS_DECLARATION:
141 return createClassDeclaration();
142 case SolverLanguagePackage.ENUM_DECLARATION:
143 return createEnumDeclaration();
144 case SolverLanguagePackage.ENUM_LITERAL:
145 return createEnumLiteral();
146 case SolverLanguagePackage.FIELD:
147 return createField();
148 case SolverLanguagePackage.DEFAULT_ASSERTION:
149 return createDefaultAssertion();
150 case SolverLanguagePackage.ASSERTION:
151 return createAssertion();
152 case SolverLanguagePackage.UNBOUNDED_MULTIPLICITY:
153 return createUnboundedMultiplicity();
154 case SolverLanguagePackage.EXACT_MULTIPLICITY:
155 return createExactMultiplicity();
156 case SolverLanguagePackage.BOUNDED_MULTIPLICITY:
157 return createBoundedMultiplicity();
158 case SolverLanguagePackage.AGGREGATION_OPERATOR:
159 return createAggregationOperator();
160 case SolverLanguagePackage.PROBLEM:
161 return createProblem();
162 case SolverLanguagePackage.TYPED_STAR_ARGUMENT:
163 return createTypedStarArgument();
164 case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT:
165 return createTypedVariableArgument();
166 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION:
167 return createUnnamedErrorPredicateDefintion();
168 case SolverLanguagePackage.OBJECTIVE_DECLARATION:
169 return createObjectiveDeclaration();
170 case SolverLanguagePackage.SCOPE_DECLARATION:
171 return createScopeDeclaration();
172 case SolverLanguagePackage.EXACT_SCOPE:
173 return createExactScope();
174 case SolverLanguagePackage.BOUNDED_SCOPE:
175 return createBoundedScope();
176 case SolverLanguagePackage.LOWER_BOUNDED_SCOPE:
177 return createLowerBoundedScope();
178 case SolverLanguagePackage.NAMESPACE_IMPORT:
179 return createNamespaceImport();
180 case SolverLanguagePackage.IMPORT:
181 return createImport();
182 case SolverLanguagePackage.URI_IMPORT:
183 return createUriImport();
184 default:
185 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
186 }
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 @Override
195 public Object createFromString(EDataType eDataType, String initialValue) {
196 switch (eDataType.getClassifierID()) {
197 case SolverLanguagePackage.UNARY_OPERATOR:
198 return createUnaryOperatorFromString(eDataType, initialValue);
199 case SolverLanguagePackage.BINARY_OPERATOR:
200 return createBinaryOperatorFromString(eDataType, initialValue);
201 case SolverLanguagePackage.LOGIC_VALUE:
202 return createLogicValueFromString(eDataType, initialValue);
203 case SolverLanguagePackage.OBJECTIVE_KIND:
204 return createObjectiveKindFromString(eDataType, initialValue);
205 case SolverLanguagePackage.ATTRIBUTE_KIND:
206 return createAttributeKindFromString(eDataType, initialValue);
207 default:
208 throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
209 }
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 @Override
218 public String convertToString(EDataType eDataType, Object instanceValue) {
219 switch (eDataType.getClassifierID()) {
220 case SolverLanguagePackage.UNARY_OPERATOR:
221 return convertUnaryOperatorToString(eDataType, instanceValue);
222 case SolverLanguagePackage.BINARY_OPERATOR:
223 return convertBinaryOperatorToString(eDataType, instanceValue);
224 case SolverLanguagePackage.LOGIC_VALUE:
225 return convertLogicValueToString(eDataType, instanceValue);
226 case SolverLanguagePackage.OBJECTIVE_KIND:
227 return convertObjectiveKindToString(eDataType, instanceValue);
228 case SolverLanguagePackage.ATTRIBUTE_KIND:
229 return convertAttributeKindToString(eDataType, instanceValue);
230 default:
231 throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
232 }
233 }
234
235 /**
236 * <!-- begin-user-doc -->
237 * <!-- end-user-doc -->
238 * @generated
239 */
240 public PathComponent createPathComponent() {
241 PathComponentImpl pathComponent = new PathComponentImpl();
242 return pathComponent;
243 }
244
245 /**
246 * <!-- begin-user-doc -->
247 * <!-- end-user-doc -->
248 * @generated
249 */
250 public Call createCall() {
251 CallImpl call = new CallImpl();
252 return call;
253 }
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 public Reference createReference() {
261 ReferenceImpl reference = new ReferenceImpl();
262 return reference;
263 }
264
265 /**
266 * <!-- begin-user-doc -->
267 * <!-- end-user-doc -->
268 * @generated
269 */
270 public ArgumentList createArgumentList() {
271 ArgumentListImpl argumentList = new ArgumentListImpl();
272 return argumentList;
273 }
274
275 /**
276 * <!-- begin-user-doc -->
277 * <!-- end-user-doc -->
278 * @generated
279 */
280 public ExpressionArgument createExpressionArgument() {
281 ExpressionArgumentImpl expressionArgument = new ExpressionArgumentImpl();
282 return expressionArgument;
283 }
284
285 /**
286 * <!-- begin-user-doc -->
287 * <!-- end-user-doc -->
288 * @generated
289 */
290 public StarArgument createStarArgument() {
291 StarArgumentImpl starArgument = new StarArgumentImpl();
292 return starArgument;
293 }
294
295 /**
296 * <!-- begin-user-doc -->
297 * <!-- end-user-doc -->
298 * @generated
299 */
300 public Variable createVariable() {
301 VariableImpl variable = new VariableImpl();
302 return variable;
303 }
304
305 /**
306 * <!-- begin-user-doc -->
307 * <!-- end-user-doc -->
308 * @generated
309 */
310 public UnaryExpression createUnaryExpression() {
311 UnaryExpressionImpl unaryExpression = new UnaryExpressionImpl();
312 return unaryExpression;
313 }
314
315 /**
316 * <!-- begin-user-doc -->
317 * <!-- end-user-doc -->
318 * @generated
319 */
320 public BinaryExpression createBinaryExpression() {
321 BinaryExpressionImpl binaryExpression = new BinaryExpressionImpl();
322 return binaryExpression;
323 }
324
325 /**
326 * <!-- begin-user-doc -->
327 * <!-- end-user-doc -->
328 * @generated
329 */
330 public Disjunction createDisjunction() {
331 DisjunctionImpl disjunction = new DisjunctionImpl();
332 return disjunction;
333 }
334
335 /**
336 * <!-- begin-user-doc -->
337 * <!-- end-user-doc -->
338 * @generated
339 */
340 public Conjunction createConjunction() {
341 ConjunctionImpl conjunction = new ConjunctionImpl();
342 return conjunction;
343 }
344
345 /**
346 * <!-- begin-user-doc -->
347 * <!-- end-user-doc -->
348 * @generated
349 */
350 public ConditionalExpression createConditionalExpression() {
351 ConditionalExpressionImpl conditionalExpression = new ConditionalExpressionImpl();
352 return conditionalExpression;
353 }
354
355 /**
356 * <!-- begin-user-doc -->
357 * <!-- end-user-doc -->
358 * @generated
359 */
360 public Switch createSwitch() {
361 SwitchImpl switch_ = new SwitchImpl();
362 return switch_;
363 }
364
365 /**
366 * <!-- begin-user-doc -->
367 * <!-- end-user-doc -->
368 * @generated
369 */
370 public Case createCase() {
371 CaseImpl case_ = new CaseImpl();
372 return case_;
373 }
374
375 /**
376 * <!-- begin-user-doc -->
377 * <!-- end-user-doc -->
378 * @generated
379 */
380 public LetExpression createLetExpression() {
381 LetExpressionImpl letExpression = new LetExpressionImpl();
382 return letExpression;
383 }
384
385 /**
386 * <!-- begin-user-doc -->
387 * <!-- end-user-doc -->
388 * @generated
389 */
390 public LetBinding createLetBinding() {
391 LetBindingImpl letBinding = new LetBindingImpl();
392 return letBinding;
393 }
394
395 /**
396 * <!-- begin-user-doc -->
397 * <!-- end-user-doc -->
398 * @generated
399 */
400 public IntLiteral createIntLiteral() {
401 IntLiteralImpl intLiteral = new IntLiteralImpl();
402 return intLiteral;
403 }
404
405 /**
406 * <!-- begin-user-doc -->
407 * <!-- end-user-doc -->
408 * @generated
409 */
410 public RealLiteral createRealLiteral() {
411 RealLiteralImpl realLiteral = new RealLiteralImpl();
412 return realLiteral;
413 }
414
415 /**
416 * <!-- begin-user-doc -->
417 * <!-- end-user-doc -->
418 * @generated
419 */
420 public StringLiteral createStringLiteral() {
421 StringLiteralImpl stringLiteral = new StringLiteralImpl();
422 return stringLiteral;
423 }
424
425 /**
426 * <!-- begin-user-doc -->
427 * <!-- end-user-doc -->
428 * @generated
429 */
430 public LogicLiteral createLogicLiteral() {
431 LogicLiteralImpl logicLiteral = new LogicLiteralImpl();
432 return logicLiteral;
433 }
434
435 /**
436 * <!-- begin-user-doc -->
437 * <!-- end-user-doc -->
438 * @generated
439 */
440 public EmptyLiteral createEmptyLiteral() {
441 EmptyLiteralImpl emptyLiteral = new EmptyLiteralImpl();
442 return emptyLiteral;
443 }
444
445 /**
446 * <!-- begin-user-doc -->
447 * <!-- end-user-doc -->
448 * @generated
449 */
450 public CastExpression createCastExpression() {
451 CastExpressionImpl castExpression = new CastExpressionImpl();
452 return castExpression;
453 }
454
455 /**
456 * <!-- begin-user-doc -->
457 * <!-- end-user-doc -->
458 * @generated
459 */
460 public Count createCount() {
461 CountImpl count = new CountImpl();
462 return count;
463 }
464
465 /**
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 */
470 public Aggregation createAggregation() {
471 AggregationImpl aggregation = new AggregationImpl();
472 return aggregation;
473 }
474
475 /**
476 * <!-- begin-user-doc -->
477 * <!-- end-user-doc -->
478 * @generated
479 */
480 public Forall createForall() {
481 ForallImpl forall = new ForallImpl();
482 return forall;
483 }
484
485 /**
486 * <!-- begin-user-doc -->
487 * <!-- end-user-doc -->
488 * @generated
489 */
490 public TypeReference createTypeReference() {
491 TypeReferenceImpl typeReference = new TypeReferenceImpl();
492 return typeReference;
493 }
494
495 /**
496 * <!-- begin-user-doc -->
497 * <!-- end-user-doc -->
498 * @generated
499 */
500 public InfinityLiteral createInfinityLiteral() {
501 InfinityLiteralImpl infinityLiteral = new InfinityLiteralImpl();
502 return infinityLiteral;
503 }
504
505 /**
506 * <!-- begin-user-doc -->
507 * <!-- end-user-doc -->
508 * @generated
509 */
510 public Interval createInterval() {
511 IntervalImpl interval = new IntervalImpl();
512 return interval;
513 }
514
515 /**
516 * <!-- begin-user-doc -->
517 * <!-- end-user-doc -->
518 * @generated
519 */
520 public BaseRelation createBaseRelation() {
521 BaseRelationImpl baseRelation = new BaseRelationImpl();
522 return baseRelation;
523 }
524
525 /**
526 * <!-- begin-user-doc -->
527 * <!-- end-user-doc -->
528 * @generated
529 */
530 public Predicate createPredicate() {
531 PredicateImpl predicate = new PredicateImpl();
532 return predicate;
533 }
534
535 /**
536 * <!-- begin-user-doc -->
537 * <!-- end-user-doc -->
538 * @generated
539 */
540 public Datatype createDatatype() {
541 DatatypeImpl datatype = new DatatypeImpl();
542 return datatype;
543 }
544
545 /**
546 * <!-- begin-user-doc -->
547 * <!-- end-user-doc -->
548 * @generated
549 */
550 public Metric createMetric() {
551 MetricImpl metric = new MetricImpl();
552 return metric;
553 }
554
555 /**
556 * <!-- begin-user-doc -->
557 * <!-- end-user-doc -->
558 * @generated
559 */
560 public Operator createOperator() {
561 OperatorImpl operator = new OperatorImpl();
562 return operator;
563 }
564
565 /**
566 * <!-- begin-user-doc -->
567 * <!-- end-user-doc -->
568 * @generated
569 */
570 public Node createNode() {
571 NodeImpl node = new NodeImpl();
572 return node;
573 }
574
575 /**
576 * <!-- begin-user-doc -->
577 * <!-- end-user-doc -->
578 * @generated
579 */
580 public PredicateDefinition createPredicateDefinition() {
581 PredicateDefinitionImpl predicateDefinition = new PredicateDefinitionImpl();
582 return predicateDefinition;
583 }
584
585 /**
586 * <!-- begin-user-doc -->
587 * <!-- end-user-doc -->
588 * @generated
589 */
590 public FunctionDefinition createFunctionDefinition() {
591 FunctionDefinitionImpl functionDefinition = new FunctionDefinitionImpl();
592 return functionDefinition;
593 }
594
595 /**
596 * <!-- begin-user-doc -->
597 * <!-- end-user-doc -->
598 * @generated
599 */
600 public ExternPredicateDeclaration createExternPredicateDeclaration() {
601 ExternPredicateDeclarationImpl externPredicateDeclaration = new ExternPredicateDeclarationImpl();
602 return externPredicateDeclaration;
603 }
604
605 /**
606 * <!-- begin-user-doc -->
607 * <!-- end-user-doc -->
608 * @generated
609 */
610 public ExternFunctionDeclaration createExternFunctionDeclaration() {
611 ExternFunctionDeclarationImpl externFunctionDeclaration = new ExternFunctionDeclarationImpl();
612 return externFunctionDeclaration;
613 }
614
615 /**
616 * <!-- begin-user-doc -->
617 * <!-- end-user-doc -->
618 * @generated
619 */
620 public ExternAggregationOperatorDeclaration createExternAggregationOperatorDeclaration() {
621 ExternAggregationOperatorDeclarationImpl externAggregationOperatorDeclaration = new ExternAggregationOperatorDeclarationImpl();
622 return externAggregationOperatorDeclaration;
623 }
624
625 /**
626 * <!-- begin-user-doc -->
627 * <!-- end-user-doc -->
628 * @generated
629 */
630 public ExternDatatypeDeclaration createExternDatatypeDeclaration() {
631 ExternDatatypeDeclarationImpl externDatatypeDeclaration = new ExternDatatypeDeclarationImpl();
632 return externDatatypeDeclaration;
633 }
634
635 /**
636 * <!-- begin-user-doc -->
637 * <!-- end-user-doc -->
638 * @generated
639 */
640 public ClassDeclaration createClassDeclaration() {
641 ClassDeclarationImpl classDeclaration = new ClassDeclarationImpl();
642 return classDeclaration;
643 }
644
645 /**
646 * <!-- begin-user-doc -->
647 * <!-- end-user-doc -->
648 * @generated
649 */
650 public EnumDeclaration createEnumDeclaration() {
651 EnumDeclarationImpl enumDeclaration = new EnumDeclarationImpl();
652 return enumDeclaration;
653 }
654
655 /**
656 * <!-- begin-user-doc -->
657 * <!-- end-user-doc -->
658 * @generated
659 */
660 public EnumLiteral createEnumLiteral() {
661 EnumLiteralImpl enumLiteral = new EnumLiteralImpl();
662 return enumLiteral;
663 }
664
665 /**
666 * <!-- begin-user-doc -->
667 * <!-- end-user-doc -->
668 * @generated
669 */
670 public Field createField() {
671 FieldImpl field = new FieldImpl();
672 return field;
673 }
674
675 /**
676 * <!-- begin-user-doc -->
677 * <!-- end-user-doc -->
678 * @generated
679 */
680 public DefaultAssertion createDefaultAssertion() {
681 DefaultAssertionImpl defaultAssertion = new DefaultAssertionImpl();
682 return defaultAssertion;
683 }
684
685 /**
686 * <!-- begin-user-doc -->
687 * <!-- end-user-doc -->
688 * @generated
689 */
690 public Assertion createAssertion() {
691 AssertionImpl assertion = new AssertionImpl();
692 return assertion;
693 }
694
695 /**
696 * <!-- begin-user-doc -->
697 * <!-- end-user-doc -->
698 * @generated
699 */
700 public UnboundedMultiplicity createUnboundedMultiplicity() {
701 UnboundedMultiplicityImpl unboundedMultiplicity = new UnboundedMultiplicityImpl();
702 return unboundedMultiplicity;
703 }
704
705 /**
706 * <!-- begin-user-doc -->
707 * <!-- end-user-doc -->
708 * @generated
709 */
710 public ExactMultiplicity createExactMultiplicity() {
711 ExactMultiplicityImpl exactMultiplicity = new ExactMultiplicityImpl();
712 return exactMultiplicity;
713 }
714
715 /**
716 * <!-- begin-user-doc -->
717 * <!-- end-user-doc -->
718 * @generated
719 */
720 public BoundedMultiplicity createBoundedMultiplicity() {
721 BoundedMultiplicityImpl boundedMultiplicity = new BoundedMultiplicityImpl();
722 return boundedMultiplicity;
723 }
724
725 /**
726 * <!-- begin-user-doc -->
727 * <!-- end-user-doc -->
728 * @generated
729 */
730 public AggregationOperator createAggregationOperator() {
731 AggregationOperatorImpl aggregationOperator = new AggregationOperatorImpl();
732 return aggregationOperator;
733 }
734
735 /**
736 * <!-- begin-user-doc -->
737 * <!-- end-user-doc -->
738 * @generated
739 */
740 public Problem createProblem() {
741 ProblemImpl problem = new ProblemImpl();
742 return problem;
743 }
744
745 /**
746 * <!-- begin-user-doc -->
747 * <!-- end-user-doc -->
748 * @generated
749 */
750 public TypedStarArgument createTypedStarArgument() {
751 TypedStarArgumentImpl typedStarArgument = new TypedStarArgumentImpl();
752 return typedStarArgument;
753 }
754
755 /**
756 * <!-- begin-user-doc -->
757 * <!-- end-user-doc -->
758 * @generated
759 */
760 public TypedVariableArgument createTypedVariableArgument() {
761 TypedVariableArgumentImpl typedVariableArgument = new TypedVariableArgumentImpl();
762 return typedVariableArgument;
763 }
764
765 /**
766 * <!-- begin-user-doc -->
767 * <!-- end-user-doc -->
768 * @generated
769 */
770 public UnnamedErrorPredicateDefintion createUnnamedErrorPredicateDefintion() {
771 UnnamedErrorPredicateDefintionImpl unnamedErrorPredicateDefintion = new UnnamedErrorPredicateDefintionImpl();
772 return unnamedErrorPredicateDefintion;
773 }
774
775 /**
776 * <!-- begin-user-doc -->
777 * <!-- end-user-doc -->
778 * @generated
779 */
780 public ObjectiveDeclaration createObjectiveDeclaration() {
781 ObjectiveDeclarationImpl objectiveDeclaration = new ObjectiveDeclarationImpl();
782 return objectiveDeclaration;
783 }
784
785 /**
786 * <!-- begin-user-doc -->
787 * <!-- end-user-doc -->
788 * @generated
789 */
790 public ScopeDeclaration createScopeDeclaration() {
791 ScopeDeclarationImpl scopeDeclaration = new ScopeDeclarationImpl();
792 return scopeDeclaration;
793 }
794
795 /**
796 * <!-- begin-user-doc -->
797 * <!-- end-user-doc -->
798 * @generated
799 */
800 public ExactScope createExactScope() {
801 ExactScopeImpl exactScope = new ExactScopeImpl();
802 return exactScope;
803 }
804
805 /**
806 * <!-- begin-user-doc -->
807 * <!-- end-user-doc -->
808 * @generated
809 */
810 public BoundedScope createBoundedScope() {
811 BoundedScopeImpl boundedScope = new BoundedScopeImpl();
812 return boundedScope;
813 }
814
815 /**
816 * <!-- begin-user-doc -->
817 * <!-- end-user-doc -->
818 * @generated
819 */
820 public LowerBoundedScope createLowerBoundedScope() {
821 LowerBoundedScopeImpl lowerBoundedScope = new LowerBoundedScopeImpl();
822 return lowerBoundedScope;
823 }
824
825 /**
826 * <!-- begin-user-doc -->
827 * <!-- end-user-doc -->
828 * @generated
829 */
830 public NamespaceImport createNamespaceImport() {
831 NamespaceImportImpl namespaceImport = new NamespaceImportImpl();
832 return namespaceImport;
833 }
834
835 /**
836 * <!-- begin-user-doc -->
837 * <!-- end-user-doc -->
838 * @generated
839 */
840 public Import createImport() {
841 ImportImpl import_ = new ImportImpl();
842 return import_;
843 }
844
845 /**
846 * <!-- begin-user-doc -->
847 * <!-- end-user-doc -->
848 * @generated
849 */
850 public UriImport createUriImport() {
851 UriImportImpl uriImport = new UriImportImpl();
852 return uriImport;
853 }
854
855 /**
856 * <!-- begin-user-doc -->
857 * <!-- end-user-doc -->
858 * @generated
859 */
860 public UnaryOperator createUnaryOperatorFromString(EDataType eDataType, String initialValue) {
861 UnaryOperator result = UnaryOperator.get(initialValue);
862 if (result == null)
863 throw new IllegalArgumentException(
864 "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
865 return result;
866 }
867
868 /**
869 * <!-- begin-user-doc -->
870 * <!-- end-user-doc -->
871 * @generated
872 */
873 public String convertUnaryOperatorToString(EDataType eDataType, Object instanceValue) {
874 return instanceValue == null ? null : instanceValue.toString();
875 }
876
877 /**
878 * <!-- begin-user-doc -->
879 * <!-- end-user-doc -->
880 * @generated
881 */
882 public BinaryOperator createBinaryOperatorFromString(EDataType eDataType, String initialValue) {
883 BinaryOperator result = BinaryOperator.get(initialValue);
884 if (result == null)
885 throw new IllegalArgumentException(
886 "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
887 return result;
888 }
889
890 /**
891 * <!-- begin-user-doc -->
892 * <!-- end-user-doc -->
893 * @generated
894 */
895 public String convertBinaryOperatorToString(EDataType eDataType, Object instanceValue) {
896 return instanceValue == null ? null : instanceValue.toString();
897 }
898
899 /**
900 * <!-- begin-user-doc -->
901 * <!-- end-user-doc -->
902 * @generated
903 */
904 public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) {
905 LogicValue result = LogicValue.get(initialValue);
906 if (result == null)
907 throw new IllegalArgumentException(
908 "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
909 return result;
910 }
911
912 /**
913 * <!-- begin-user-doc -->
914 * <!-- end-user-doc -->
915 * @generated
916 */
917 public String convertLogicValueToString(EDataType eDataType, Object instanceValue) {
918 return instanceValue == null ? null : instanceValue.toString();
919 }
920
921 /**
922 * <!-- begin-user-doc -->
923 * <!-- end-user-doc -->
924 * @generated
925 */
926 public ObjectiveKind createObjectiveKindFromString(EDataType eDataType, String initialValue) {
927 ObjectiveKind result = ObjectiveKind.get(initialValue);
928 if (result == null)
929 throw new IllegalArgumentException(
930 "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
931 return result;
932 }
933
934 /**
935 * <!-- begin-user-doc -->
936 * <!-- end-user-doc -->
937 * @generated
938 */
939 public String convertObjectiveKindToString(EDataType eDataType, Object instanceValue) {
940 return instanceValue == null ? null : instanceValue.toString();
941 }
942
943 /**
944 * <!-- begin-user-doc -->
945 * <!-- end-user-doc -->
946 * @generated
947 */
948 public AttributeKind createAttributeKindFromString(EDataType eDataType, String initialValue) {
949 AttributeKind result = AttributeKind.get(initialValue);
950 if (result == null)
951 throw new IllegalArgumentException(
952 "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
953 return result;
954 }
955
956 /**
957 * <!-- begin-user-doc -->
958 * <!-- end-user-doc -->
959 * @generated
960 */
961 public String convertAttributeKindToString(EDataType eDataType, Object instanceValue) {
962 return instanceValue == null ? null : instanceValue.toString();
963 }
964
965 /**
966 * <!-- begin-user-doc -->
967 * <!-- end-user-doc -->
968 * @generated
969 */
970 public SolverLanguagePackage getSolverLanguagePackage() {
971 return (SolverLanguagePackage) getEPackage();
972 }
973
974 /**
975 * <!-- begin-user-doc -->
976 * <!-- end-user-doc -->
977 * @deprecated
978 * @generated
979 */
980 @Deprecated
981 public static SolverLanguagePackage getPackage() {
982 return SolverLanguagePackage.eINSTANCE;
983 }
984
985} //SolverLanguageFactoryImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
new file mode 100644
index 00000000..52dde045
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
@@ -0,0 +1,3364 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EAttribute;
6import org.eclipse.emf.ecore.EClass;
7import org.eclipse.emf.ecore.EEnum;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.EReference;
10
11import org.eclipse.emf.ecore.impl.EPackageImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion;
14import org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression;
15import org.eclipse.viatra.solver.language.solverLanguage.Aggregation;
16import org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator;
17import org.eclipse.viatra.solver.language.solverLanguage.Argument;
18import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
19import org.eclipse.viatra.solver.language.solverLanguage.Assertion;
20import org.eclipse.viatra.solver.language.solverLanguage.Attribute;
21import org.eclipse.viatra.solver.language.solverLanguage.AttributeKind;
22import org.eclipse.viatra.solver.language.solverLanguage.BaseRelation;
23import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression;
24import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator;
25import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity;
26import org.eclipse.viatra.solver.language.solverLanguage.BoundedScope;
27import org.eclipse.viatra.solver.language.solverLanguage.Call;
28import org.eclipse.viatra.solver.language.solverLanguage.Case;
29import org.eclipse.viatra.solver.language.solverLanguage.CastExpression;
30import org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration;
31import org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression;
32import org.eclipse.viatra.solver.language.solverLanguage.Conjunction;
33import org.eclipse.viatra.solver.language.solverLanguage.Count;
34import org.eclipse.viatra.solver.language.solverLanguage.Datatype;
35import org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion;
36import org.eclipse.viatra.solver.language.solverLanguage.Disjunction;
37import org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral;
38import org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration;
39import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral;
40import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity;
41import org.eclipse.viatra.solver.language.solverLanguage.ExactScope;
42import org.eclipse.viatra.solver.language.solverLanguage.Expression;
43import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument;
44import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration;
45import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration;
46import org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration;
47import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration;
48import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration;
49import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration;
50import org.eclipse.viatra.solver.language.solverLanguage.Field;
51import org.eclipse.viatra.solver.language.solverLanguage.Forall;
52import org.eclipse.viatra.solver.language.solverLanguage.Function;
53import org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition;
54import org.eclipse.viatra.solver.language.solverLanguage.Functor;
55import org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton;
56import org.eclipse.viatra.solver.language.solverLanguage.Import;
57import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral;
58import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes;
59import org.eclipse.viatra.solver.language.solverLanguage.IntLiteral;
60import org.eclipse.viatra.solver.language.solverLanguage.Interval;
61import org.eclipse.viatra.solver.language.solverLanguage.LetBinding;
62import org.eclipse.viatra.solver.language.solverLanguage.LetExpression;
63import org.eclipse.viatra.solver.language.solverLanguage.Literal;
64import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral;
65import org.eclipse.viatra.solver.language.solverLanguage.LogicValue;
66import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope;
67import org.eclipse.viatra.solver.language.solverLanguage.Metric;
68import org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession;
69import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity;
70import org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport;
71import org.eclipse.viatra.solver.language.solverLanguage.Node;
72import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration;
73import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind;
74import org.eclipse.viatra.solver.language.solverLanguage.Operator;
75import org.eclipse.viatra.solver.language.solverLanguage.PathComponent;
76import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
77import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition;
78import org.eclipse.viatra.solver.language.solverLanguage.Problem;
79import org.eclipse.viatra.solver.language.solverLanguage.RealLiteral;
80import org.eclipse.viatra.solver.language.solverLanguage.Reference;
81import org.eclipse.viatra.solver.language.solverLanguage.Relation;
82import org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration;
83import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory;
84import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
85import org.eclipse.viatra.solver.language.solverLanguage.StarArgument;
86import org.eclipse.viatra.solver.language.solverLanguage.Statement;
87import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral;
88import org.eclipse.viatra.solver.language.solverLanguage.Switch;
89import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
90import org.eclipse.viatra.solver.language.solverLanguage.TypeReference;
91import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument;
92import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument;
93import org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument;
94import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression;
95import org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator;
96import org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity;
97import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion;
98import org.eclipse.viatra.solver.language.solverLanguage.UriImport;
99import org.eclipse.viatra.solver.language.solverLanguage.Variable;
100
101/**
102 * <!-- begin-user-doc -->
103 * An implementation of the model <b>Package</b>.
104 * <!-- end-user-doc -->
105 * @generated
106 */
107public class SolverLanguagePackageImpl extends EPackageImpl implements SolverLanguagePackage {
108 /**
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated
112 */
113 private EClass pathComponentEClass = null;
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 private EClass symbolEClass = null;
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 private EClass callEClass = null;
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 private EClass referenceEClass = null;
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 private EClass expressionEClass = null;
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 private EClass argumentEClass = null;
149
150 /**
151 * <!-- begin-user-doc -->
152 * <!-- end-user-doc -->
153 * @generated
154 */
155 private EClass argumentListEClass = null;
156
157 /**
158 * <!-- begin-user-doc -->
159 * <!-- end-user-doc -->
160 * @generated
161 */
162 private EClass expressionArgumentEClass = null;
163
164 /**
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @generated
168 */
169 private EClass starArgumentEClass = null;
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 private EClass typedArgumentEClass = null;
177
178 /**
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @generated
182 */
183 private EClass multiaryExpessionEClass = null;
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 private EClass variableEClass = null;
191
192 /**
193 * <!-- begin-user-doc -->
194 * <!-- end-user-doc -->
195 * @generated
196 */
197 private EClass unaryExpressionEClass = null;
198
199 /**
200 * <!-- begin-user-doc -->
201 * <!-- end-user-doc -->
202 * @generated
203 */
204 private EClass binaryExpressionEClass = null;
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 private EClass disjunctionEClass = null;
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 private EClass conjunctionEClass = null;
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 private EClass conditionalExpressionEClass = null;
226
227 /**
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 */
232 private EClass switchEClass = null;
233
234 /**
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @generated
238 */
239 private EClass caseEClass = null;
240
241 /**
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @generated
245 */
246 private EClass letExpressionEClass = null;
247
248 /**
249 * <!-- begin-user-doc -->
250 * <!-- end-user-doc -->
251 * @generated
252 */
253 private EClass letBindingEClass = null;
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 private EClass literalEClass = null;
261
262 /**
263 * <!-- begin-user-doc -->
264 * <!-- end-user-doc -->
265 * @generated
266 */
267 private EClass intLiteralEClass = null;
268
269 /**
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @generated
273 */
274 private EClass realLiteralEClass = null;
275
276 /**
277 * <!-- begin-user-doc -->
278 * <!-- end-user-doc -->
279 * @generated
280 */
281 private EClass stringLiteralEClass = null;
282
283 /**
284 * <!-- begin-user-doc -->
285 * <!-- end-user-doc -->
286 * @generated
287 */
288 private EClass logicLiteralEClass = null;
289
290 /**
291 * <!-- begin-user-doc -->
292 * <!-- end-user-doc -->
293 * @generated
294 */
295 private EClass emptyLiteralEClass = null;
296
297 /**
298 * <!-- begin-user-doc -->
299 * <!-- end-user-doc -->
300 * @generated
301 */
302 private EClass castExpressionEClass = null;
303
304 /**
305 * <!-- begin-user-doc -->
306 * <!-- end-user-doc -->
307 * @generated
308 */
309 private EClass aggregateExpressionEClass = null;
310
311 /**
312 * <!-- begin-user-doc -->
313 * <!-- end-user-doc -->
314 * @generated
315 */
316 private EClass countEClass = null;
317
318 /**
319 * <!-- begin-user-doc -->
320 * <!-- end-user-doc -->
321 * @generated
322 */
323 private EClass aggregationEClass = null;
324
325 /**
326 * <!-- begin-user-doc -->
327 * <!-- end-user-doc -->
328 * @generated
329 */
330 private EClass forallEClass = null;
331
332 /**
333 * <!-- begin-user-doc -->
334 * <!-- end-user-doc -->
335 * @generated
336 */
337 private EClass typeReferenceEClass = null;
338
339 /**
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 */
344 private EClass infinityLiteralEClass = null;
345
346 /**
347 * <!-- begin-user-doc -->
348 * <!-- end-user-doc -->
349 * @generated
350 */
351 private EClass intervalEClass = null;
352
353 /**
354 * <!-- begin-user-doc -->
355 * <!-- end-user-doc -->
356 * @generated
357 */
358 private EClass functorEClass = null;
359
360 /**
361 * <!-- begin-user-doc -->
362 * <!-- end-user-doc -->
363 * @generated
364 */
365 private EClass relationEClass = null;
366
367 /**
368 * <!-- begin-user-doc -->
369 * <!-- end-user-doc -->
370 * @generated
371 */
372 private EClass baseRelationEClass = null;
373
374 /**
375 * <!-- begin-user-doc -->
376 * <!-- end-user-doc -->
377 * @generated
378 */
379 private EClass predicateEClass = null;
380
381 /**
382 * <!-- begin-user-doc -->
383 * <!-- end-user-doc -->
384 * @generated
385 */
386 private EClass datatypeEClass = null;
387
388 /**
389 * <!-- begin-user-doc -->
390 * <!-- end-user-doc -->
391 * @generated
392 */
393 private EClass functionEClass = null;
394
395 /**
396 * <!-- begin-user-doc -->
397 * <!-- end-user-doc -->
398 * @generated
399 */
400 private EClass metricEClass = null;
401
402 /**
403 * <!-- begin-user-doc -->
404 * <!-- end-user-doc -->
405 * @generated
406 */
407 private EClass operatorEClass = null;
408
409 /**
410 * <!-- begin-user-doc -->
411 * <!-- end-user-doc -->
412 * @generated
413 */
414 private EClass nodeEClass = null;
415
416 /**
417 * <!-- begin-user-doc -->
418 * <!-- end-user-doc -->
419 * @generated
420 */
421 private EClass statementEClass = null;
422
423 /**
424 * <!-- begin-user-doc -->
425 * <!-- end-user-doc -->
426 * @generated
427 */
428 private EClass abstractAssertionEClass = null;
429
430 /**
431 * <!-- begin-user-doc -->
432 * <!-- end-user-doc -->
433 * @generated
434 */
435 private EClass functorDefinitonEClass = null;
436
437 /**
438 * <!-- begin-user-doc -->
439 * <!-- end-user-doc -->
440 * @generated
441 */
442 private EClass predicateDefinitionEClass = null;
443
444 /**
445 * <!-- begin-user-doc -->
446 * <!-- end-user-doc -->
447 * @generated
448 */
449 private EClass functionDefinitionEClass = null;
450
451 /**
452 * <!-- begin-user-doc -->
453 * <!-- end-user-doc -->
454 * @generated
455 */
456 private EClass attributeEClass = null;
457
458 /**
459 * <!-- begin-user-doc -->
460 * <!-- end-user-doc -->
461 * @generated
462 */
463 private EClass externDeclarationEClass = null;
464
465 /**
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 */
470 private EClass externFunctorDeclarationEClass = null;
471
472 /**
473 * <!-- begin-user-doc -->
474 * <!-- end-user-doc -->
475 * @generated
476 */
477 private EClass externPredicateDeclarationEClass = null;
478
479 /**
480 * <!-- begin-user-doc -->
481 * <!-- end-user-doc -->
482 * @generated
483 */
484 private EClass externFunctionDeclarationEClass = null;
485
486 /**
487 * <!-- begin-user-doc -->
488 * <!-- end-user-doc -->
489 * @generated
490 */
491 private EClass externAggregationOperatorDeclarationEClass = null;
492
493 /**
494 * <!-- begin-user-doc -->
495 * <!-- end-user-doc -->
496 * @generated
497 */
498 private EClass externDatatypeDeclarationEClass = null;
499
500 /**
501 * <!-- begin-user-doc -->
502 * <!-- end-user-doc -->
503 * @generated
504 */
505 private EClass classDeclarationEClass = null;
506
507 /**
508 * <!-- begin-user-doc -->
509 * <!-- end-user-doc -->
510 * @generated
511 */
512 private EClass enumDeclarationEClass = null;
513
514 /**
515 * <!-- begin-user-doc -->
516 * <!-- end-user-doc -->
517 * @generated
518 */
519 private EClass enumLiteralEClass = null;
520
521 /**
522 * <!-- begin-user-doc -->
523 * <!-- end-user-doc -->
524 * @generated
525 */
526 private EClass fieldEClass = null;
527
528 /**
529 * <!-- begin-user-doc -->
530 * <!-- end-user-doc -->
531 * @generated
532 */
533 private EClass multiplicityEClass = null;
534
535 /**
536 * <!-- begin-user-doc -->
537 * <!-- end-user-doc -->
538 * @generated
539 */
540 private EClass defaultAssertionEClass = null;
541
542 /**
543 * <!-- begin-user-doc -->
544 * <!-- end-user-doc -->
545 * @generated
546 */
547 private EClass assertionEClass = null;
548
549 /**
550 * <!-- begin-user-doc -->
551 * <!-- end-user-doc -->
552 * @generated
553 */
554 private EClass unboundedMultiplicityEClass = null;
555
556 /**
557 * <!-- begin-user-doc -->
558 * <!-- end-user-doc -->
559 * @generated
560 */
561 private EClass exactMultiplicityEClass = null;
562
563 /**
564 * <!-- begin-user-doc -->
565 * <!-- end-user-doc -->
566 * @generated
567 */
568 private EClass boundedMultiplicityEClass = null;
569
570 /**
571 * <!-- begin-user-doc -->
572 * <!-- end-user-doc -->
573 * @generated
574 */
575 private EClass inlinePredicateAttrributesEClass = null;
576
577 /**
578 * <!-- begin-user-doc -->
579 * <!-- end-user-doc -->
580 * @generated
581 */
582 private EClass aggregationOperatorEClass = null;
583
584 /**
585 * <!-- begin-user-doc -->
586 * <!-- end-user-doc -->
587 * @generated
588 */
589 private EClass problemEClass = null;
590
591 /**
592 * <!-- begin-user-doc -->
593 * <!-- end-user-doc -->
594 * @generated
595 */
596 private EClass typedStarArgumentEClass = null;
597
598 /**
599 * <!-- begin-user-doc -->
600 * <!-- end-user-doc -->
601 * @generated
602 */
603 private EClass typedVariableArgumentEClass = null;
604
605 /**
606 * <!-- begin-user-doc -->
607 * <!-- end-user-doc -->
608 * @generated
609 */
610 private EClass unnamedErrorPredicateDefintionEClass = null;
611
612 /**
613 * <!-- begin-user-doc -->
614 * <!-- end-user-doc -->
615 * @generated
616 */
617 private EClass objectiveDeclarationEClass = null;
618
619 /**
620 * <!-- begin-user-doc -->
621 * <!-- end-user-doc -->
622 * @generated
623 */
624 private EClass scopeDeclarationEClass = null;
625
626 /**
627 * <!-- begin-user-doc -->
628 * <!-- end-user-doc -->
629 * @generated
630 */
631 private EClass exactScopeEClass = null;
632
633 /**
634 * <!-- begin-user-doc -->
635 * <!-- end-user-doc -->
636 * @generated
637 */
638 private EClass boundedScopeEClass = null;
639
640 /**
641 * <!-- begin-user-doc -->
642 * <!-- end-user-doc -->
643 * @generated
644 */
645 private EClass lowerBoundedScopeEClass = null;
646
647 /**
648 * <!-- begin-user-doc -->
649 * <!-- end-user-doc -->
650 * @generated
651 */
652 private EClass namespaceImportEClass = null;
653
654 /**
655 * <!-- begin-user-doc -->
656 * <!-- end-user-doc -->
657 * @generated
658 */
659 private EClass importEClass = null;
660
661 /**
662 * <!-- begin-user-doc -->
663 * <!-- end-user-doc -->
664 * @generated
665 */
666 private EClass uriImportEClass = null;
667
668 /**
669 * <!-- begin-user-doc -->
670 * <!-- end-user-doc -->
671 * @generated
672 */
673 private EEnum unaryOperatorEEnum = null;
674
675 /**
676 * <!-- begin-user-doc -->
677 * <!-- end-user-doc -->
678 * @generated
679 */
680 private EEnum binaryOperatorEEnum = null;
681
682 /**
683 * <!-- begin-user-doc -->
684 * <!-- end-user-doc -->
685 * @generated
686 */
687 private EEnum logicValueEEnum = null;
688
689 /**
690 * <!-- begin-user-doc -->
691 * <!-- end-user-doc -->
692 * @generated
693 */
694 private EEnum objectiveKindEEnum = null;
695
696 /**
697 * <!-- begin-user-doc -->
698 * <!-- end-user-doc -->
699 * @generated
700 */
701 private EEnum attributeKindEEnum = null;
702
703 /**
704 * Creates an instance of the model <b>Package</b>, registered with
705 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
706 * package URI value.
707 * <p>Note: the correct way to create the package is via the static
708 * factory method {@link #init init()}, which also performs
709 * initialization of the package, or returns the registered package,
710 * if one already exists.
711 * <!-- begin-user-doc -->
712 * <!-- end-user-doc -->
713 * @see org.eclipse.emf.ecore.EPackage.Registry
714 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#eNS_URI
715 * @see #init()
716 * @generated
717 */
718 private SolverLanguagePackageImpl() {
719 super(eNS_URI, SolverLanguageFactory.eINSTANCE);
720 }
721
722 /**
723 * <!-- begin-user-doc -->
724 * <!-- end-user-doc -->
725 * @generated
726 */
727 private static boolean isInited = false;
728
729 /**
730 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
731 *
732 * <p>This method is used to initialize {@link SolverLanguagePackage#eINSTANCE} when that field is accessed.
733 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
734 * <!-- begin-user-doc -->
735 * <!-- end-user-doc -->
736 * @see #eNS_URI
737 * @see #createPackageContents()
738 * @see #initializePackageContents()
739 * @generated
740 */
741 public static SolverLanguagePackage init() {
742 if (isInited)
743 return (SolverLanguagePackage) EPackage.Registry.INSTANCE.getEPackage(SolverLanguagePackage.eNS_URI);
744
745 // Obtain or create and register package
746 Object registeredSolverLanguagePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
747 SolverLanguagePackageImpl theSolverLanguagePackage = registeredSolverLanguagePackage instanceof SolverLanguagePackageImpl
748 ? (SolverLanguagePackageImpl) registeredSolverLanguagePackage
749 : new SolverLanguagePackageImpl();
750
751 isInited = true;
752
753 // Create package meta-data objects
754 theSolverLanguagePackage.createPackageContents();
755
756 // Initialize created meta-data
757 theSolverLanguagePackage.initializePackageContents();
758
759 // Mark meta-data to indicate it can't be changed
760 theSolverLanguagePackage.freeze();
761
762 // Update the registry and return the package
763 EPackage.Registry.INSTANCE.put(SolverLanguagePackage.eNS_URI, theSolverLanguagePackage);
764 return theSolverLanguagePackage;
765 }
766
767 /**
768 * <!-- begin-user-doc -->
769 * <!-- end-user-doc -->
770 * @generated
771 */
772 public EClass getPathComponent() {
773 return pathComponentEClass;
774 }
775
776 /**
777 * <!-- begin-user-doc -->
778 * <!-- end-user-doc -->
779 * @generated
780 */
781 public EReference getPathComponent_Symbol() {
782 return (EReference) pathComponentEClass.getEStructuralFeatures().get(0);
783 }
784
785 /**
786 * <!-- begin-user-doc -->
787 * <!-- end-user-doc -->
788 * @generated
789 */
790 public EAttribute getPathComponent_Inverse() {
791 return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(1);
792 }
793
794 /**
795 * <!-- begin-user-doc -->
796 * <!-- end-user-doc -->
797 * @generated
798 */
799 public EAttribute getPathComponent_TransitiveClosure() {
800 return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(2);
801 }
802
803 /**
804 * <!-- begin-user-doc -->
805 * <!-- end-user-doc -->
806 * @generated
807 */
808 public EAttribute getPathComponent_ReflexiveTransitiveClosure() {
809 return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(3);
810 }
811
812 /**
813 * <!-- begin-user-doc -->
814 * <!-- end-user-doc -->
815 * @generated
816 */
817 public EClass getSymbol() {
818 return symbolEClass;
819 }
820
821 /**
822 * <!-- begin-user-doc -->
823 * <!-- end-user-doc -->
824 * @generated
825 */
826 public EAttribute getSymbol_Name() {
827 return (EAttribute) symbolEClass.getEStructuralFeatures().get(0);
828 }
829
830 /**
831 * <!-- begin-user-doc -->
832 * <!-- end-user-doc -->
833 * @generated
834 */
835 public EClass getCall() {
836 return callEClass;
837 }
838
839 /**
840 * <!-- begin-user-doc -->
841 * <!-- end-user-doc -->
842 * @generated
843 */
844 public EReference getCall_Functor() {
845 return (EReference) callEClass.getEStructuralFeatures().get(0);
846 }
847
848 /**
849 * <!-- begin-user-doc -->
850 * <!-- end-user-doc -->
851 * @generated
852 */
853 public EReference getCall_ArgumentList() {
854 return (EReference) callEClass.getEStructuralFeatures().get(1);
855 }
856
857 /**
858 * <!-- begin-user-doc -->
859 * <!-- end-user-doc -->
860 * @generated
861 */
862 public EClass getReference() {
863 return referenceEClass;
864 }
865
866 /**
867 * <!-- begin-user-doc -->
868 * <!-- end-user-doc -->
869 * @generated
870 */
871 public EReference getReference_Components() {
872 return (EReference) referenceEClass.getEStructuralFeatures().get(0);
873 }
874
875 /**
876 * <!-- begin-user-doc -->
877 * <!-- end-user-doc -->
878 * @generated
879 */
880 public EClass getExpression() {
881 return expressionEClass;
882 }
883
884 /**
885 * <!-- begin-user-doc -->
886 * <!-- end-user-doc -->
887 * @generated
888 */
889 public EReference getExpression_ExistsVariables() {
890 return (EReference) expressionEClass.getEStructuralFeatures().get(0);
891 }
892
893 /**
894 * <!-- begin-user-doc -->
895 * <!-- end-user-doc -->
896 * @generated
897 */
898 public EClass getArgument() {
899 return argumentEClass;
900 }
901
902 /**
903 * <!-- begin-user-doc -->
904 * <!-- end-user-doc -->
905 * @generated
906 */
907 public EClass getArgumentList() {
908 return argumentListEClass;
909 }
910
911 /**
912 * <!-- begin-user-doc -->
913 * <!-- end-user-doc -->
914 * @generated
915 */
916 public EReference getArgumentList_Arguments() {
917 return (EReference) argumentListEClass.getEStructuralFeatures().get(0);
918 }
919
920 /**
921 * <!-- begin-user-doc -->
922 * <!-- end-user-doc -->
923 * @generated
924 */
925 public EClass getExpressionArgument() {
926 return expressionArgumentEClass;
927 }
928
929 /**
930 * <!-- begin-user-doc -->
931 * <!-- end-user-doc -->
932 * @generated
933 */
934 public EReference getExpressionArgument_Expression() {
935 return (EReference) expressionArgumentEClass.getEStructuralFeatures().get(0);
936 }
937
938 /**
939 * <!-- begin-user-doc -->
940 * <!-- end-user-doc -->
941 * @generated
942 */
943 public EClass getStarArgument() {
944 return starArgumentEClass;
945 }
946
947 /**
948 * <!-- begin-user-doc -->
949 * <!-- end-user-doc -->
950 * @generated
951 */
952 public EClass getTypedArgument() {
953 return typedArgumentEClass;
954 }
955
956 /**
957 * <!-- begin-user-doc -->
958 * <!-- end-user-doc -->
959 * @generated
960 */
961 public EReference getTypedArgument_TypeReference() {
962 return (EReference) typedArgumentEClass.getEStructuralFeatures().get(0);
963 }
964
965 /**
966 * <!-- begin-user-doc -->
967 * <!-- end-user-doc -->
968 * @generated
969 */
970 public EClass getMultiaryExpession() {
971 return multiaryExpessionEClass;
972 }
973
974 /**
975 * <!-- begin-user-doc -->
976 * <!-- end-user-doc -->
977 * @generated
978 */
979 public EReference getMultiaryExpession_Children() {
980 return (EReference) multiaryExpessionEClass.getEStructuralFeatures().get(0);
981 }
982
983 /**
984 * <!-- begin-user-doc -->
985 * <!-- end-user-doc -->
986 * @generated
987 */
988 public EClass getVariable() {
989 return variableEClass;
990 }
991
992 /**
993 * <!-- begin-user-doc -->
994 * <!-- end-user-doc -->
995 * @generated
996 */
997 public EReference getVariable_TypeReference() {
998 return (EReference) variableEClass.getEStructuralFeatures().get(0);
999 }
1000
1001 /**
1002 * <!-- begin-user-doc -->
1003 * <!-- end-user-doc -->
1004 * @generated
1005 */
1006 public EClass getUnaryExpression() {
1007 return unaryExpressionEClass;
1008 }
1009
1010 /**
1011 * <!-- begin-user-doc -->
1012 * <!-- end-user-doc -->
1013 * @generated
1014 */
1015 public EReference getUnaryExpression_Body() {
1016 return (EReference) unaryExpressionEClass.getEStructuralFeatures().get(0);
1017 }
1018
1019 /**
1020 * <!-- begin-user-doc -->
1021 * <!-- end-user-doc -->
1022 * @generated
1023 */
1024 public EAttribute getUnaryExpression_Op() {
1025 return (EAttribute) unaryExpressionEClass.getEStructuralFeatures().get(1);
1026 }
1027
1028 /**
1029 * <!-- begin-user-doc -->
1030 * <!-- end-user-doc -->
1031 * @generated
1032 */
1033 public EClass getBinaryExpression() {
1034 return binaryExpressionEClass;
1035 }
1036
1037 /**
1038 * <!-- begin-user-doc -->
1039 * <!-- end-user-doc -->
1040 * @generated
1041 */
1042 public EAttribute getBinaryExpression_Op() {
1043 return (EAttribute) binaryExpressionEClass.getEStructuralFeatures().get(0);
1044 }
1045
1046 /**
1047 * <!-- begin-user-doc -->
1048 * <!-- end-user-doc -->
1049 * @generated
1050 */
1051 public EReference getBinaryExpression_Left() {
1052 return (EReference) binaryExpressionEClass.getEStructuralFeatures().get(1);
1053 }
1054
1055 /**
1056 * <!-- begin-user-doc -->
1057 * <!-- end-user-doc -->
1058 * @generated
1059 */
1060 public EReference getBinaryExpression_Right() {
1061 return (EReference) binaryExpressionEClass.getEStructuralFeatures().get(2);
1062 }
1063
1064 /**
1065 * <!-- begin-user-doc -->
1066 * <!-- end-user-doc -->
1067 * @generated
1068 */
1069 public EClass getDisjunction() {
1070 return disjunctionEClass;
1071 }
1072
1073 /**
1074 * <!-- begin-user-doc -->
1075 * <!-- end-user-doc -->
1076 * @generated
1077 */
1078 public EClass getConjunction() {
1079 return conjunctionEClass;
1080 }
1081
1082 /**
1083 * <!-- begin-user-doc -->
1084 * <!-- end-user-doc -->
1085 * @generated
1086 */
1087 public EClass getConditionalExpression() {
1088 return conditionalExpressionEClass;
1089 }
1090
1091 /**
1092 * <!-- begin-user-doc -->
1093 * <!-- end-user-doc -->
1094 * @generated
1095 */
1096 public EReference getConditionalExpression_Condition() {
1097 return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(0);
1098 }
1099
1100 /**
1101 * <!-- begin-user-doc -->
1102 * <!-- end-user-doc -->
1103 * @generated
1104 */
1105 public EReference getConditionalExpression_Then() {
1106 return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(1);
1107 }
1108
1109 /**
1110 * <!-- begin-user-doc -->
1111 * <!-- end-user-doc -->
1112 * @generated
1113 */
1114 public EReference getConditionalExpression_Else() {
1115 return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(2);
1116 }
1117
1118 /**
1119 * <!-- begin-user-doc -->
1120 * <!-- end-user-doc -->
1121 * @generated
1122 */
1123 public EClass getSwitch() {
1124 return switchEClass;
1125 }
1126
1127 /**
1128 * <!-- begin-user-doc -->
1129 * <!-- end-user-doc -->
1130 * @generated
1131 */
1132 public EReference getSwitch_Cases() {
1133 return (EReference) switchEClass.getEStructuralFeatures().get(0);
1134 }
1135
1136 /**
1137 * <!-- begin-user-doc -->
1138 * <!-- end-user-doc -->
1139 * @generated
1140 */
1141 public EClass getCase() {
1142 return caseEClass;
1143 }
1144
1145 /**
1146 * <!-- begin-user-doc -->
1147 * <!-- end-user-doc -->
1148 * @generated
1149 */
1150 public EReference getCase_Condition() {
1151 return (EReference) caseEClass.getEStructuralFeatures().get(0);
1152 }
1153
1154 /**
1155 * <!-- begin-user-doc -->
1156 * <!-- end-user-doc -->
1157 * @generated
1158 */
1159 public EReference getCase_Body() {
1160 return (EReference) caseEClass.getEStructuralFeatures().get(1);
1161 }
1162
1163 /**
1164 * <!-- begin-user-doc -->
1165 * <!-- end-user-doc -->
1166 * @generated
1167 */
1168 public EClass getLetExpression() {
1169 return letExpressionEClass;
1170 }
1171
1172 /**
1173 * <!-- begin-user-doc -->
1174 * <!-- end-user-doc -->
1175 * @generated
1176 */
1177 public EReference getLetExpression_Bindings() {
1178 return (EReference) letExpressionEClass.getEStructuralFeatures().get(0);
1179 }
1180
1181 /**
1182 * <!-- begin-user-doc -->
1183 * <!-- end-user-doc -->
1184 * @generated
1185 */
1186 public EReference getLetExpression_Body() {
1187 return (EReference) letExpressionEClass.getEStructuralFeatures().get(1);
1188 }
1189
1190 /**
1191 * <!-- begin-user-doc -->
1192 * <!-- end-user-doc -->
1193 * @generated
1194 */
1195 public EClass getLetBinding() {
1196 return letBindingEClass;
1197 }
1198
1199 /**
1200 * <!-- begin-user-doc -->
1201 * <!-- end-user-doc -->
1202 * @generated
1203 */
1204 public EReference getLetBinding_Value() {
1205 return (EReference) letBindingEClass.getEStructuralFeatures().get(0);
1206 }
1207
1208 /**
1209 * <!-- begin-user-doc -->
1210 * <!-- end-user-doc -->
1211 * @generated
1212 */
1213 public EReference getLetBinding_Variable() {
1214 return (EReference) letBindingEClass.getEStructuralFeatures().get(1);
1215 }
1216
1217 /**
1218 * <!-- begin-user-doc -->
1219 * <!-- end-user-doc -->
1220 * @generated
1221 */
1222 public EAttribute getLetBinding_Name() {
1223 return (EAttribute) letBindingEClass.getEStructuralFeatures().get(2);
1224 }
1225
1226 /**
1227 * <!-- begin-user-doc -->
1228 * <!-- end-user-doc -->
1229 * @generated
1230 */
1231 public EReference getLetBinding_Type() {
1232 return (EReference) letBindingEClass.getEStructuralFeatures().get(3);
1233 }
1234
1235 /**
1236 * <!-- begin-user-doc -->
1237 * <!-- end-user-doc -->
1238 * @generated
1239 */
1240 public EClass getLiteral() {
1241 return literalEClass;
1242 }
1243
1244 /**
1245 * <!-- begin-user-doc -->
1246 * <!-- end-user-doc -->
1247 * @generated
1248 */
1249 public EClass getIntLiteral() {
1250 return intLiteralEClass;
1251 }
1252
1253 /**
1254 * <!-- begin-user-doc -->
1255 * <!-- end-user-doc -->
1256 * @generated
1257 */
1258 public EAttribute getIntLiteral_Value() {
1259 return (EAttribute) intLiteralEClass.getEStructuralFeatures().get(0);
1260 }
1261
1262 /**
1263 * <!-- begin-user-doc -->
1264 * <!-- end-user-doc -->
1265 * @generated
1266 */
1267 public EClass getRealLiteral() {
1268 return realLiteralEClass;
1269 }
1270
1271 /**
1272 * <!-- begin-user-doc -->
1273 * <!-- end-user-doc -->
1274 * @generated
1275 */
1276 public EAttribute getRealLiteral_Value() {
1277 return (EAttribute) realLiteralEClass.getEStructuralFeatures().get(0);
1278 }
1279
1280 /**
1281 * <!-- begin-user-doc -->
1282 * <!-- end-user-doc -->
1283 * @generated
1284 */
1285 public EClass getStringLiteral() {
1286 return stringLiteralEClass;
1287 }
1288
1289 /**
1290 * <!-- begin-user-doc -->
1291 * <!-- end-user-doc -->
1292 * @generated
1293 */
1294 public EAttribute getStringLiteral_Value() {
1295 return (EAttribute) stringLiteralEClass.getEStructuralFeatures().get(0);
1296 }
1297
1298 /**
1299 * <!-- begin-user-doc -->
1300 * <!-- end-user-doc -->
1301 * @generated
1302 */
1303 public EClass getLogicLiteral() {
1304 return logicLiteralEClass;
1305 }
1306
1307 /**
1308 * <!-- begin-user-doc -->
1309 * <!-- end-user-doc -->
1310 * @generated
1311 */
1312 public EAttribute getLogicLiteral_Value() {
1313 return (EAttribute) logicLiteralEClass.getEStructuralFeatures().get(0);
1314 }
1315
1316 /**
1317 * <!-- begin-user-doc -->
1318 * <!-- end-user-doc -->
1319 * @generated
1320 */
1321 public EClass getEmptyLiteral() {
1322 return emptyLiteralEClass;
1323 }
1324
1325 /**
1326 * <!-- begin-user-doc -->
1327 * <!-- end-user-doc -->
1328 * @generated
1329 */
1330 public EClass getCastExpression() {
1331 return castExpressionEClass;
1332 }
1333
1334 /**
1335 * <!-- begin-user-doc -->
1336 * <!-- end-user-doc -->
1337 * @generated
1338 */
1339 public EReference getCastExpression_Body() {
1340 return (EReference) castExpressionEClass.getEStructuralFeatures().get(0);
1341 }
1342
1343 /**
1344 * <!-- begin-user-doc -->
1345 * <!-- end-user-doc -->
1346 * @generated
1347 */
1348 public EReference getCastExpression_TargetType() {
1349 return (EReference) castExpressionEClass.getEStructuralFeatures().get(1);
1350 }
1351
1352 /**
1353 * <!-- begin-user-doc -->
1354 * <!-- end-user-doc -->
1355 * @generated
1356 */
1357 public EClass getAggregateExpression() {
1358 return aggregateExpressionEClass;
1359 }
1360
1361 /**
1362 * <!-- begin-user-doc -->
1363 * <!-- end-user-doc -->
1364 * @generated
1365 */
1366 public EReference getAggregateExpression_ForallVariables() {
1367 return (EReference) aggregateExpressionEClass.getEStructuralFeatures().get(0);
1368 }
1369
1370 /**
1371 * <!-- begin-user-doc -->
1372 * <!-- end-user-doc -->
1373 * @generated
1374 */
1375 public EReference getAggregateExpression_Condition() {
1376 return (EReference) aggregateExpressionEClass.getEStructuralFeatures().get(1);
1377 }
1378
1379 /**
1380 * <!-- begin-user-doc -->
1381 * <!-- end-user-doc -->
1382 * @generated
1383 */
1384 public EClass getCount() {
1385 return countEClass;
1386 }
1387
1388 /**
1389 * <!-- begin-user-doc -->
1390 * <!-- end-user-doc -->
1391 * @generated
1392 */
1393 public EClass getAggregation() {
1394 return aggregationEClass;
1395 }
1396
1397 /**
1398 * <!-- begin-user-doc -->
1399 * <!-- end-user-doc -->
1400 * @generated
1401 */
1402 public EReference getAggregation_Value() {
1403 return (EReference) aggregationEClass.getEStructuralFeatures().get(0);
1404 }
1405
1406 /**
1407 * <!-- begin-user-doc -->
1408 * <!-- end-user-doc -->
1409 * @generated
1410 */
1411 public EReference getAggregation_Op() {
1412 return (EReference) aggregationEClass.getEStructuralFeatures().get(1);
1413 }
1414
1415 /**
1416 * <!-- begin-user-doc -->
1417 * <!-- end-user-doc -->
1418 * @generated
1419 */
1420 public EClass getForall() {
1421 return forallEClass;
1422 }
1423
1424 /**
1425 * <!-- begin-user-doc -->
1426 * <!-- end-user-doc -->
1427 * @generated
1428 */
1429 public EReference getForall_Body() {
1430 return (EReference) forallEClass.getEStructuralFeatures().get(0);
1431 }
1432
1433 /**
1434 * <!-- begin-user-doc -->
1435 * <!-- end-user-doc -->
1436 * @generated
1437 */
1438 public EClass getTypeReference() {
1439 return typeReferenceEClass;
1440 }
1441
1442 /**
1443 * <!-- begin-user-doc -->
1444 * <!-- end-user-doc -->
1445 * @generated
1446 */
1447 public EAttribute getTypeReference_ForceObjectType() {
1448 return (EAttribute) typeReferenceEClass.getEStructuralFeatures().get(0);
1449 }
1450
1451 /**
1452 * <!-- begin-user-doc -->
1453 * <!-- end-user-doc -->
1454 * @generated
1455 */
1456 public EReference getTypeReference_Type() {
1457 return (EReference) typeReferenceEClass.getEStructuralFeatures().get(1);
1458 }
1459
1460 /**
1461 * <!-- begin-user-doc -->
1462 * <!-- end-user-doc -->
1463 * @generated
1464 */
1465 public EClass getInfinityLiteral() {
1466 return infinityLiteralEClass;
1467 }
1468
1469 /**
1470 * <!-- begin-user-doc -->
1471 * <!-- end-user-doc -->
1472 * @generated
1473 */
1474 public EClass getInterval() {
1475 return intervalEClass;
1476 }
1477
1478 /**
1479 * <!-- begin-user-doc -->
1480 * <!-- end-user-doc -->
1481 * @generated
1482 */
1483 public EReference getInterval_LowerBound() {
1484 return (EReference) intervalEClass.getEStructuralFeatures().get(0);
1485 }
1486
1487 /**
1488 * <!-- begin-user-doc -->
1489 * <!-- end-user-doc -->
1490 * @generated
1491 */
1492 public EReference getInterval_UpperBound() {
1493 return (EReference) intervalEClass.getEStructuralFeatures().get(1);
1494 }
1495
1496 /**
1497 * <!-- begin-user-doc -->
1498 * <!-- end-user-doc -->
1499 * @generated
1500 */
1501 public EClass getFunctor() {
1502 return functorEClass;
1503 }
1504
1505 /**
1506 * <!-- begin-user-doc -->
1507 * <!-- end-user-doc -->
1508 * @generated
1509 */
1510 public EReference getFunctor_Parameters() {
1511 return (EReference) functorEClass.getEStructuralFeatures().get(0);
1512 }
1513
1514 /**
1515 * <!-- begin-user-doc -->
1516 * <!-- end-user-doc -->
1517 * @generated
1518 */
1519 public EClass getRelation() {
1520 return relationEClass;
1521 }
1522
1523 /**
1524 * <!-- begin-user-doc -->
1525 * <!-- end-user-doc -->
1526 * @generated
1527 */
1528 public EClass getBaseRelation() {
1529 return baseRelationEClass;
1530 }
1531
1532 /**
1533 * <!-- begin-user-doc -->
1534 * <!-- end-user-doc -->
1535 * @generated
1536 */
1537 public EClass getPredicate() {
1538 return predicateEClass;
1539 }
1540
1541 /**
1542 * <!-- begin-user-doc -->
1543 * <!-- end-user-doc -->
1544 * @generated
1545 */
1546 public EClass getDatatype() {
1547 return datatypeEClass;
1548 }
1549
1550 /**
1551 * <!-- begin-user-doc -->
1552 * <!-- end-user-doc -->
1553 * @generated
1554 */
1555 public EClass getFunction() {
1556 return functionEClass;
1557 }
1558
1559 /**
1560 * <!-- begin-user-doc -->
1561 * <!-- end-user-doc -->
1562 * @generated
1563 */
1564 public EReference getFunction_ResultType() {
1565 return (EReference) functionEClass.getEStructuralFeatures().get(0);
1566 }
1567
1568 /**
1569 * <!-- begin-user-doc -->
1570 * <!-- end-user-doc -->
1571 * @generated
1572 */
1573 public EClass getMetric() {
1574 return metricEClass;
1575 }
1576
1577 /**
1578 * <!-- begin-user-doc -->
1579 * <!-- end-user-doc -->
1580 * @generated
1581 */
1582 public EClass getOperator() {
1583 return operatorEClass;
1584 }
1585
1586 /**
1587 * <!-- begin-user-doc -->
1588 * <!-- end-user-doc -->
1589 * @generated
1590 */
1591 public EClass getNode() {
1592 return nodeEClass;
1593 }
1594
1595 /**
1596 * <!-- begin-user-doc -->
1597 * <!-- end-user-doc -->
1598 * @generated
1599 */
1600 public EAttribute getNode_Named() {
1601 return (EAttribute) nodeEClass.getEStructuralFeatures().get(0);
1602 }
1603
1604 /**
1605 * <!-- begin-user-doc -->
1606 * <!-- end-user-doc -->
1607 * @generated
1608 */
1609 public EClass getStatement() {
1610 return statementEClass;
1611 }
1612
1613 /**
1614 * <!-- begin-user-doc -->
1615 * <!-- end-user-doc -->
1616 * @generated
1617 */
1618 public EClass getAbstractAssertion() {
1619 return abstractAssertionEClass;
1620 }
1621
1622 /**
1623 * <!-- begin-user-doc -->
1624 * <!-- end-user-doc -->
1625 * @generated
1626 */
1627 public EReference getAbstractAssertion_Expression() {
1628 return (EReference) abstractAssertionEClass.getEStructuralFeatures().get(0);
1629 }
1630
1631 /**
1632 * <!-- begin-user-doc -->
1633 * <!-- end-user-doc -->
1634 * @generated
1635 */
1636 public EReference getAbstractAssertion_Range() {
1637 return (EReference) abstractAssertionEClass.getEStructuralFeatures().get(1);
1638 }
1639
1640 /**
1641 * <!-- begin-user-doc -->
1642 * <!-- end-user-doc -->
1643 * @generated
1644 */
1645 public EClass getFunctorDefiniton() {
1646 return functorDefinitonEClass;
1647 }
1648
1649 /**
1650 * <!-- begin-user-doc -->
1651 * <!-- end-user-doc -->
1652 * @generated
1653 */
1654 public EReference getFunctorDefiniton_Head() {
1655 return (EReference) functorDefinitonEClass.getEStructuralFeatures().get(0);
1656 }
1657
1658 /**
1659 * <!-- begin-user-doc -->
1660 * <!-- end-user-doc -->
1661 * @generated
1662 */
1663 public EReference getFunctorDefiniton_Body() {
1664 return (EReference) functorDefinitonEClass.getEStructuralFeatures().get(1);
1665 }
1666
1667 /**
1668 * <!-- begin-user-doc -->
1669 * <!-- end-user-doc -->
1670 * @generated
1671 */
1672 public EClass getPredicateDefinition() {
1673 return predicateDefinitionEClass;
1674 }
1675
1676 /**
1677 * <!-- begin-user-doc -->
1678 * <!-- end-user-doc -->
1679 * @generated
1680 */
1681 public EClass getFunctionDefinition() {
1682 return functionDefinitionEClass;
1683 }
1684
1685 /**
1686 * <!-- begin-user-doc -->
1687 * <!-- end-user-doc -->
1688 * @generated
1689 */
1690 public EReference getFunctionDefinition_ResultType() {
1691 return (EReference) functionDefinitionEClass.getEStructuralFeatures().get(0);
1692 }
1693
1694 /**
1695 * <!-- begin-user-doc -->
1696 * <!-- end-user-doc -->
1697 * @generated
1698 */
1699 public EClass getAttribute() {
1700 return attributeEClass;
1701 }
1702
1703 /**
1704 * <!-- begin-user-doc -->
1705 * <!-- end-user-doc -->
1706 * @generated
1707 */
1708 public EReference getAttribute_Target() {
1709 return (EReference) attributeEClass.getEStructuralFeatures().get(0);
1710 }
1711
1712 /**
1713 * <!-- begin-user-doc -->
1714 * <!-- end-user-doc -->
1715 * @generated
1716 */
1717 public EAttribute getAttribute_Kind() {
1718 return (EAttribute) attributeEClass.getEStructuralFeatures().get(1);
1719 }
1720
1721 /**
1722 * <!-- begin-user-doc -->
1723 * <!-- end-user-doc -->
1724 * @generated
1725 */
1726 public EClass getExternDeclaration() {
1727 return externDeclarationEClass;
1728 }
1729
1730 /**
1731 * <!-- begin-user-doc -->
1732 * <!-- end-user-doc -->
1733 * @generated
1734 */
1735 public EAttribute getExternDeclaration_Name() {
1736 return (EAttribute) externDeclarationEClass.getEStructuralFeatures().get(0);
1737 }
1738
1739 /**
1740 * <!-- begin-user-doc -->
1741 * <!-- end-user-doc -->
1742 * @generated
1743 */
1744 public EClass getExternFunctorDeclaration() {
1745 return externFunctorDeclarationEClass;
1746 }
1747
1748 /**
1749 * <!-- begin-user-doc -->
1750 * <!-- end-user-doc -->
1751 * @generated
1752 */
1753 public EReference getExternFunctorDeclaration_ArgumentList() {
1754 return (EReference) externFunctorDeclarationEClass.getEStructuralFeatures().get(0);
1755 }
1756
1757 /**
1758 * <!-- begin-user-doc -->
1759 * <!-- end-user-doc -->
1760 * @generated
1761 */
1762 public EClass getExternPredicateDeclaration() {
1763 return externPredicateDeclarationEClass;
1764 }
1765
1766 /**
1767 * <!-- begin-user-doc -->
1768 * <!-- end-user-doc -->
1769 * @generated
1770 */
1771 public EClass getExternFunctionDeclaration() {
1772 return externFunctionDeclarationEClass;
1773 }
1774
1775 /**
1776 * <!-- begin-user-doc -->
1777 * <!-- end-user-doc -->
1778 * @generated
1779 */
1780 public EReference getExternFunctionDeclaration_ResultType() {
1781 return (EReference) externFunctionDeclarationEClass.getEStructuralFeatures().get(0);
1782 }
1783
1784 /**
1785 * <!-- begin-user-doc -->
1786 * <!-- end-user-doc -->
1787 * @generated
1788 */
1789 public EClass getExternAggregationOperatorDeclaration() {
1790 return externAggregationOperatorDeclarationEClass;
1791 }
1792
1793 /**
1794 * <!-- begin-user-doc -->
1795 * <!-- end-user-doc -->
1796 * @generated
1797 */
1798 public EReference getExternAggregationOperatorDeclaration_ArgumentType() {
1799 return (EReference) externAggregationOperatorDeclarationEClass.getEStructuralFeatures().get(0);
1800 }
1801
1802 /**
1803 * <!-- begin-user-doc -->
1804 * <!-- end-user-doc -->
1805 * @generated
1806 */
1807 public EReference getExternAggregationOperatorDeclaration_ResultType() {
1808 return (EReference) externAggregationOperatorDeclarationEClass.getEStructuralFeatures().get(1);
1809 }
1810
1811 /**
1812 * <!-- begin-user-doc -->
1813 * <!-- end-user-doc -->
1814 * @generated
1815 */
1816 public EClass getExternDatatypeDeclaration() {
1817 return externDatatypeDeclarationEClass;
1818 }
1819
1820 /**
1821 * <!-- begin-user-doc -->
1822 * <!-- end-user-doc -->
1823 * @generated
1824 */
1825 public EClass getClassDeclaration() {
1826 return classDeclarationEClass;
1827 }
1828
1829 /**
1830 * <!-- begin-user-doc -->
1831 * <!-- end-user-doc -->
1832 * @generated
1833 */
1834 public EReference getClassDeclaration_Fields() {
1835 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(0);
1836 }
1837
1838 /**
1839 * <!-- begin-user-doc -->
1840 * <!-- end-user-doc -->
1841 * @generated
1842 */
1843 public EAttribute getClassDeclaration_Name() {
1844 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(1);
1845 }
1846
1847 /**
1848 * <!-- begin-user-doc -->
1849 * <!-- end-user-doc -->
1850 * @generated
1851 */
1852 public EAttribute getClassDeclaration_Abstract() {
1853 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(2);
1854 }
1855
1856 /**
1857 * <!-- begin-user-doc -->
1858 * <!-- end-user-doc -->
1859 * @generated
1860 */
1861 public EReference getClassDeclaration_Supertypes() {
1862 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(3);
1863 }
1864
1865 /**
1866 * <!-- begin-user-doc -->
1867 * <!-- end-user-doc -->
1868 * @generated
1869 */
1870 public EAttribute getClassDeclaration_Root() {
1871 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(4);
1872 }
1873
1874 /**
1875 * <!-- begin-user-doc -->
1876 * <!-- end-user-doc -->
1877 * @generated
1878 */
1879 public EClass getEnumDeclaration() {
1880 return enumDeclarationEClass;
1881 }
1882
1883 /**
1884 * <!-- begin-user-doc -->
1885 * <!-- end-user-doc -->
1886 * @generated
1887 */
1888 public EReference getEnumDeclaration_Literals() {
1889 return (EReference) enumDeclarationEClass.getEStructuralFeatures().get(0);
1890 }
1891
1892 /**
1893 * <!-- begin-user-doc -->
1894 * <!-- end-user-doc -->
1895 * @generated
1896 */
1897 public EAttribute getEnumDeclaration_Name() {
1898 return (EAttribute) enumDeclarationEClass.getEStructuralFeatures().get(1);
1899 }
1900
1901 /**
1902 * <!-- begin-user-doc -->
1903 * <!-- end-user-doc -->
1904 * @generated
1905 */
1906 public EClass getEnumLiteral() {
1907 return enumLiteralEClass;
1908 }
1909
1910 /**
1911 * <!-- begin-user-doc -->
1912 * <!-- end-user-doc -->
1913 * @generated
1914 */
1915 public EAttribute getEnumLiteral_Name() {
1916 return (EAttribute) enumLiteralEClass.getEStructuralFeatures().get(0);
1917 }
1918
1919 /**
1920 * <!-- begin-user-doc -->
1921 * <!-- end-user-doc -->
1922 * @generated
1923 */
1924 public EClass getField() {
1925 return fieldEClass;
1926 }
1927
1928 /**
1929 * <!-- begin-user-doc -->
1930 * <!-- end-user-doc -->
1931 * @generated
1932 */
1933 public EAttribute getField_Containment() {
1934 return (EAttribute) fieldEClass.getEStructuralFeatures().get(0);
1935 }
1936
1937 /**
1938 * <!-- begin-user-doc -->
1939 * <!-- end-user-doc -->
1940 * @generated
1941 */
1942 public EAttribute getField_CrossReference() {
1943 return (EAttribute) fieldEClass.getEStructuralFeatures().get(1);
1944 }
1945
1946 /**
1947 * <!-- begin-user-doc -->
1948 * <!-- end-user-doc -->
1949 * @generated
1950 */
1951 public EReference getField_Opposite() {
1952 return (EReference) fieldEClass.getEStructuralFeatures().get(2);
1953 }
1954
1955 /**
1956 * <!-- begin-user-doc -->
1957 * <!-- end-user-doc -->
1958 * @generated
1959 */
1960 public EReference getField_Multiplicity() {
1961 return (EReference) fieldEClass.getEStructuralFeatures().get(3);
1962 }
1963
1964 /**
1965 * <!-- begin-user-doc -->
1966 * <!-- end-user-doc -->
1967 * @generated
1968 */
1969 public EReference getField_Type() {
1970 return (EReference) fieldEClass.getEStructuralFeatures().get(4);
1971 }
1972
1973 /**
1974 * <!-- begin-user-doc -->
1975 * <!-- end-user-doc -->
1976 * @generated
1977 */
1978 public EAttribute getField_Name() {
1979 return (EAttribute) fieldEClass.getEStructuralFeatures().get(5);
1980 }
1981
1982 /**
1983 * <!-- begin-user-doc -->
1984 * <!-- end-user-doc -->
1985 * @generated
1986 */
1987 public EClass getMultiplicity() {
1988 return multiplicityEClass;
1989 }
1990
1991 /**
1992 * <!-- begin-user-doc -->
1993 * <!-- end-user-doc -->
1994 * @generated
1995 */
1996 public EClass getDefaultAssertion() {
1997 return defaultAssertionEClass;
1998 }
1999
2000 /**
2001 * <!-- begin-user-doc -->
2002 * <!-- end-user-doc -->
2003 * @generated
2004 */
2005 public EClass getAssertion() {
2006 return assertionEClass;
2007 }
2008
2009 /**
2010 * <!-- begin-user-doc -->
2011 * <!-- end-user-doc -->
2012 * @generated
2013 */
2014 public EClass getUnboundedMultiplicity() {
2015 return unboundedMultiplicityEClass;
2016 }
2017
2018 /**
2019 * <!-- begin-user-doc -->
2020 * <!-- end-user-doc -->
2021 * @generated
2022 */
2023 public EClass getExactMultiplicity() {
2024 return exactMultiplicityEClass;
2025 }
2026
2027 /**
2028 * <!-- begin-user-doc -->
2029 * <!-- end-user-doc -->
2030 * @generated
2031 */
2032 public EAttribute getExactMultiplicity_Value() {
2033 return (EAttribute) exactMultiplicityEClass.getEStructuralFeatures().get(0);
2034 }
2035
2036 /**
2037 * <!-- begin-user-doc -->
2038 * <!-- end-user-doc -->
2039 * @generated
2040 */
2041 public EClass getBoundedMultiplicity() {
2042 return boundedMultiplicityEClass;
2043 }
2044
2045 /**
2046 * <!-- begin-user-doc -->
2047 * <!-- end-user-doc -->
2048 * @generated
2049 */
2050 public EAttribute getBoundedMultiplicity_LowerBound() {
2051 return (EAttribute) boundedMultiplicityEClass.getEStructuralFeatures().get(0);
2052 }
2053
2054 /**
2055 * <!-- begin-user-doc -->
2056 * <!-- end-user-doc -->
2057 * @generated
2058 */
2059 public EAttribute getBoundedMultiplicity_UpperBound() {
2060 return (EAttribute) boundedMultiplicityEClass.getEStructuralFeatures().get(1);
2061 }
2062
2063 /**
2064 * <!-- begin-user-doc -->
2065 * <!-- end-user-doc -->
2066 * @generated
2067 */
2068 public EClass getInlinePredicateAttrributes() {
2069 return inlinePredicateAttrributesEClass;
2070 }
2071
2072 /**
2073 * <!-- begin-user-doc -->
2074 * <!-- end-user-doc -->
2075 * @generated
2076 */
2077 public EAttribute getInlinePredicateAttrributes_Error() {
2078 return (EAttribute) inlinePredicateAttrributesEClass.getEStructuralFeatures().get(0);
2079 }
2080
2081 /**
2082 * <!-- begin-user-doc -->
2083 * <!-- end-user-doc -->
2084 * @generated
2085 */
2086 public EAttribute getInlinePredicateAttrributes_Functional() {
2087 return (EAttribute) inlinePredicateAttrributesEClass.getEStructuralFeatures().get(1);
2088 }
2089
2090 /**
2091 * <!-- begin-user-doc -->
2092 * <!-- end-user-doc -->
2093 * @generated
2094 */
2095 public EClass getAggregationOperator() {
2096 return aggregationOperatorEClass;
2097 }
2098
2099 /**
2100 * <!-- begin-user-doc -->
2101 * <!-- end-user-doc -->
2102 * @generated
2103 */
2104 public EReference getAggregationOperator_ArgumentType() {
2105 return (EReference) aggregationOperatorEClass.getEStructuralFeatures().get(0);
2106 }
2107
2108 /**
2109 * <!-- begin-user-doc -->
2110 * <!-- end-user-doc -->
2111 * @generated
2112 */
2113 public EReference getAggregationOperator_ResultType() {
2114 return (EReference) aggregationOperatorEClass.getEStructuralFeatures().get(1);
2115 }
2116
2117 /**
2118 * <!-- begin-user-doc -->
2119 * <!-- end-user-doc -->
2120 * @generated
2121 */
2122 public EClass getProblem() {
2123 return problemEClass;
2124 }
2125
2126 /**
2127 * <!-- begin-user-doc -->
2128 * <!-- end-user-doc -->
2129 * @generated
2130 */
2131 public EAttribute getProblem_Name() {
2132 return (EAttribute) problemEClass.getEStructuralFeatures().get(0);
2133 }
2134
2135 /**
2136 * <!-- begin-user-doc -->
2137 * <!-- end-user-doc -->
2138 * @generated
2139 */
2140 public EReference getProblem_Statements() {
2141 return (EReference) problemEClass.getEStructuralFeatures().get(1);
2142 }
2143
2144 /**
2145 * <!-- begin-user-doc -->
2146 * <!-- end-user-doc -->
2147 * @generated
2148 */
2149 public EReference getProblem_Symbols() {
2150 return (EReference) problemEClass.getEStructuralFeatures().get(2);
2151 }
2152
2153 /**
2154 * <!-- begin-user-doc -->
2155 * <!-- end-user-doc -->
2156 * @generated
2157 */
2158 public EReference getProblem_Imports() {
2159 return (EReference) problemEClass.getEStructuralFeatures().get(3);
2160 }
2161
2162 /**
2163 * <!-- begin-user-doc -->
2164 * <!-- end-user-doc -->
2165 * @generated
2166 */
2167 public EClass getTypedStarArgument() {
2168 return typedStarArgumentEClass;
2169 }
2170
2171 /**
2172 * <!-- begin-user-doc -->
2173 * <!-- end-user-doc -->
2174 * @generated
2175 */
2176 public EClass getTypedVariableArgument() {
2177 return typedVariableArgumentEClass;
2178 }
2179
2180 /**
2181 * <!-- begin-user-doc -->
2182 * <!-- end-user-doc -->
2183 * @generated
2184 */
2185 public EAttribute getTypedVariableArgument_Name() {
2186 return (EAttribute) typedVariableArgumentEClass.getEStructuralFeatures().get(0);
2187 }
2188
2189 /**
2190 * <!-- begin-user-doc -->
2191 * <!-- end-user-doc -->
2192 * @generated
2193 */
2194 public EClass getUnnamedErrorPredicateDefintion() {
2195 return unnamedErrorPredicateDefintionEClass;
2196 }
2197
2198 /**
2199 * <!-- begin-user-doc -->
2200 * <!-- end-user-doc -->
2201 * @generated
2202 */
2203 public EReference getUnnamedErrorPredicateDefintion_ArgumentList() {
2204 return (EReference) unnamedErrorPredicateDefintionEClass.getEStructuralFeatures().get(0);
2205 }
2206
2207 /**
2208 * <!-- begin-user-doc -->
2209 * <!-- end-user-doc -->
2210 * @generated
2211 */
2212 public EReference getUnnamedErrorPredicateDefintion_Body() {
2213 return (EReference) unnamedErrorPredicateDefintionEClass.getEStructuralFeatures().get(1);
2214 }
2215
2216 /**
2217 * <!-- begin-user-doc -->
2218 * <!-- end-user-doc -->
2219 * @generated
2220 */
2221 public EClass getObjectiveDeclaration() {
2222 return objectiveDeclarationEClass;
2223 }
2224
2225 /**
2226 * <!-- begin-user-doc -->
2227 * <!-- end-user-doc -->
2228 * @generated
2229 */
2230 public EAttribute getObjectiveDeclaration_Kind() {
2231 return (EAttribute) objectiveDeclarationEClass.getEStructuralFeatures().get(0);
2232 }
2233
2234 /**
2235 * <!-- begin-user-doc -->
2236 * <!-- end-user-doc -->
2237 * @generated
2238 */
2239 public EReference getObjectiveDeclaration_Objective() {
2240 return (EReference) objectiveDeclarationEClass.getEStructuralFeatures().get(1);
2241 }
2242
2243 /**
2244 * <!-- begin-user-doc -->
2245 * <!-- end-user-doc -->
2246 * @generated
2247 */
2248 public EClass getScopeDeclaration() {
2249 return scopeDeclarationEClass;
2250 }
2251
2252 /**
2253 * <!-- begin-user-doc -->
2254 * <!-- end-user-doc -->
2255 * @generated
2256 */
2257 public EReference getScopeDeclaration_Type() {
2258 return (EReference) scopeDeclarationEClass.getEStructuralFeatures().get(0);
2259 }
2260
2261 /**
2262 * <!-- begin-user-doc -->
2263 * <!-- end-user-doc -->
2264 * @generated
2265 */
2266 public EClass getExactScope() {
2267 return exactScopeEClass;
2268 }
2269
2270 /**
2271 * <!-- begin-user-doc -->
2272 * <!-- end-user-doc -->
2273 * @generated
2274 */
2275 public EAttribute getExactScope_Size() {
2276 return (EAttribute) exactScopeEClass.getEStructuralFeatures().get(0);
2277 }
2278
2279 /**
2280 * <!-- begin-user-doc -->
2281 * <!-- end-user-doc -->
2282 * @generated
2283 */
2284 public EClass getBoundedScope() {
2285 return boundedScopeEClass;
2286 }
2287
2288 /**
2289 * <!-- begin-user-doc -->
2290 * <!-- end-user-doc -->
2291 * @generated
2292 */
2293 public EAttribute getBoundedScope_LowerBound() {
2294 return (EAttribute) boundedScopeEClass.getEStructuralFeatures().get(0);
2295 }
2296
2297 /**
2298 * <!-- begin-user-doc -->
2299 * <!-- end-user-doc -->
2300 * @generated
2301 */
2302 public EAttribute getBoundedScope_UpperBound() {
2303 return (EAttribute) boundedScopeEClass.getEStructuralFeatures().get(1);
2304 }
2305
2306 /**
2307 * <!-- begin-user-doc -->
2308 * <!-- end-user-doc -->
2309 * @generated
2310 */
2311 public EClass getLowerBoundedScope() {
2312 return lowerBoundedScopeEClass;
2313 }
2314
2315 /**
2316 * <!-- begin-user-doc -->
2317 * <!-- end-user-doc -->
2318 * @generated
2319 */
2320 public EAttribute getLowerBoundedScope_LowerBound() {
2321 return (EAttribute) lowerBoundedScopeEClass.getEStructuralFeatures().get(0);
2322 }
2323
2324 /**
2325 * <!-- begin-user-doc -->
2326 * <!-- end-user-doc -->
2327 * @generated
2328 */
2329 public EClass getNamespaceImport() {
2330 return namespaceImportEClass;
2331 }
2332
2333 /**
2334 * <!-- begin-user-doc -->
2335 * <!-- end-user-doc -->
2336 * @generated
2337 */
2338 public EAttribute getNamespaceImport_ImportedNamespace() {
2339 return (EAttribute) namespaceImportEClass.getEStructuralFeatures().get(0);
2340 }
2341
2342 /**
2343 * <!-- begin-user-doc -->
2344 * <!-- end-user-doc -->
2345 * @generated
2346 */
2347 public EClass getImport() {
2348 return importEClass;
2349 }
2350
2351 /**
2352 * <!-- begin-user-doc -->
2353 * <!-- end-user-doc -->
2354 * @generated
2355 */
2356 public EAttribute getImport_Alias() {
2357 return (EAttribute) importEClass.getEStructuralFeatures().get(0);
2358 }
2359
2360 /**
2361 * <!-- begin-user-doc -->
2362 * <!-- end-user-doc -->
2363 * @generated
2364 */
2365 public EClass getUriImport() {
2366 return uriImportEClass;
2367 }
2368
2369 /**
2370 * <!-- begin-user-doc -->
2371 * <!-- end-user-doc -->
2372 * @generated
2373 */
2374 public EAttribute getUriImport_Uri() {
2375 return (EAttribute) uriImportEClass.getEStructuralFeatures().get(0);
2376 }
2377
2378 /**
2379 * <!-- begin-user-doc -->
2380 * <!-- end-user-doc -->
2381 * @generated
2382 */
2383 public EEnum getUnaryOperator() {
2384 return unaryOperatorEEnum;
2385 }
2386
2387 /**
2388 * <!-- begin-user-doc -->
2389 * <!-- end-user-doc -->
2390 * @generated
2391 */
2392 public EEnum getBinaryOperator() {
2393 return binaryOperatorEEnum;
2394 }
2395
2396 /**
2397 * <!-- begin-user-doc -->
2398 * <!-- end-user-doc -->
2399 * @generated
2400 */
2401 public EEnum getLogicValue() {
2402 return logicValueEEnum;
2403 }
2404
2405 /**
2406 * <!-- begin-user-doc -->
2407 * <!-- end-user-doc -->
2408 * @generated
2409 */
2410 public EEnum getObjectiveKind() {
2411 return objectiveKindEEnum;
2412 }
2413
2414 /**
2415 * <!-- begin-user-doc -->
2416 * <!-- end-user-doc -->
2417 * @generated
2418 */
2419 public EEnum getAttributeKind() {
2420 return attributeKindEEnum;
2421 }
2422
2423 /**
2424 * <!-- begin-user-doc -->
2425 * <!-- end-user-doc -->
2426 * @generated
2427 */
2428 public SolverLanguageFactory getSolverLanguageFactory() {
2429 return (SolverLanguageFactory) getEFactoryInstance();
2430 }
2431
2432 /**
2433 * <!-- begin-user-doc -->
2434 * <!-- end-user-doc -->
2435 * @generated
2436 */
2437 private boolean isCreated = false;
2438
2439 /**
2440 * Creates the meta-model objects for the package. This method is
2441 * guarded to have no affect on any invocation but its first.
2442 * <!-- begin-user-doc -->
2443 * <!-- end-user-doc -->
2444 * @generated
2445 */
2446 public void createPackageContents() {
2447 if (isCreated)
2448 return;
2449 isCreated = true;
2450
2451 // Create classes and their features
2452 pathComponentEClass = createEClass(PATH_COMPONENT);
2453 createEReference(pathComponentEClass, PATH_COMPONENT__SYMBOL);
2454 createEAttribute(pathComponentEClass, PATH_COMPONENT__INVERSE);
2455 createEAttribute(pathComponentEClass, PATH_COMPONENT__TRANSITIVE_CLOSURE);
2456 createEAttribute(pathComponentEClass, PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE);
2457
2458 symbolEClass = createEClass(SYMBOL);
2459 createEAttribute(symbolEClass, SYMBOL__NAME);
2460
2461 callEClass = createEClass(CALL);
2462 createEReference(callEClass, CALL__FUNCTOR);
2463 createEReference(callEClass, CALL__ARGUMENT_LIST);
2464
2465 referenceEClass = createEClass(REFERENCE);
2466 createEReference(referenceEClass, REFERENCE__COMPONENTS);
2467
2468 expressionEClass = createEClass(EXPRESSION);
2469 createEReference(expressionEClass, EXPRESSION__EXISTS_VARIABLES);
2470
2471 argumentEClass = createEClass(ARGUMENT);
2472
2473 argumentListEClass = createEClass(ARGUMENT_LIST);
2474 createEReference(argumentListEClass, ARGUMENT_LIST__ARGUMENTS);
2475
2476 expressionArgumentEClass = createEClass(EXPRESSION_ARGUMENT);
2477 createEReference(expressionArgumentEClass, EXPRESSION_ARGUMENT__EXPRESSION);
2478
2479 starArgumentEClass = createEClass(STAR_ARGUMENT);
2480
2481 typedArgumentEClass = createEClass(TYPED_ARGUMENT);
2482 createEReference(typedArgumentEClass, TYPED_ARGUMENT__TYPE_REFERENCE);
2483
2484 multiaryExpessionEClass = createEClass(MULTIARY_EXPESSION);
2485 createEReference(multiaryExpessionEClass, MULTIARY_EXPESSION__CHILDREN);
2486
2487 variableEClass = createEClass(VARIABLE);
2488 createEReference(variableEClass, VARIABLE__TYPE_REFERENCE);
2489
2490 unaryExpressionEClass = createEClass(UNARY_EXPRESSION);
2491 createEReference(unaryExpressionEClass, UNARY_EXPRESSION__BODY);
2492 createEAttribute(unaryExpressionEClass, UNARY_EXPRESSION__OP);
2493
2494 binaryExpressionEClass = createEClass(BINARY_EXPRESSION);
2495 createEAttribute(binaryExpressionEClass, BINARY_EXPRESSION__OP);
2496 createEReference(binaryExpressionEClass, BINARY_EXPRESSION__LEFT);
2497 createEReference(binaryExpressionEClass, BINARY_EXPRESSION__RIGHT);
2498
2499 disjunctionEClass = createEClass(DISJUNCTION);
2500
2501 conjunctionEClass = createEClass(CONJUNCTION);
2502
2503 conditionalExpressionEClass = createEClass(CONDITIONAL_EXPRESSION);
2504 createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__CONDITION);
2505 createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__THEN);
2506 createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__ELSE);
2507
2508 switchEClass = createEClass(SWITCH);
2509 createEReference(switchEClass, SWITCH__CASES);
2510
2511 caseEClass = createEClass(CASE);
2512 createEReference(caseEClass, CASE__CONDITION);
2513 createEReference(caseEClass, CASE__BODY);
2514
2515 letExpressionEClass = createEClass(LET_EXPRESSION);
2516 createEReference(letExpressionEClass, LET_EXPRESSION__BINDINGS);
2517 createEReference(letExpressionEClass, LET_EXPRESSION__BODY);
2518
2519 letBindingEClass = createEClass(LET_BINDING);
2520 createEReference(letBindingEClass, LET_BINDING__VALUE);
2521 createEReference(letBindingEClass, LET_BINDING__VARIABLE);
2522 createEAttribute(letBindingEClass, LET_BINDING__NAME);
2523 createEReference(letBindingEClass, LET_BINDING__TYPE);
2524
2525 literalEClass = createEClass(LITERAL);
2526
2527 intLiteralEClass = createEClass(INT_LITERAL);
2528 createEAttribute(intLiteralEClass, INT_LITERAL__VALUE);
2529
2530 realLiteralEClass = createEClass(REAL_LITERAL);
2531 createEAttribute(realLiteralEClass, REAL_LITERAL__VALUE);
2532
2533 stringLiteralEClass = createEClass(STRING_LITERAL);
2534 createEAttribute(stringLiteralEClass, STRING_LITERAL__VALUE);
2535
2536 logicLiteralEClass = createEClass(LOGIC_LITERAL);
2537 createEAttribute(logicLiteralEClass, LOGIC_LITERAL__VALUE);
2538
2539 emptyLiteralEClass = createEClass(EMPTY_LITERAL);
2540
2541 castExpressionEClass = createEClass(CAST_EXPRESSION);
2542 createEReference(castExpressionEClass, CAST_EXPRESSION__BODY);
2543 createEReference(castExpressionEClass, CAST_EXPRESSION__TARGET_TYPE);
2544
2545 aggregateExpressionEClass = createEClass(AGGREGATE_EXPRESSION);
2546 createEReference(aggregateExpressionEClass, AGGREGATE_EXPRESSION__FORALL_VARIABLES);
2547 createEReference(aggregateExpressionEClass, AGGREGATE_EXPRESSION__CONDITION);
2548
2549 countEClass = createEClass(COUNT);
2550
2551 aggregationEClass = createEClass(AGGREGATION);
2552 createEReference(aggregationEClass, AGGREGATION__VALUE);
2553 createEReference(aggregationEClass, AGGREGATION__OP);
2554
2555 forallEClass = createEClass(FORALL);
2556 createEReference(forallEClass, FORALL__BODY);
2557
2558 typeReferenceEClass = createEClass(TYPE_REFERENCE);
2559 createEAttribute(typeReferenceEClass, TYPE_REFERENCE__FORCE_OBJECT_TYPE);
2560 createEReference(typeReferenceEClass, TYPE_REFERENCE__TYPE);
2561
2562 infinityLiteralEClass = createEClass(INFINITY_LITERAL);
2563
2564 intervalEClass = createEClass(INTERVAL);
2565 createEReference(intervalEClass, INTERVAL__LOWER_BOUND);
2566 createEReference(intervalEClass, INTERVAL__UPPER_BOUND);
2567
2568 functorEClass = createEClass(FUNCTOR);
2569 createEReference(functorEClass, FUNCTOR__PARAMETERS);
2570
2571 relationEClass = createEClass(RELATION);
2572
2573 baseRelationEClass = createEClass(BASE_RELATION);
2574
2575 predicateEClass = createEClass(PREDICATE);
2576
2577 datatypeEClass = createEClass(DATATYPE);
2578
2579 functionEClass = createEClass(FUNCTION);
2580 createEReference(functionEClass, FUNCTION__RESULT_TYPE);
2581
2582 metricEClass = createEClass(METRIC);
2583
2584 operatorEClass = createEClass(OPERATOR);
2585
2586 nodeEClass = createEClass(NODE);
2587 createEAttribute(nodeEClass, NODE__NAMED);
2588
2589 statementEClass = createEClass(STATEMENT);
2590
2591 abstractAssertionEClass = createEClass(ABSTRACT_ASSERTION);
2592 createEReference(abstractAssertionEClass, ABSTRACT_ASSERTION__EXPRESSION);
2593 createEReference(abstractAssertionEClass, ABSTRACT_ASSERTION__RANGE);
2594
2595 functorDefinitonEClass = createEClass(FUNCTOR_DEFINITON);
2596 createEReference(functorDefinitonEClass, FUNCTOR_DEFINITON__HEAD);
2597 createEReference(functorDefinitonEClass, FUNCTOR_DEFINITON__BODY);
2598
2599 predicateDefinitionEClass = createEClass(PREDICATE_DEFINITION);
2600
2601 functionDefinitionEClass = createEClass(FUNCTION_DEFINITION);
2602 createEReference(functionDefinitionEClass, FUNCTION_DEFINITION__RESULT_TYPE);
2603
2604 attributeEClass = createEClass(ATTRIBUTE);
2605 createEReference(attributeEClass, ATTRIBUTE__TARGET);
2606 createEAttribute(attributeEClass, ATTRIBUTE__KIND);
2607
2608 externDeclarationEClass = createEClass(EXTERN_DECLARATION);
2609 createEAttribute(externDeclarationEClass, EXTERN_DECLARATION__NAME);
2610
2611 externFunctorDeclarationEClass = createEClass(EXTERN_FUNCTOR_DECLARATION);
2612 createEReference(externFunctorDeclarationEClass, EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST);
2613
2614 externPredicateDeclarationEClass = createEClass(EXTERN_PREDICATE_DECLARATION);
2615
2616 externFunctionDeclarationEClass = createEClass(EXTERN_FUNCTION_DECLARATION);
2617 createEReference(externFunctionDeclarationEClass, EXTERN_FUNCTION_DECLARATION__RESULT_TYPE);
2618
2619 externAggregationOperatorDeclarationEClass = createEClass(EXTERN_AGGREGATION_OPERATOR_DECLARATION);
2620 createEReference(externAggregationOperatorDeclarationEClass,
2621 EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE);
2622 createEReference(externAggregationOperatorDeclarationEClass,
2623 EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE);
2624
2625 externDatatypeDeclarationEClass = createEClass(EXTERN_DATATYPE_DECLARATION);
2626
2627 classDeclarationEClass = createEClass(CLASS_DECLARATION);
2628 createEReference(classDeclarationEClass, CLASS_DECLARATION__FIELDS);
2629 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__NAME);
2630 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT);
2631 createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPERTYPES);
2632 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ROOT);
2633
2634 enumDeclarationEClass = createEClass(ENUM_DECLARATION);
2635 createEReference(enumDeclarationEClass, ENUM_DECLARATION__LITERALS);
2636 createEAttribute(enumDeclarationEClass, ENUM_DECLARATION__NAME);
2637
2638 enumLiteralEClass = createEClass(ENUM_LITERAL);
2639 createEAttribute(enumLiteralEClass, ENUM_LITERAL__NAME);
2640
2641 fieldEClass = createEClass(FIELD);
2642 createEAttribute(fieldEClass, FIELD__CONTAINMENT);
2643 createEAttribute(fieldEClass, FIELD__CROSS_REFERENCE);
2644 createEReference(fieldEClass, FIELD__OPPOSITE);
2645 createEReference(fieldEClass, FIELD__MULTIPLICITY);
2646 createEReference(fieldEClass, FIELD__TYPE);
2647 createEAttribute(fieldEClass, FIELD__NAME);
2648
2649 multiplicityEClass = createEClass(MULTIPLICITY);
2650
2651 defaultAssertionEClass = createEClass(DEFAULT_ASSERTION);
2652
2653 assertionEClass = createEClass(ASSERTION);
2654
2655 unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY);
2656
2657 exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY);
2658 createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__VALUE);
2659
2660 boundedMultiplicityEClass = createEClass(BOUNDED_MULTIPLICITY);
2661 createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__LOWER_BOUND);
2662 createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__UPPER_BOUND);
2663
2664 inlinePredicateAttrributesEClass = createEClass(INLINE_PREDICATE_ATTRRIBUTES);
2665 createEAttribute(inlinePredicateAttrributesEClass, INLINE_PREDICATE_ATTRRIBUTES__ERROR);
2666 createEAttribute(inlinePredicateAttrributesEClass, INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL);
2667
2668 aggregationOperatorEClass = createEClass(AGGREGATION_OPERATOR);
2669 createEReference(aggregationOperatorEClass, AGGREGATION_OPERATOR__ARGUMENT_TYPE);
2670 createEReference(aggregationOperatorEClass, AGGREGATION_OPERATOR__RESULT_TYPE);
2671
2672 problemEClass = createEClass(PROBLEM);
2673 createEAttribute(problemEClass, PROBLEM__NAME);
2674 createEReference(problemEClass, PROBLEM__STATEMENTS);
2675 createEReference(problemEClass, PROBLEM__SYMBOLS);
2676 createEReference(problemEClass, PROBLEM__IMPORTS);
2677
2678 typedStarArgumentEClass = createEClass(TYPED_STAR_ARGUMENT);
2679
2680 typedVariableArgumentEClass = createEClass(TYPED_VARIABLE_ARGUMENT);
2681 createEAttribute(typedVariableArgumentEClass, TYPED_VARIABLE_ARGUMENT__NAME);
2682
2683 unnamedErrorPredicateDefintionEClass = createEClass(UNNAMED_ERROR_PREDICATE_DEFINTION);
2684 createEReference(unnamedErrorPredicateDefintionEClass, UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST);
2685 createEReference(unnamedErrorPredicateDefintionEClass, UNNAMED_ERROR_PREDICATE_DEFINTION__BODY);
2686
2687 objectiveDeclarationEClass = createEClass(OBJECTIVE_DECLARATION);
2688 createEAttribute(objectiveDeclarationEClass, OBJECTIVE_DECLARATION__KIND);
2689 createEReference(objectiveDeclarationEClass, OBJECTIVE_DECLARATION__OBJECTIVE);
2690
2691 scopeDeclarationEClass = createEClass(SCOPE_DECLARATION);
2692 createEReference(scopeDeclarationEClass, SCOPE_DECLARATION__TYPE);
2693
2694 exactScopeEClass = createEClass(EXACT_SCOPE);
2695 createEAttribute(exactScopeEClass, EXACT_SCOPE__SIZE);
2696
2697 boundedScopeEClass = createEClass(BOUNDED_SCOPE);
2698 createEAttribute(boundedScopeEClass, BOUNDED_SCOPE__LOWER_BOUND);
2699 createEAttribute(boundedScopeEClass, BOUNDED_SCOPE__UPPER_BOUND);
2700
2701 lowerBoundedScopeEClass = createEClass(LOWER_BOUNDED_SCOPE);
2702 createEAttribute(lowerBoundedScopeEClass, LOWER_BOUNDED_SCOPE__LOWER_BOUND);
2703
2704 namespaceImportEClass = createEClass(NAMESPACE_IMPORT);
2705 createEAttribute(namespaceImportEClass, NAMESPACE_IMPORT__IMPORTED_NAMESPACE);
2706
2707 importEClass = createEClass(IMPORT);
2708 createEAttribute(importEClass, IMPORT__ALIAS);
2709
2710 uriImportEClass = createEClass(URI_IMPORT);
2711 createEAttribute(uriImportEClass, URI_IMPORT__URI);
2712
2713 // Create enums
2714 unaryOperatorEEnum = createEEnum(UNARY_OPERATOR);
2715 binaryOperatorEEnum = createEEnum(BINARY_OPERATOR);
2716 logicValueEEnum = createEEnum(LOGIC_VALUE);
2717 objectiveKindEEnum = createEEnum(OBJECTIVE_KIND);
2718 attributeKindEEnum = createEEnum(ATTRIBUTE_KIND);
2719 }
2720
2721 /**
2722 * <!-- begin-user-doc -->
2723 * <!-- end-user-doc -->
2724 * @generated
2725 */
2726 private boolean isInitialized = false;
2727
2728 /**
2729 * Complete the initialization of the package and its meta-model. This
2730 * method is guarded to have no affect on any invocation but its first.
2731 * <!-- begin-user-doc -->
2732 * <!-- end-user-doc -->
2733 * @generated
2734 */
2735 public void initializePackageContents() {
2736 if (isInitialized)
2737 return;
2738 isInitialized = true;
2739
2740 // Initialize package
2741 setName(eNAME);
2742 setNsPrefix(eNS_PREFIX);
2743 setNsURI(eNS_URI);
2744
2745 // Create type parameters
2746
2747 // Set bounds for type parameters
2748
2749 // Add supertypes to classes
2750 callEClass.getESuperTypes().add(this.getExpression());
2751 referenceEClass.getESuperTypes().add(this.getExpression());
2752 expressionEClass.getESuperTypes().add(this.getStatement());
2753 expressionArgumentEClass.getESuperTypes().add(this.getArgument());
2754 starArgumentEClass.getESuperTypes().add(this.getArgument());
2755 typedArgumentEClass.getESuperTypes().add(this.getArgument());
2756 multiaryExpessionEClass.getESuperTypes().add(this.getExpression());
2757 variableEClass.getESuperTypes().add(this.getSymbol());
2758 unaryExpressionEClass.getESuperTypes().add(this.getExpression());
2759 binaryExpressionEClass.getESuperTypes().add(this.getExpression());
2760 disjunctionEClass.getESuperTypes().add(this.getMultiaryExpession());
2761 conjunctionEClass.getESuperTypes().add(this.getMultiaryExpession());
2762 conditionalExpressionEClass.getESuperTypes().add(this.getExpression());
2763 switchEClass.getESuperTypes().add(this.getExpression());
2764 caseEClass.getESuperTypes().add(this.getExpression());
2765 letExpressionEClass.getESuperTypes().add(this.getExpression());
2766 literalEClass.getESuperTypes().add(this.getExpression());
2767 intLiteralEClass.getESuperTypes().add(this.getLiteral());
2768 realLiteralEClass.getESuperTypes().add(this.getLiteral());
2769 stringLiteralEClass.getESuperTypes().add(this.getLiteral());
2770 logicLiteralEClass.getESuperTypes().add(this.getLiteral());
2771 emptyLiteralEClass.getESuperTypes().add(this.getLiteral());
2772 castExpressionEClass.getESuperTypes().add(this.getExpression());
2773 aggregateExpressionEClass.getESuperTypes().add(this.getExpression());
2774 countEClass.getESuperTypes().add(this.getAggregateExpression());
2775 aggregationEClass.getESuperTypes().add(this.getAggregateExpression());
2776 forallEClass.getESuperTypes().add(this.getAggregateExpression());
2777 infinityLiteralEClass.getESuperTypes().add(this.getLiteral());
2778 intervalEClass.getESuperTypes().add(this.getExpression());
2779 functorEClass.getESuperTypes().add(this.getSymbol());
2780 relationEClass.getESuperTypes().add(this.getFunctor());
2781 baseRelationEClass.getESuperTypes().add(this.getRelation());
2782 predicateEClass.getESuperTypes().add(this.getRelation());
2783 datatypeEClass.getESuperTypes().add(this.getRelation());
2784 functionEClass.getESuperTypes().add(this.getFunctor());
2785 metricEClass.getESuperTypes().add(this.getFunction());
2786 operatorEClass.getESuperTypes().add(this.getFunction());
2787 nodeEClass.getESuperTypes().add(this.getSymbol());
2788 abstractAssertionEClass.getESuperTypes().add(this.getStatement());
2789 functorDefinitonEClass.getESuperTypes().add(this.getStatement());
2790 predicateDefinitionEClass.getESuperTypes().add(this.getFunctorDefiniton());
2791 predicateDefinitionEClass.getESuperTypes().add(this.getInlinePredicateAttrributes());
2792 functionDefinitionEClass.getESuperTypes().add(this.getFunctorDefiniton());
2793 attributeEClass.getESuperTypes().add(this.getStatement());
2794 externDeclarationEClass.getESuperTypes().add(this.getStatement());
2795 externFunctorDeclarationEClass.getESuperTypes().add(this.getExternDeclaration());
2796 externPredicateDeclarationEClass.getESuperTypes().add(this.getExternFunctorDeclaration());
2797 externPredicateDeclarationEClass.getESuperTypes().add(this.getInlinePredicateAttrributes());
2798 externFunctionDeclarationEClass.getESuperTypes().add(this.getExternFunctorDeclaration());
2799 externAggregationOperatorDeclarationEClass.getESuperTypes().add(this.getExternDeclaration());
2800 externDatatypeDeclarationEClass.getESuperTypes().add(this.getExternDeclaration());
2801 classDeclarationEClass.getESuperTypes().add(this.getStatement());
2802 enumDeclarationEClass.getESuperTypes().add(this.getStatement());
2803 defaultAssertionEClass.getESuperTypes().add(this.getAbstractAssertion());
2804 assertionEClass.getESuperTypes().add(this.getAbstractAssertion());
2805 unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
2806 exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
2807 boundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
2808 aggregationOperatorEClass.getESuperTypes().add(this.getSymbol());
2809 typedStarArgumentEClass.getESuperTypes().add(this.getTypedArgument());
2810 typedVariableArgumentEClass.getESuperTypes().add(this.getTypedArgument());
2811 unnamedErrorPredicateDefintionEClass.getESuperTypes().add(this.getStatement());
2812 objectiveDeclarationEClass.getESuperTypes().add(this.getStatement());
2813 scopeDeclarationEClass.getESuperTypes().add(this.getStatement());
2814 exactScopeEClass.getESuperTypes().add(this.getScopeDeclaration());
2815 boundedScopeEClass.getESuperTypes().add(this.getScopeDeclaration());
2816 lowerBoundedScopeEClass.getESuperTypes().add(this.getScopeDeclaration());
2817 namespaceImportEClass.getESuperTypes().add(this.getImport());
2818 uriImportEClass.getESuperTypes().add(this.getImport());
2819
2820 // Initialize classes, features, and operations; add parameters
2821 initEClass(pathComponentEClass, PathComponent.class, "PathComponent", !IS_ABSTRACT, !IS_INTERFACE,
2822 IS_GENERATED_INSTANCE_CLASS);
2823 initEReference(getPathComponent_Symbol(), this.getSymbol(), null, "symbol", null, 0, 1, PathComponent.class,
2824 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2825 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2826 initEAttribute(getPathComponent_Inverse(), ecorePackage.getEBoolean(), "inverse", null, 0, 1,
2827 PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
2828 !IS_DERIVED, IS_ORDERED);
2829 initEAttribute(getPathComponent_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0,
2830 1, PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
2831 !IS_DERIVED, IS_ORDERED);
2832 initEAttribute(getPathComponent_ReflexiveTransitiveClosure(), ecorePackage.getEBoolean(),
2833 "reflexiveTransitiveClosure", null, 0, 1, PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE,
2834 IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2835
2836 initEClass(symbolEClass, Symbol.class, "Symbol", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2837 initEAttribute(getSymbol_Name(), ecorePackage.getEString(), "name", null, 0, 1, Symbol.class, !IS_TRANSIENT,
2838 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2839
2840 initEClass(callEClass, Call.class, "Call", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2841 initEReference(getCall_Functor(), this.getReference(), null, "functor", null, 0, 1, Call.class, !IS_TRANSIENT,
2842 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
2843 IS_ORDERED);
2844 initEReference(getCall_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, Call.class,
2845 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2846 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2847
2848 initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE,
2849 IS_GENERATED_INSTANCE_CLASS);
2850 initEReference(getReference_Components(), this.getPathComponent(), null, "components", null, 0, -1,
2851 Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2852 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2853
2854 initEClass(expressionEClass, Expression.class, "Expression", IS_ABSTRACT, !IS_INTERFACE,
2855 IS_GENERATED_INSTANCE_CLASS);
2856 initEReference(getExpression_ExistsVariables(), this.getVariable(), null, "existsVariables", null, 0, -1,
2857 Expression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2858 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2859
2860 initEClass(argumentEClass, Argument.class, "Argument", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2861
2862 initEClass(argumentListEClass, ArgumentList.class, "ArgumentList", !IS_ABSTRACT, !IS_INTERFACE,
2863 IS_GENERATED_INSTANCE_CLASS);
2864 initEReference(getArgumentList_Arguments(), this.getArgument(), null, "arguments", null, 0, -1,
2865 ArgumentList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2866 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2867
2868 initEClass(expressionArgumentEClass, ExpressionArgument.class, "ExpressionArgument", !IS_ABSTRACT,
2869 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2870 initEReference(getExpressionArgument_Expression(), this.getExpression(), null, "expression", null, 0, 1,
2871 ExpressionArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2872 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2873
2874 initEClass(starArgumentEClass, StarArgument.class, "StarArgument", !IS_ABSTRACT, !IS_INTERFACE,
2875 IS_GENERATED_INSTANCE_CLASS);
2876
2877 initEClass(typedArgumentEClass, TypedArgument.class, "TypedArgument", IS_ABSTRACT, !IS_INTERFACE,
2878 IS_GENERATED_INSTANCE_CLASS);
2879 initEReference(getTypedArgument_TypeReference(), this.getTypeReference(), null, "typeReference", null, 0, 1,
2880 TypedArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2881 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2882
2883 initEClass(multiaryExpessionEClass, MultiaryExpession.class, "MultiaryExpession", IS_ABSTRACT, !IS_INTERFACE,
2884 IS_GENERATED_INSTANCE_CLASS);
2885 initEReference(getMultiaryExpession_Children(), this.getExpression(), null, "children", null, 0, -1,
2886 MultiaryExpession.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2887 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2888
2889 initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE,
2890 IS_GENERATED_INSTANCE_CLASS);
2891 initEReference(getVariable_TypeReference(), this.getTypeReference(), null, "typeReference", null, 0, 1,
2892 Variable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2893 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2894
2895 initEClass(unaryExpressionEClass, UnaryExpression.class, "UnaryExpression", !IS_ABSTRACT, !IS_INTERFACE,
2896 IS_GENERATED_INSTANCE_CLASS);
2897 initEReference(getUnaryExpression_Body(), this.getExpression(), null, "body", null, 0, 1, UnaryExpression.class,
2898 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2899 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2900 initEAttribute(getUnaryExpression_Op(), this.getUnaryOperator(), "op", null, 0, 1, UnaryExpression.class,
2901 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2902
2903 initEClass(binaryExpressionEClass, BinaryExpression.class, "BinaryExpression", !IS_ABSTRACT, !IS_INTERFACE,
2904 IS_GENERATED_INSTANCE_CLASS);
2905 initEAttribute(getBinaryExpression_Op(), this.getBinaryOperator(), "op", null, 0, 1, BinaryExpression.class,
2906 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2907 initEReference(getBinaryExpression_Left(), this.getExpression(), null, "left", null, 0, 1,
2908 BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2909 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2910 initEReference(getBinaryExpression_Right(), this.getExpression(), null, "right", null, 0, 1,
2911 BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2912 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2913
2914 initEClass(disjunctionEClass, Disjunction.class, "Disjunction", !IS_ABSTRACT, !IS_INTERFACE,
2915 IS_GENERATED_INSTANCE_CLASS);
2916
2917 initEClass(conjunctionEClass, Conjunction.class, "Conjunction", !IS_ABSTRACT, !IS_INTERFACE,
2918 IS_GENERATED_INSTANCE_CLASS);
2919
2920 initEClass(conditionalExpressionEClass, ConditionalExpression.class, "ConditionalExpression", !IS_ABSTRACT,
2921 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2922 initEReference(getConditionalExpression_Condition(), this.getExpression(), null, "condition", null, 0, 1,
2923 ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
2924 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2925 initEReference(getConditionalExpression_Then(), this.getExpression(), null, "then", null, 0, 1,
2926 ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
2927 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2928 initEReference(getConditionalExpression_Else(), this.getExpression(), null, "else", null, 0, 1,
2929 ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
2930 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2931
2932 initEClass(switchEClass, Switch.class, "Switch", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2933 initEReference(getSwitch_Cases(), this.getCase(), null, "cases", null, 0, -1, Switch.class, !IS_TRANSIENT,
2934 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
2935 IS_ORDERED);
2936
2937 initEClass(caseEClass, Case.class, "Case", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2938 initEReference(getCase_Condition(), this.getExpression(), null, "condition", null, 0, 1, Case.class,
2939 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2940 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2941 initEReference(getCase_Body(), this.getExpression(), null, "body", null, 0, 1, Case.class, !IS_TRANSIENT,
2942 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
2943 IS_ORDERED);
2944
2945 initEClass(letExpressionEClass, LetExpression.class, "LetExpression", !IS_ABSTRACT, !IS_INTERFACE,
2946 IS_GENERATED_INSTANCE_CLASS);
2947 initEReference(getLetExpression_Bindings(), this.getLetBinding(), null, "bindings", null, 0, -1,
2948 LetExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2949 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2950 initEReference(getLetExpression_Body(), this.getExpression(), null, "body", null, 0, 1, LetExpression.class,
2951 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2952 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2953
2954 initEClass(letBindingEClass, LetBinding.class, "LetBinding", !IS_ABSTRACT, !IS_INTERFACE,
2955 IS_GENERATED_INSTANCE_CLASS);
2956 initEReference(getLetBinding_Value(), this.getExpression(), null, "value", null, 0, 1, LetBinding.class,
2957 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2958 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2959 initEReference(getLetBinding_Variable(), this.getVariable(), null, "variable", null, 0, 1, LetBinding.class,
2960 IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
2961 !IS_DERIVED, IS_ORDERED);
2962 initEAttribute(getLetBinding_Name(), ecorePackage.getEString(), "name", null, 0, 1, LetBinding.class,
2963 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2964 initEReference(getLetBinding_Type(), this.getSymbol(), null, "type", null, 0, 1, LetBinding.class,
2965 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2966 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2967
2968 initEClass(literalEClass, Literal.class, "Literal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2969
2970 initEClass(intLiteralEClass, IntLiteral.class, "IntLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2971 IS_GENERATED_INSTANCE_CLASS);
2972 initEAttribute(getIntLiteral_Value(), ecorePackage.getEInt(), "value", null, 0, 1, IntLiteral.class,
2973 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2974
2975 initEClass(realLiteralEClass, RealLiteral.class, "RealLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2976 IS_GENERATED_INSTANCE_CLASS);
2977 initEAttribute(getRealLiteral_Value(), ecorePackage.getEBigDecimal(), "value", null, 0, 1, RealLiteral.class,
2978 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2979
2980 initEClass(stringLiteralEClass, StringLiteral.class, "StringLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2981 IS_GENERATED_INSTANCE_CLASS);
2982 initEAttribute(getStringLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringLiteral.class,
2983 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2984
2985 initEClass(logicLiteralEClass, LogicLiteral.class, "LogicLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2986 IS_GENERATED_INSTANCE_CLASS);
2987 initEAttribute(getLogicLiteral_Value(), this.getLogicValue(), "value", null, 0, 1, LogicLiteral.class,
2988 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2989
2990 initEClass(emptyLiteralEClass, EmptyLiteral.class, "EmptyLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2991 IS_GENERATED_INSTANCE_CLASS);
2992
2993 initEClass(castExpressionEClass, CastExpression.class, "CastExpression", !IS_ABSTRACT, !IS_INTERFACE,
2994 IS_GENERATED_INSTANCE_CLASS);
2995 initEReference(getCastExpression_Body(), this.getExpression(), null, "body", null, 0, 1, CastExpression.class,
2996 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2997 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2998 initEReference(getCastExpression_TargetType(), this.getSymbol(), null, "targetType", null, 0, 1,
2999 CastExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
3000 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3001
3002 initEClass(aggregateExpressionEClass, AggregateExpression.class, "AggregateExpression", IS_ABSTRACT,
3003 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3004 initEReference(getAggregateExpression_ForallVariables(), this.getVariable(), null, "forallVariables", null, 0,
3005 -1, AggregateExpression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3006 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3007 initEReference(getAggregateExpression_Condition(), this.getExpression(), null, "condition", null, 0, 1,
3008 AggregateExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3009 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3010
3011 initEClass(countEClass, Count.class, "Count", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3012
3013 initEClass(aggregationEClass, Aggregation.class, "Aggregation", !IS_ABSTRACT, !IS_INTERFACE,
3014 IS_GENERATED_INSTANCE_CLASS);
3015 initEReference(getAggregation_Value(), this.getExpression(), null, "value", null, 0, 1, Aggregation.class,
3016 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3017 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3018 initEReference(getAggregation_Op(), this.getSymbol(), null, "op", null, 0, 1, Aggregation.class, !IS_TRANSIENT,
3019 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3020 IS_ORDERED);
3021
3022 initEClass(forallEClass, Forall.class, "Forall", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3023 initEReference(getForall_Body(), this.getExpression(), null, "body", null, 0, 1, Forall.class, !IS_TRANSIENT,
3024 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3025 IS_ORDERED);
3026
3027 initEClass(typeReferenceEClass, TypeReference.class, "TypeReference", !IS_ABSTRACT, !IS_INTERFACE,
3028 IS_GENERATED_INSTANCE_CLASS);
3029 initEAttribute(getTypeReference_ForceObjectType(), ecorePackage.getEBoolean(), "forceObjectType", null, 0, 1,
3030 TypeReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3031 !IS_DERIVED, IS_ORDERED);
3032 initEReference(getTypeReference_Type(), this.getSymbol(), null, "type", null, 0, 1, TypeReference.class,
3033 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3034 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3035
3036 initEClass(infinityLiteralEClass, InfinityLiteral.class, "InfinityLiteral", !IS_ABSTRACT, !IS_INTERFACE,
3037 IS_GENERATED_INSTANCE_CLASS);
3038
3039 initEClass(intervalEClass, Interval.class, "Interval", !IS_ABSTRACT, !IS_INTERFACE,
3040 IS_GENERATED_INSTANCE_CLASS);
3041 initEReference(getInterval_LowerBound(), this.getExpression(), null, "lowerBound", null, 0, 1, Interval.class,
3042 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3043 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3044 initEReference(getInterval_UpperBound(), this.getExpression(), null, "upperBound", null, 0, 1, Interval.class,
3045 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3046 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3047
3048 initEClass(functorEClass, Functor.class, "Functor", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3049 initEReference(getFunctor_Parameters(), this.getVariable(), null, "parameters", null, 0, -1, Functor.class,
3050 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3051 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3052
3053 initEClass(relationEClass, Relation.class, "Relation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3054
3055 initEClass(baseRelationEClass, BaseRelation.class, "BaseRelation", !IS_ABSTRACT, !IS_INTERFACE,
3056 IS_GENERATED_INSTANCE_CLASS);
3057
3058 initEClass(predicateEClass, Predicate.class, "Predicate", !IS_ABSTRACT, !IS_INTERFACE,
3059 IS_GENERATED_INSTANCE_CLASS);
3060
3061 initEClass(datatypeEClass, Datatype.class, "Datatype", !IS_ABSTRACT, !IS_INTERFACE,
3062 IS_GENERATED_INSTANCE_CLASS);
3063
3064 initEClass(functionEClass, Function.class, "Function", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3065 initEReference(getFunction_ResultType(), this.getDatatype(), null, "resultType", null, 0, 1, Function.class,
3066 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3067 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3068
3069 initEClass(metricEClass, Metric.class, "Metric", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3070
3071 initEClass(operatorEClass, Operator.class, "Operator", !IS_ABSTRACT, !IS_INTERFACE,
3072 IS_GENERATED_INSTANCE_CLASS);
3073
3074 initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3075 initEAttribute(getNode_Named(), ecorePackage.getEBoolean(), "named", null, 0, 1, Node.class, !IS_TRANSIENT,
3076 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3077
3078 initEClass(statementEClass, Statement.class, "Statement", IS_ABSTRACT, !IS_INTERFACE,
3079 IS_GENERATED_INSTANCE_CLASS);
3080
3081 initEClass(abstractAssertionEClass, AbstractAssertion.class, "AbstractAssertion", IS_ABSTRACT, !IS_INTERFACE,
3082 IS_GENERATED_INSTANCE_CLASS);
3083 initEReference(getAbstractAssertion_Expression(), this.getExpression(), null, "expression", null, 0, 1,
3084 AbstractAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3085 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3086 initEReference(getAbstractAssertion_Range(), this.getExpression(), null, "range", null, 0, 1,
3087 AbstractAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3088 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3089
3090 initEClass(functorDefinitonEClass, FunctorDefiniton.class, "FunctorDefiniton", IS_ABSTRACT, !IS_INTERFACE,
3091 IS_GENERATED_INSTANCE_CLASS);
3092 initEReference(getFunctorDefiniton_Head(), this.getExpression(), null, "head", null, 0, 1,
3093 FunctorDefiniton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3094 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3095 initEReference(getFunctorDefiniton_Body(), this.getExpression(), null, "body", null, 0, 1,
3096 FunctorDefiniton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3097 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3098
3099 initEClass(predicateDefinitionEClass, PredicateDefinition.class, "PredicateDefinition", !IS_ABSTRACT,
3100 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3101
3102 initEClass(functionDefinitionEClass, FunctionDefinition.class, "FunctionDefinition", !IS_ABSTRACT,
3103 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3104 initEReference(getFunctionDefinition_ResultType(), this.getSymbol(), null, "resultType", null, 0, 1,
3105 FunctionDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
3106 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3107
3108 initEClass(attributeEClass, Attribute.class, "Attribute", IS_ABSTRACT, !IS_INTERFACE,
3109 IS_GENERATED_INSTANCE_CLASS);
3110 initEReference(getAttribute_Target(), this.getSymbol(), null, "target", null, 0, 1, Attribute.class,
3111 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3112 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3113 initEAttribute(getAttribute_Kind(), this.getAttributeKind(), "kind", null, 0, 1, Attribute.class, !IS_TRANSIENT,
3114 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3115
3116 initEClass(externDeclarationEClass, ExternDeclaration.class, "ExternDeclaration", IS_ABSTRACT, !IS_INTERFACE,
3117 IS_GENERATED_INSTANCE_CLASS);
3118 initEAttribute(getExternDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1,
3119 ExternDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3120 !IS_DERIVED, IS_ORDERED);
3121
3122 initEClass(externFunctorDeclarationEClass, ExternFunctorDeclaration.class, "ExternFunctorDeclaration",
3123 IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3124 initEReference(getExternFunctorDeclaration_ArgumentList(), this.getArgumentList(), null, "argumentList", null,
3125 0, 1, ExternFunctorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3126 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3127
3128 initEClass(externPredicateDeclarationEClass, ExternPredicateDeclaration.class, "ExternPredicateDeclaration",
3129 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3130
3131 initEClass(externFunctionDeclarationEClass, ExternFunctionDeclaration.class, "ExternFunctionDeclaration",
3132 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3133 initEReference(getExternFunctionDeclaration_ResultType(), this.getSymbol(), null, "resultType", null, 0, 1,
3134 ExternFunctionDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
3135 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3136
3137 initEClass(externAggregationOperatorDeclarationEClass, ExternAggregationOperatorDeclaration.class,
3138 "ExternAggregationOperatorDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3139 initEReference(getExternAggregationOperatorDeclaration_ArgumentType(), this.getSymbol(), null, "argumentType",
3140 null, 0, 1, ExternAggregationOperatorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
3141 !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3142 initEReference(getExternAggregationOperatorDeclaration_ResultType(), this.getSymbol(), null, "resultType", null,
3143 0, 1, ExternAggregationOperatorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
3144 !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3145
3146 initEClass(externDatatypeDeclarationEClass, ExternDatatypeDeclaration.class, "ExternDatatypeDeclaration",
3147 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3148
3149 initEClass(classDeclarationEClass, ClassDeclaration.class, "ClassDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
3150 IS_GENERATED_INSTANCE_CLASS);
3151 initEReference(getClassDeclaration_Fields(), this.getField(), null, "fields", null, 0, -1,
3152 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3153 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3154 initEAttribute(getClassDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1,
3155 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3156 !IS_DERIVED, IS_ORDERED);
3157 initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1,
3158 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3159 !IS_DERIVED, IS_ORDERED);
3160 initEReference(getClassDeclaration_Supertypes(), this.getSymbol(), null, "supertypes", null, 0, -1,
3161 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
3162 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3163 initEAttribute(getClassDeclaration_Root(), ecorePackage.getEBoolean(), "root", null, 0, 1,
3164 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3165 !IS_DERIVED, IS_ORDERED);
3166
3167 initEClass(enumDeclarationEClass, EnumDeclaration.class, "EnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
3168 IS_GENERATED_INSTANCE_CLASS);
3169 initEReference(getEnumDeclaration_Literals(), this.getEnumLiteral(), null, "literals", null, 0, -1,
3170 EnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3171 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3172 initEAttribute(getEnumDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, EnumDeclaration.class,
3173 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3174
3175 initEClass(enumLiteralEClass, EnumLiteral.class, "EnumLiteral", !IS_ABSTRACT, !IS_INTERFACE,
3176 IS_GENERATED_INSTANCE_CLASS);
3177 initEAttribute(getEnumLiteral_Name(), ecorePackage.getEString(), "name", null, 0, 1, EnumLiteral.class,
3178 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3179
3180 initEClass(fieldEClass, Field.class, "Field", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3181 initEAttribute(getField_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1, Field.class,
3182 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3183 initEAttribute(getField_CrossReference(), ecorePackage.getEBoolean(), "crossReference", null, 0, 1, Field.class,
3184 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3185 initEReference(getField_Opposite(), this.getSymbol(), null, "opposite", null, 0, 1, Field.class, !IS_TRANSIENT,
3186 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3187 IS_ORDERED);
3188 initEReference(getField_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1, Field.class,
3189 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3190 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3191 initEReference(getField_Type(), this.getSymbol(), null, "type", null, 0, 1, Field.class, !IS_TRANSIENT,
3192 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3193 IS_ORDERED);
3194 initEAttribute(getField_Name(), ecorePackage.getEString(), "name", null, 0, 1, Field.class, !IS_TRANSIENT,
3195 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3196
3197 initEClass(multiplicityEClass, Multiplicity.class, "Multiplicity", IS_ABSTRACT, !IS_INTERFACE,
3198 IS_GENERATED_INSTANCE_CLASS);
3199
3200 initEClass(defaultAssertionEClass, DefaultAssertion.class, "DefaultAssertion", !IS_ABSTRACT, !IS_INTERFACE,
3201 IS_GENERATED_INSTANCE_CLASS);
3202
3203 initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE,
3204 IS_GENERATED_INSTANCE_CLASS);
3205
3206 initEClass(unboundedMultiplicityEClass, UnboundedMultiplicity.class, "UnboundedMultiplicity", !IS_ABSTRACT,
3207 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3208
3209 initEClass(exactMultiplicityEClass, ExactMultiplicity.class, "ExactMultiplicity", !IS_ABSTRACT, !IS_INTERFACE,
3210 IS_GENERATED_INSTANCE_CLASS);
3211 initEAttribute(getExactMultiplicity_Value(), ecorePackage.getEInt(), "value", null, 0, 1,
3212 ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3213 !IS_DERIVED, IS_ORDERED);
3214
3215 initEClass(boundedMultiplicityEClass, BoundedMultiplicity.class, "BoundedMultiplicity", !IS_ABSTRACT,
3216 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3217 initEAttribute(getBoundedMultiplicity_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1,
3218 BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3219 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3220 initEAttribute(getBoundedMultiplicity_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1,
3221 BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3222 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3223
3224 initEClass(inlinePredicateAttrributesEClass, InlinePredicateAttrributes.class, "InlinePredicateAttrributes",
3225 IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3226 initEAttribute(getInlinePredicateAttrributes_Error(), ecorePackage.getEBoolean(), "error", null, 0, 1,
3227 InlinePredicateAttrributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3228 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3229 initEAttribute(getInlinePredicateAttrributes_Functional(), ecorePackage.getEBoolean(), "functional", null, 0, 1,
3230 InlinePredicateAttrributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3231 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3232
3233 initEClass(aggregationOperatorEClass, AggregationOperator.class, "AggregationOperator", !IS_ABSTRACT,
3234 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3235 initEReference(getAggregationOperator_ArgumentType(), this.getDatatype(), null, "argumentType", null, 0, 1,
3236 AggregationOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
3237 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3238 initEReference(getAggregationOperator_ResultType(), this.getDatatype(), null, "resultType", null, 0, 1,
3239 AggregationOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
3240 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3241
3242 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3243 initEAttribute(getProblem_Name(), ecorePackage.getEString(), "name", null, 0, 1, Problem.class, !IS_TRANSIENT,
3244 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3245 initEReference(getProblem_Statements(), this.getStatement(), null, "statements", null, 0, -1, Problem.class,
3246 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3247 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3248 initEReference(getProblem_Symbols(), this.getSymbol(), null, "symbols", null, 0, -1, Problem.class,
3249 IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
3250 !IS_DERIVED, IS_ORDERED);
3251 initEReference(getProblem_Imports(), this.getImport(), null, "imports", null, 0, -1, Problem.class,
3252 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3253 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3254
3255 initEClass(typedStarArgumentEClass, TypedStarArgument.class, "TypedStarArgument", !IS_ABSTRACT, !IS_INTERFACE,
3256 IS_GENERATED_INSTANCE_CLASS);
3257
3258 initEClass(typedVariableArgumentEClass, TypedVariableArgument.class, "TypedVariableArgument", !IS_ABSTRACT,
3259 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3260 initEAttribute(getTypedVariableArgument_Name(), ecorePackage.getEString(), "name", null, 0, 1,
3261 TypedVariableArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3262 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3263
3264 initEClass(unnamedErrorPredicateDefintionEClass, UnnamedErrorPredicateDefintion.class,
3265 "UnnamedErrorPredicateDefintion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3266 initEReference(getUnnamedErrorPredicateDefintion_ArgumentList(), this.getArgumentList(), null, "argumentList",
3267 null, 0, 1, UnnamedErrorPredicateDefintion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
3268 IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3269 initEReference(getUnnamedErrorPredicateDefintion_Body(), this.getExpression(), null, "body", null, 0, 1,
3270 UnnamedErrorPredicateDefintion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3271 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3272
3273 initEClass(objectiveDeclarationEClass, ObjectiveDeclaration.class, "ObjectiveDeclaration", !IS_ABSTRACT,
3274 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3275 initEAttribute(getObjectiveDeclaration_Kind(), this.getObjectiveKind(), "kind", null, 0, 1,
3276 ObjectiveDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3277 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3278 initEReference(getObjectiveDeclaration_Objective(), this.getExpression(), null, "objective", null, 0, 1,
3279 ObjectiveDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3280 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3281
3282 initEClass(scopeDeclarationEClass, ScopeDeclaration.class, "ScopeDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
3283 IS_GENERATED_INSTANCE_CLASS);
3284 initEReference(getScopeDeclaration_Type(), this.getSymbol(), null, "type", null, 0, 1, ScopeDeclaration.class,
3285 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3286 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3287
3288 initEClass(exactScopeEClass, ExactScope.class, "ExactScope", !IS_ABSTRACT, !IS_INTERFACE,
3289 IS_GENERATED_INSTANCE_CLASS);
3290 initEAttribute(getExactScope_Size(), ecorePackage.getEInt(), "size", null, 0, 1, ExactScope.class,
3291 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3292
3293 initEClass(boundedScopeEClass, BoundedScope.class, "BoundedScope", !IS_ABSTRACT, !IS_INTERFACE,
3294 IS_GENERATED_INSTANCE_CLASS);
3295 initEAttribute(getBoundedScope_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1,
3296 BoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3297 !IS_DERIVED, IS_ORDERED);
3298 initEAttribute(getBoundedScope_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1,
3299 BoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3300 !IS_DERIVED, IS_ORDERED);
3301
3302 initEClass(lowerBoundedScopeEClass, LowerBoundedScope.class, "LowerBoundedScope", !IS_ABSTRACT, !IS_INTERFACE,
3303 IS_GENERATED_INSTANCE_CLASS);
3304 initEAttribute(getLowerBoundedScope_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1,
3305 LowerBoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3306 !IS_DERIVED, IS_ORDERED);
3307
3308 initEClass(namespaceImportEClass, NamespaceImport.class, "NamespaceImport", !IS_ABSTRACT, !IS_INTERFACE,
3309 IS_GENERATED_INSTANCE_CLASS);
3310 initEAttribute(getNamespaceImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0,
3311 1, NamespaceImport.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3312 !IS_DERIVED, IS_ORDERED);
3313
3314 initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3315 initEAttribute(getImport_Alias(), ecorePackage.getEString(), "alias", null, 0, 1, Import.class, !IS_TRANSIENT,
3316 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3317
3318 initEClass(uriImportEClass, UriImport.class, "UriImport", !IS_ABSTRACT, !IS_INTERFACE,
3319 IS_GENERATED_INSTANCE_CLASS);
3320 initEAttribute(getUriImport_Uri(), ecorePackage.getEString(), "uri", null, 0, 1, UriImport.class, !IS_TRANSIENT,
3321 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3322
3323 // Initialize enums and add enum literals
3324 initEEnum(unaryOperatorEEnum, UnaryOperator.class, "UnaryOperator");
3325 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.NOT);
3326 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.PLUS);
3327 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.MINUS);
3328 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.MAYBE);
3329
3330 initEEnum(binaryOperatorEEnum, BinaryOperator.class, "BinaryOperator");
3331 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.PLUS);
3332 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MINUS);
3333 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MULTIPLY);
3334 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.DIVIDE);
3335 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.POW);
3336 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.IN);
3337 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.EQUALS);
3338 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.NOT_EQUALS);
3339 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS);
3340 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS_EQUALS);
3341 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER);
3342 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER_EQUALS);
3343
3344 initEEnum(logicValueEEnum, LogicValue.class, "LogicValue");
3345 addEEnumLiteral(logicValueEEnum, LogicValue.UNKNOWN);
3346 addEEnumLiteral(logicValueEEnum, LogicValue.FALSE);
3347 addEEnumLiteral(logicValueEEnum, LogicValue.TRUE);
3348 addEEnumLiteral(logicValueEEnum, LogicValue.ERROR);
3349
3350 initEEnum(objectiveKindEEnum, ObjectiveKind.class, "ObjectiveKind");
3351 addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MINIMIZATION);
3352 addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MAXIMIZATION);
3353
3354 initEEnum(attributeKindEEnum, AttributeKind.class, "AttributeKind");
3355 addEEnumLiteral(attributeKindEEnum, AttributeKind.FUNCTIONAL);
3356 addEEnumLiteral(attributeKindEEnum, AttributeKind.ERROR);
3357 addEEnumLiteral(attributeKindEEnum, AttributeKind.ROOT);
3358 addEEnumLiteral(attributeKindEEnum, AttributeKind.CONTAINMENT);
3359
3360 // Create resource
3361 createResource(eNS_URI);
3362 }
3363
3364} //SolverLanguagePackageImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java
new file mode 100644
index 00000000..63dd9e11
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
8import org.eclipse.viatra.solver.language.solverLanguage.StarArgument;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Star Argument</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class StarArgumentImpl extends ArgumentImpl implements StarArgument {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected StarArgumentImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.STAR_ARGUMENT;
35 }
36
37} //StarArgumentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java
new file mode 100644
index 00000000..36404986
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java
@@ -0,0 +1,39 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
10import org.eclipse.viatra.solver.language.solverLanguage.Statement;
11
12/**
13 * <!-- begin-user-doc -->
14 * An implementation of the model object '<em><b>Statement</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * @generated
18 */
19public abstract class StatementImpl extends MinimalEObjectImpl.Container implements Statement {
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected StatementImpl() {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass() {
36 return SolverLanguagePackage.Literals.STATEMENT;
37 }
38
39} //StatementImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java
new file mode 100644
index 00000000..8b321f80
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>String Literal</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl#getValue <em>Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class StringLiteralImpl extends LiteralImpl implements StringLiteral {
28 /**
29 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getValue()
33 * @generated
34 * @ordered
35 */
36 protected static final String VALUE_EDEFAULT = null;
37
38 /**
39 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getValue()
43 * @generated
44 * @ordered
45 */
46 protected String value = VALUE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected StringLiteralImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.STRING_LITERAL;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public String getValue() {
73 return value;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setValue(String newValue) {
82 String oldValue = value;
83 value = newValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.STRING_LITERAL__VALUE, oldValue,
86 value));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.STRING_LITERAL__VALUE:
98 return getValue();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.STRING_LITERAL__VALUE:
112 setValue((String) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.STRING_LITERAL__VALUE:
127 setValue(VALUE_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.STRING_LITERAL__VALUE:
142 return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (value: ");
159 result.append(value);
160 result.append(')');
161 return result.toString();
162 }
163
164} //StringLiteralImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java
new file mode 100644
index 00000000..df89831b
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java
@@ -0,0 +1,150 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.NotificationChain;
8
9import org.eclipse.emf.common.util.EList;
10
11import org.eclipse.emf.ecore.EClass;
12import org.eclipse.emf.ecore.InternalEObject;
13
14import org.eclipse.emf.ecore.util.EObjectContainmentEList;
15import org.eclipse.emf.ecore.util.InternalEList;
16
17import org.eclipse.viatra.solver.language.solverLanguage.Case;
18import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
19import org.eclipse.viatra.solver.language.solverLanguage.Switch;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Switch</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl#getCases <em>Cases</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class SwitchImpl extends ExpressionImpl implements Switch {
35 /**
36 * The cached value of the '{@link #getCases() <em>Cases</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getCases()
40 * @generated
41 * @ordered
42 */
43 protected EList<Case> cases;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected SwitchImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return SolverLanguagePackage.Literals.SWITCH;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<Case> getCases() {
70 if (cases == null) {
71 cases = new EObjectContainmentEList<Case>(Case.class, this, SolverLanguagePackage.SWITCH__CASES);
72 }
73 return cases;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 @Override
82 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
83 switch (featureID) {
84 case SolverLanguagePackage.SWITCH__CASES:
85 return ((InternalEList<?>) getCases()).basicRemove(otherEnd, msgs);
86 }
87 return super.eInverseRemove(otherEnd, featureID, msgs);
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 public Object eGet(int featureID, boolean resolve, boolean coreType) {
97 switch (featureID) {
98 case SolverLanguagePackage.SWITCH__CASES:
99 return getCases();
100 }
101 return super.eGet(featureID, resolve, coreType);
102 }
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 @SuppressWarnings("unchecked")
110 @Override
111 public void eSet(int featureID, Object newValue) {
112 switch (featureID) {
113 case SolverLanguagePackage.SWITCH__CASES:
114 getCases().clear();
115 getCases().addAll((Collection<? extends Case>) newValue);
116 return;
117 }
118 super.eSet(featureID, newValue);
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 @Override
127 public void eUnset(int featureID) {
128 switch (featureID) {
129 case SolverLanguagePackage.SWITCH__CASES:
130 getCases().clear();
131 return;
132 }
133 super.eUnset(featureID);
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public boolean eIsSet(int featureID) {
143 switch (featureID) {
144 case SolverLanguagePackage.SWITCH__CASES:
145 return cases != null && !cases.isEmpty();
146 }
147 return super.eIsSet(featureID);
148 }
149
150} //SwitchImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java
new file mode 100644
index 00000000..a9f76acb
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
11
12import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
13import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Symbol</b></em>'.
18 * <!-- end-user-doc -->
19 * <p>
20 * The following features are implemented:
21 * </p>
22 * <ul>
23 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public abstract class SymbolImpl extends MinimalEObjectImpl.Container implements Symbol {
29 /**
30 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getName()
34 * @generated
35 * @ordered
36 */
37 protected static final String NAME_EDEFAULT = null;
38
39 /**
40 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getName()
44 * @generated
45 * @ordered
46 */
47 protected String name = NAME_EDEFAULT;
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 protected SymbolImpl() {
55 super();
56 }
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 @Override
64 protected EClass eStaticClass() {
65 return SolverLanguagePackage.Literals.SYMBOL;
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 public String getName() {
74 return name;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public void setName(String newName) {
83 String oldName = name;
84 name = newName;
85 if (eNotificationRequired())
86 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.SYMBOL__NAME, oldName, name));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.SYMBOL__NAME:
98 return getName();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.SYMBOL__NAME:
112 setName((String) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.SYMBOL__NAME:
127 setName(NAME_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.SYMBOL__NAME:
142 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (name: ");
159 result.append(name);
160 result.append(')');
161 return result.toString();
162 }
163
164} //SymbolImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java
new file mode 100644
index 00000000..a3c76e63
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java
@@ -0,0 +1,230 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.InternalEObject;
9
10import org.eclipse.emf.ecore.impl.ENotificationImpl;
11import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
15import org.eclipse.viatra.solver.language.solverLanguage.TypeReference;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Type Reference</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl#isForceObjectType <em>Force Object Type</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl#getType <em>Type</em>}</li>
27 * </ul>
28 *
29 * @generated
30 */
31public class TypeReferenceImpl extends MinimalEObjectImpl.Container implements TypeReference {
32 /**
33 * The default value of the '{@link #isForceObjectType() <em>Force Object Type</em>}' attribute.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @see #isForceObjectType()
37 * @generated
38 * @ordered
39 */
40 protected static final boolean FORCE_OBJECT_TYPE_EDEFAULT = false;
41
42 /**
43 * The cached value of the '{@link #isForceObjectType() <em>Force Object Type</em>}' attribute.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #isForceObjectType()
47 * @generated
48 * @ordered
49 */
50 protected boolean forceObjectType = FORCE_OBJECT_TYPE_EDEFAULT;
51
52 /**
53 * The cached value of the '{@link #getType() <em>Type</em>}' reference.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @see #getType()
57 * @generated
58 * @ordered
59 */
60 protected Symbol type;
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 protected TypeReferenceImpl() {
68 super();
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 @Override
77 protected EClass eStaticClass() {
78 return SolverLanguagePackage.Literals.TYPE_REFERENCE;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public boolean isForceObjectType() {
87 return forceObjectType;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public void setForceObjectType(boolean newForceObjectType) {
96 boolean oldForceObjectType = forceObjectType;
97 forceObjectType = newForceObjectType;
98 if (eNotificationRequired())
99 eNotify(new ENotificationImpl(this, Notification.SET,
100 SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE, oldForceObjectType, forceObjectType));
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 public Symbol getType() {
109 if (type != null && type.eIsProxy()) {
110 InternalEObject oldType = (InternalEObject) type;
111 type = (Symbol) eResolveProxy(oldType);
112 if (type != oldType) {
113 if (eNotificationRequired())
114 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
115 SolverLanguagePackage.TYPE_REFERENCE__TYPE, oldType, type));
116 }
117 }
118 return type;
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public Symbol basicGetType() {
127 return type;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public void setType(Symbol newType) {
136 Symbol oldType = type;
137 type = newType;
138 if (eNotificationRequired())
139 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPE_REFERENCE__TYPE, oldType,
140 type));
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 @Override
149 public Object eGet(int featureID, boolean resolve, boolean coreType) {
150 switch (featureID) {
151 case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE:
152 return isForceObjectType();
153 case SolverLanguagePackage.TYPE_REFERENCE__TYPE:
154 if (resolve)
155 return getType();
156 return basicGetType();
157 }
158 return super.eGet(featureID, resolve, coreType);
159 }
160
161 /**
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 */
166 @Override
167 public void eSet(int featureID, Object newValue) {
168 switch (featureID) {
169 case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE:
170 setForceObjectType((Boolean) newValue);
171 return;
172 case SolverLanguagePackage.TYPE_REFERENCE__TYPE:
173 setType((Symbol) newValue);
174 return;
175 }
176 super.eSet(featureID, newValue);
177 }
178
179 /**
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 */
184 @Override
185 public void eUnset(int featureID) {
186 switch (featureID) {
187 case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE:
188 setForceObjectType(FORCE_OBJECT_TYPE_EDEFAULT);
189 return;
190 case SolverLanguagePackage.TYPE_REFERENCE__TYPE:
191 setType((Symbol) null);
192 return;
193 }
194 super.eUnset(featureID);
195 }
196
197 /**
198 * <!-- begin-user-doc -->
199 * <!-- end-user-doc -->
200 * @generated
201 */
202 @Override
203 public boolean eIsSet(int featureID) {
204 switch (featureID) {
205 case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE:
206 return forceObjectType != FORCE_OBJECT_TYPE_EDEFAULT;
207 case SolverLanguagePackage.TYPE_REFERENCE__TYPE:
208 return type != null;
209 }
210 return super.eIsSet(featureID);
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 @Override
219 public String toString() {
220 if (eIsProxy())
221 return super.toString();
222
223 StringBuilder result = new StringBuilder(super.toString());
224 result.append(" (forceObjectType: ");
225 result.append(forceObjectType);
226 result.append(')');
227 return result.toString();
228 }
229
230} //TypeReferenceImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java
new file mode 100644
index 00000000..89778fc9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java
@@ -0,0 +1,182 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.TypeReference;
15import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Typed Argument</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl#getTypeReference <em>Type Reference</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public abstract class TypedArgumentImpl extends ArgumentImpl implements TypedArgument {
31 /**
32 * The cached value of the '{@link #getTypeReference() <em>Type Reference</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getTypeReference()
36 * @generated
37 * @ordered
38 */
39 protected TypeReference typeReference;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected TypedArgumentImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return SolverLanguagePackage.Literals.TYPED_ARGUMENT;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public TypeReference getTypeReference() {
66 return typeReference;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetTypeReference(TypeReference newTypeReference, NotificationChain msgs) {
75 TypeReference oldTypeReference = typeReference;
76 typeReference = newTypeReference;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, oldTypeReference, newTypeReference);
80 if (msgs == null)
81 msgs = notification;
82 else
83 msgs.add(notification);
84 }
85 return msgs;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public void setTypeReference(TypeReference newTypeReference) {
94 if (newTypeReference != typeReference) {
95 NotificationChain msgs = null;
96 if (typeReference != null)
97 msgs = ((InternalEObject) typeReference).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, null, msgs);
99 if (newTypeReference != null)
100 msgs = ((InternalEObject) newTypeReference).eInverseAdd(this,
101 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, null, msgs);
102 msgs = basicSetTypeReference(newTypeReference, msgs);
103 if (msgs != null)
104 msgs.dispatch();
105 } else if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE,
107 newTypeReference, newTypeReference));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
117 switch (featureID) {
118 case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE:
119 return basicSetTypeReference(null, msgs);
120 }
121 return super.eInverseRemove(otherEnd, featureID, msgs);
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @Override
130 public Object eGet(int featureID, boolean resolve, boolean coreType) {
131 switch (featureID) {
132 case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE:
133 return getTypeReference();
134 }
135 return super.eGet(featureID, resolve, coreType);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public void eSet(int featureID, Object newValue) {
145 switch (featureID) {
146 case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE:
147 setTypeReference((TypeReference) newValue);
148 return;
149 }
150 super.eSet(featureID, newValue);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @Override
159 public void eUnset(int featureID) {
160 switch (featureID) {
161 case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE:
162 setTypeReference((TypeReference) null);
163 return;
164 }
165 super.eUnset(featureID);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public boolean eIsSet(int featureID) {
175 switch (featureID) {
176 case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE:
177 return typeReference != null;
178 }
179 return super.eIsSet(featureID);
180 }
181
182} //TypedArgumentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java
new file mode 100644
index 00000000..ebee59b6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
8import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Typed Star Argument</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class TypedStarArgumentImpl extends TypedArgumentImpl implements TypedStarArgument {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected TypedStarArgumentImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.TYPED_STAR_ARGUMENT;
35 }
36
37} //TypedStarArgumentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java
new file mode 100644
index 00000000..6c83d121
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java
@@ -0,0 +1,164 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12import org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Typed Variable Argument</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl#getName <em>Name</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class TypedVariableArgumentImpl extends TypedArgumentImpl implements TypedVariableArgument {
28 /**
29 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getName()
33 * @generated
34 * @ordered
35 */
36 protected static final String NAME_EDEFAULT = null;
37
38 /**
39 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getName()
43 * @generated
44 * @ordered
45 */
46 protected String name = NAME_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected TypedVariableArgumentImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.TYPED_VARIABLE_ARGUMENT;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public String getName() {
73 return name;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setName(String newName) {
82 String oldName = name;
83 name = newName;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME,
86 oldName, name));
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 public Object eGet(int featureID, boolean resolve, boolean coreType) {
96 switch (featureID) {
97 case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME:
98 return getName();
99 }
100 return super.eGet(featureID, resolve, coreType);
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public void eSet(int featureID, Object newValue) {
110 switch (featureID) {
111 case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME:
112 setName((String) newValue);
113 return;
114 }
115 super.eSet(featureID, newValue);
116 }
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 @Override
124 public void eUnset(int featureID) {
125 switch (featureID) {
126 case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME:
127 setName(NAME_EDEFAULT);
128 return;
129 }
130 super.eUnset(featureID);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @Override
139 public boolean eIsSet(int featureID) {
140 switch (featureID) {
141 case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME:
142 return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
143 }
144 return super.eIsSet(featureID);
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 @Override
153 public String toString() {
154 if (eIsProxy())
155 return super.toString();
156
157 StringBuilder result = new StringBuilder(super.toString());
158 result.append(" (name: ");
159 result.append(name);
160 result.append(')');
161 return result.toString();
162 }
163
164} //TypedVariableArgumentImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java
new file mode 100644
index 00000000..11291304
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java
@@ -0,0 +1,253 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.Expression;
14import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
15import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression;
16import org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Unary Expression</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl#getBody <em>Body</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl#getOp <em>Op</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class UnaryExpressionImpl extends ExpressionImpl implements UnaryExpression {
33 /**
34 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getBody()
38 * @generated
39 * @ordered
40 */
41 protected Expression body;
42
43 /**
44 * The default value of the '{@link #getOp() <em>Op</em>}' attribute.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getOp()
48 * @generated
49 * @ordered
50 */
51 protected static final UnaryOperator OP_EDEFAULT = UnaryOperator.NOT;
52
53 /**
54 * The cached value of the '{@link #getOp() <em>Op</em>}' attribute.
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @see #getOp()
58 * @generated
59 * @ordered
60 */
61 protected UnaryOperator op = OP_EDEFAULT;
62
63 /**
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 protected UnaryExpressionImpl() {
69 super();
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 @Override
78 protected EClass eStaticClass() {
79 return SolverLanguagePackage.Literals.UNARY_EXPRESSION;
80 }
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 public Expression getBody() {
88 return body;
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
97 Expression oldBody = body;
98 body = newBody;
99 if (eNotificationRequired()) {
100 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
101 SolverLanguagePackage.UNARY_EXPRESSION__BODY, oldBody, newBody);
102 if (msgs == null)
103 msgs = notification;
104 else
105 msgs.add(notification);
106 }
107 return msgs;
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public void setBody(Expression newBody) {
116 if (newBody != body) {
117 NotificationChain msgs = null;
118 if (body != null)
119 msgs = ((InternalEObject) body).eInverseRemove(this,
120 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNARY_EXPRESSION__BODY, null, msgs);
121 if (newBody != null)
122 msgs = ((InternalEObject) newBody).eInverseAdd(this,
123 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNARY_EXPRESSION__BODY, null, msgs);
124 msgs = basicSetBody(newBody, msgs);
125 if (msgs != null)
126 msgs.dispatch();
127 } else if (eNotificationRequired())
128 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__BODY, newBody,
129 newBody));
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 public UnaryOperator getOp() {
138 return op;
139 }
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 public void setOp(UnaryOperator newOp) {
147 UnaryOperator oldOp = op;
148 op = newOp == null ? OP_EDEFAULT : newOp;
149 if (eNotificationRequired())
150 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__OP, oldOp,
151 op));
152 }
153
154 /**
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @generated
158 */
159 @Override
160 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
161 switch (featureID) {
162 case SolverLanguagePackage.UNARY_EXPRESSION__BODY:
163 return basicSetBody(null, msgs);
164 }
165 return super.eInverseRemove(otherEnd, featureID, msgs);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public Object eGet(int featureID, boolean resolve, boolean coreType) {
175 switch (featureID) {
176 case SolverLanguagePackage.UNARY_EXPRESSION__BODY:
177 return getBody();
178 case SolverLanguagePackage.UNARY_EXPRESSION__OP:
179 return getOp();
180 }
181 return super.eGet(featureID, resolve, coreType);
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 @Override
190 public void eSet(int featureID, Object newValue) {
191 switch (featureID) {
192 case SolverLanguagePackage.UNARY_EXPRESSION__BODY:
193 setBody((Expression) newValue);
194 return;
195 case SolverLanguagePackage.UNARY_EXPRESSION__OP:
196 setOp((UnaryOperator) newValue);
197 return;
198 }
199 super.eSet(featureID, newValue);
200 }
201
202 /**
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @generated
206 */
207 @Override
208 public void eUnset(int featureID) {
209 switch (featureID) {
210 case SolverLanguagePackage.UNARY_EXPRESSION__BODY:
211 setBody((Expression) null);
212 return;
213 case SolverLanguagePackage.UNARY_EXPRESSION__OP:
214 setOp(OP_EDEFAULT);
215 return;
216 }
217 super.eUnset(featureID);
218 }
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 @Override
226 public boolean eIsSet(int featureID) {
227 switch (featureID) {
228 case SolverLanguagePackage.UNARY_EXPRESSION__BODY:
229 return body != null;
230 case SolverLanguagePackage.UNARY_EXPRESSION__OP:
231 return op != OP_EDEFAULT;
232 }
233 return super.eIsSet(featureID);
234 }
235
236 /**
237 * <!-- begin-user-doc -->
238 * <!-- end-user-doc -->
239 * @generated
240 */
241 @Override
242 public String toString() {
243 if (eIsProxy())
244 return super.toString();
245
246 StringBuilder result = new StringBuilder(super.toString());
247 result.append(" (op: ");
248 result.append(op);
249 result.append(')');
250 return result.toString();
251 }
252
253} //UnaryExpressionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java
new file mode 100644
index 00000000..d63928d6
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
8import org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Unbounded Multiplicity</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class UnboundedMultiplicityImpl extends MultiplicityImpl implements UnboundedMultiplicity {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected UnboundedMultiplicityImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return SolverLanguagePackage.Literals.UNBOUNDED_MULTIPLICITY;
35 }
36
37} //UnboundedMultiplicityImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java
new file mode 100644
index 00000000..87f259a0
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java
@@ -0,0 +1,262 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
14import org.eclipse.viatra.solver.language.solverLanguage.Expression;
15import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
16import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Unnamed Error Predicate Defintion</b></em>'.
21 * <!-- end-user-doc -->
22 * <p>
23 * The following features are implemented:
24 * </p>
25 * <ul>
26 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl#getArgumentList <em>Argument List</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl#getBody <em>Body</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class UnnamedErrorPredicateDefintionImpl extends StatementImpl implements UnnamedErrorPredicateDefintion {
33 /**
34 * The cached value of the '{@link #getArgumentList() <em>Argument List</em>}' containment reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getArgumentList()
38 * @generated
39 * @ordered
40 */
41 protected ArgumentList argumentList;
42
43 /**
44 * The cached value of the '{@link #getBody() <em>Body</em>}' containment reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getBody()
48 * @generated
49 * @ordered
50 */
51 protected Expression body;
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 protected UnnamedErrorPredicateDefintionImpl() {
59 super();
60 }
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 @Override
68 protected EClass eStaticClass() {
69 return SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDICATE_DEFINTION;
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 public ArgumentList getArgumentList() {
78 return argumentList;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) {
87 ArgumentList oldArgumentList = argumentList;
88 argumentList = newArgumentList;
89 if (eNotificationRequired()) {
90 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
91 SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST, oldArgumentList,
92 newArgumentList);
93 if (msgs == null)
94 msgs = notification;
95 else
96 msgs.add(notification);
97 }
98 return msgs;
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 public void setArgumentList(ArgumentList newArgumentList) {
107 if (newArgumentList != argumentList) {
108 NotificationChain msgs = null;
109 if (argumentList != null)
110 msgs = ((InternalEObject) argumentList).eInverseRemove(this,
111 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST,
112 null, msgs);
113 if (newArgumentList != null)
114 msgs = ((InternalEObject) newArgumentList).eInverseAdd(this,
115 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST,
116 null, msgs);
117 msgs = basicSetArgumentList(newArgumentList, msgs);
118 if (msgs != null)
119 msgs.dispatch();
120 } else if (eNotificationRequired())
121 eNotify(new ENotificationImpl(this, Notification.SET,
122 SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST, newArgumentList,
123 newArgumentList));
124 }
125
126 /**
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @generated
130 */
131 public Expression getBody() {
132 return body;
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) {
141 Expression oldBody = body;
142 body = newBody;
143 if (eNotificationRequired()) {
144 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
145 SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, oldBody, newBody);
146 if (msgs == null)
147 msgs = notification;
148 else
149 msgs.add(notification);
150 }
151 return msgs;
152 }
153
154 /**
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @generated
158 */
159 public void setBody(Expression newBody) {
160 if (newBody != body) {
161 NotificationChain msgs = null;
162 if (body != null)
163 msgs = ((InternalEObject) body).eInverseRemove(this,
164 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, null,
165 msgs);
166 if (newBody != null)
167 msgs = ((InternalEObject) newBody).eInverseAdd(this,
168 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, null,
169 msgs);
170 msgs = basicSetBody(newBody, msgs);
171 if (msgs != null)
172 msgs.dispatch();
173 } else if (eNotificationRequired())
174 eNotify(new ENotificationImpl(this, Notification.SET,
175 SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, newBody, newBody));
176 }
177
178 /**
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @generated
182 */
183 @Override
184 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
185 switch (featureID) {
186 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST:
187 return basicSetArgumentList(null, msgs);
188 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY:
189 return basicSetBody(null, msgs);
190 }
191 return super.eInverseRemove(otherEnd, featureID, msgs);
192 }
193
194 /**
195 * <!-- begin-user-doc -->
196 * <!-- end-user-doc -->
197 * @generated
198 */
199 @Override
200 public Object eGet(int featureID, boolean resolve, boolean coreType) {
201 switch (featureID) {
202 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST:
203 return getArgumentList();
204 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY:
205 return getBody();
206 }
207 return super.eGet(featureID, resolve, coreType);
208 }
209
210 /**
211 * <!-- begin-user-doc -->
212 * <!-- end-user-doc -->
213 * @generated
214 */
215 @Override
216 public void eSet(int featureID, Object newValue) {
217 switch (featureID) {
218 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST:
219 setArgumentList((ArgumentList) newValue);
220 return;
221 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY:
222 setBody((Expression) newValue);
223 return;
224 }
225 super.eSet(featureID, newValue);
226 }
227
228 /**
229 * <!-- begin-user-doc -->
230 * <!-- end-user-doc -->
231 * @generated
232 */
233 @Override
234 public void eUnset(int featureID) {
235 switch (featureID) {
236 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST:
237 setArgumentList((ArgumentList) null);
238 return;
239 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY:
240 setBody((Expression) null);
241 return;
242 }
243 super.eUnset(featureID);
244 }
245
246 /**
247 * <!-- begin-user-doc -->
248 * <!-- end-user-doc -->
249 * @generated
250 */
251 @Override
252 public boolean eIsSet(int featureID) {
253 switch (featureID) {
254 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST:
255 return argumentList != null;
256 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY:
257 return body != null;
258 }
259 return super.eIsSet(featureID);
260 }
261
262} //UnnamedErrorPredicateDefintionImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java
new file mode 100644
index 00000000..494f80d9
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java
@@ -0,0 +1,163 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6
7import org.eclipse.emf.ecore.EClass;
8
9import org.eclipse.emf.ecore.impl.ENotificationImpl;
10
11import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
12import org.eclipse.viatra.solver.language.solverLanguage.UriImport;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Uri Import</b></em>'.
17 * <!-- end-user-doc -->
18 * <p>
19 * The following features are implemented:
20 * </p>
21 * <ul>
22 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl#getUri <em>Uri</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class UriImportImpl extends ImportImpl implements UriImport {
28 /**
29 * The default value of the '{@link #getUri() <em>Uri</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getUri()
33 * @generated
34 * @ordered
35 */
36 protected static final String URI_EDEFAULT = null;
37
38 /**
39 * The cached value of the '{@link #getUri() <em>Uri</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getUri()
43 * @generated
44 * @ordered
45 */
46 protected String uri = URI_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected UriImportImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return SolverLanguagePackage.Literals.URI_IMPORT;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public String getUri() {
73 return uri;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setUri(String newUri) {
82 String oldUri = uri;
83 uri = newUri;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.URI_IMPORT__URI, oldUri, uri));
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 @Override
94 public Object eGet(int featureID, boolean resolve, boolean coreType) {
95 switch (featureID) {
96 case SolverLanguagePackage.URI_IMPORT__URI:
97 return getUri();
98 }
99 return super.eGet(featureID, resolve, coreType);
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 @Override
108 public void eSet(int featureID, Object newValue) {
109 switch (featureID) {
110 case SolverLanguagePackage.URI_IMPORT__URI:
111 setUri((String) newValue);
112 return;
113 }
114 super.eSet(featureID, newValue);
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 @Override
123 public void eUnset(int featureID) {
124 switch (featureID) {
125 case SolverLanguagePackage.URI_IMPORT__URI:
126 setUri(URI_EDEFAULT);
127 return;
128 }
129 super.eUnset(featureID);
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 @Override
138 public boolean eIsSet(int featureID) {
139 switch (featureID) {
140 case SolverLanguagePackage.URI_IMPORT__URI:
141 return URI_EDEFAULT == null ? uri != null : !URI_EDEFAULT.equals(uri);
142 }
143 return super.eIsSet(featureID);
144 }
145
146 /**
147 * <!-- begin-user-doc -->
148 * <!-- end-user-doc -->
149 * @generated
150 */
151 @Override
152 public String toString() {
153 if (eIsProxy())
154 return super.toString();
155
156 StringBuilder result = new StringBuilder(super.toString());
157 result.append(" (uri: ");
158 result.append(uri);
159 result.append(')');
160 return result.toString();
161 }
162
163} //UriImportImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java
new file mode 100644
index 00000000..7b92840a
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java
@@ -0,0 +1,182 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.common.notify.Notification;
6import org.eclipse.emf.common.notify.NotificationChain;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.InternalEObject;
10
11import org.eclipse.emf.ecore.impl.ENotificationImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
14import org.eclipse.viatra.solver.language.solverLanguage.TypeReference;
15import org.eclipse.viatra.solver.language.solverLanguage.Variable;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Variable</b></em>'.
20 * <!-- end-user-doc -->
21 * <p>
22 * The following features are implemented:
23 * </p>
24 * <ul>
25 * <li>{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl#getTypeReference <em>Type Reference</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class VariableImpl extends SymbolImpl implements Variable {
31 /**
32 * The cached value of the '{@link #getTypeReference() <em>Type Reference</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getTypeReference()
36 * @generated
37 * @ordered
38 */
39 protected TypeReference typeReference;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected VariableImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return SolverLanguagePackage.Literals.VARIABLE;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public TypeReference getTypeReference() {
66 return typeReference;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetTypeReference(TypeReference newTypeReference, NotificationChain msgs) {
75 TypeReference oldTypeReference = typeReference;
76 typeReference = newTypeReference;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, oldTypeReference, newTypeReference);
80 if (msgs == null)
81 msgs = notification;
82 else
83 msgs.add(notification);
84 }
85 return msgs;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public void setTypeReference(TypeReference newTypeReference) {
94 if (newTypeReference != typeReference) {
95 NotificationChain msgs = null;
96 if (typeReference != null)
97 msgs = ((InternalEObject) typeReference).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, null, msgs);
99 if (newTypeReference != null)
100 msgs = ((InternalEObject) newTypeReference).eInverseAdd(this,
101 EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, null, msgs);
102 msgs = basicSetTypeReference(newTypeReference, msgs);
103 if (msgs != null)
104 msgs.dispatch();
105 } else if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.VARIABLE__TYPE_REFERENCE,
107 newTypeReference, newTypeReference));
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
117 switch (featureID) {
118 case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE:
119 return basicSetTypeReference(null, msgs);
120 }
121 return super.eInverseRemove(otherEnd, featureID, msgs);
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @Override
130 public Object eGet(int featureID, boolean resolve, boolean coreType) {
131 switch (featureID) {
132 case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE:
133 return getTypeReference();
134 }
135 return super.eGet(featureID, resolve, coreType);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public void eSet(int featureID, Object newValue) {
145 switch (featureID) {
146 case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE:
147 setTypeReference((TypeReference) newValue);
148 return;
149 }
150 super.eSet(featureID, newValue);
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 @Override
159 public void eUnset(int featureID) {
160 switch (featureID) {
161 case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE:
162 setTypeReference((TypeReference) null);
163 return;
164 }
165 super.eUnset(featureID);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 @Override
174 public boolean eIsSet(int featureID) {
175 switch (featureID) {
176 case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE:
177 return typeReference != null;
178 }
179 return super.eIsSet(featureID);
180 }
181
182} //VariableImpl
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java
new file mode 100644
index 00000000..f182e6d2
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java
@@ -0,0 +1,1620 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.util;
4
5import org.eclipse.emf.common.notify.Adapter;
6import org.eclipse.emf.common.notify.Notifier;
7
8import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
9
10import org.eclipse.emf.ecore.EObject;
11
12import org.eclipse.viatra.solver.language.solverLanguage.*;
13
14/**
15 * <!-- begin-user-doc -->
16 * The <b>Adapter Factory</b> for the model.
17 * It provides an adapter <code>createXXX</code> method for each class of the model.
18 * <!-- end-user-doc -->
19 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage
20 * @generated
21 */
22public class SolverLanguageAdapterFactory extends AdapterFactoryImpl {
23 /**
24 * The cached model package.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @generated
28 */
29 protected static SolverLanguagePackage modelPackage;
30
31 /**
32 * Creates an instance of the adapter factory.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 public SolverLanguageAdapterFactory() {
38 if (modelPackage == null) {
39 modelPackage = SolverLanguagePackage.eINSTANCE;
40 }
41 }
42
43 /**
44 * Returns whether this factory is applicable for the type of the object.
45 * <!-- begin-user-doc -->
46 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
47 * <!-- end-user-doc -->
48 * @return whether this factory is applicable for the type of the object.
49 * @generated
50 */
51 @Override
52 public boolean isFactoryForType(Object object) {
53 if (object == modelPackage) {
54 return true;
55 }
56 if (object instanceof EObject) {
57 return ((EObject) object).eClass().getEPackage() == modelPackage;
58 }
59 return false;
60 }
61
62 /**
63 * The switch that delegates to the <code>createXXX</code> methods.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 protected SolverLanguageSwitch<Adapter> modelSwitch = new SolverLanguageSwitch<Adapter>() {
69 @Override
70 public Adapter casePathComponent(PathComponent object) {
71 return createPathComponentAdapter();
72 }
73
74 @Override
75 public Adapter caseSymbol(Symbol object) {
76 return createSymbolAdapter();
77 }
78
79 @Override
80 public Adapter caseCall(Call object) {
81 return createCallAdapter();
82 }
83
84 @Override
85 public Adapter caseReference(Reference object) {
86 return createReferenceAdapter();
87 }
88
89 @Override
90 public Adapter caseExpression(Expression object) {
91 return createExpressionAdapter();
92 }
93
94 @Override
95 public Adapter caseArgument(Argument object) {
96 return createArgumentAdapter();
97 }
98
99 @Override
100 public Adapter caseArgumentList(ArgumentList object) {
101 return createArgumentListAdapter();
102 }
103
104 @Override
105 public Adapter caseExpressionArgument(ExpressionArgument object) {
106 return createExpressionArgumentAdapter();
107 }
108
109 @Override
110 public Adapter caseStarArgument(StarArgument object) {
111 return createStarArgumentAdapter();
112 }
113
114 @Override
115 public Adapter caseTypedArgument(TypedArgument object) {
116 return createTypedArgumentAdapter();
117 }
118
119 @Override
120 public Adapter caseMultiaryExpession(MultiaryExpession object) {
121 return createMultiaryExpessionAdapter();
122 }
123
124 @Override
125 public Adapter caseVariable(Variable object) {
126 return createVariableAdapter();
127 }
128
129 @Override
130 public Adapter caseUnaryExpression(UnaryExpression object) {
131 return createUnaryExpressionAdapter();
132 }
133
134 @Override
135 public Adapter caseBinaryExpression(BinaryExpression object) {
136 return createBinaryExpressionAdapter();
137 }
138
139 @Override
140 public Adapter caseDisjunction(Disjunction object) {
141 return createDisjunctionAdapter();
142 }
143
144 @Override
145 public Adapter caseConjunction(Conjunction object) {
146 return createConjunctionAdapter();
147 }
148
149 @Override
150 public Adapter caseConditionalExpression(ConditionalExpression object) {
151 return createConditionalExpressionAdapter();
152 }
153
154 @Override
155 public Adapter caseSwitch(Switch object) {
156 return createSwitchAdapter();
157 }
158
159 @Override
160 public Adapter caseCase(Case object) {
161 return createCaseAdapter();
162 }
163
164 @Override
165 public Adapter caseLetExpression(LetExpression object) {
166 return createLetExpressionAdapter();
167 }
168
169 @Override
170 public Adapter caseLetBinding(LetBinding object) {
171 return createLetBindingAdapter();
172 }
173
174 @Override
175 public Adapter caseLiteral(Literal object) {
176 return createLiteralAdapter();
177 }
178
179 @Override
180 public Adapter caseIntLiteral(IntLiteral object) {
181 return createIntLiteralAdapter();
182 }
183
184 @Override
185 public Adapter caseRealLiteral(RealLiteral object) {
186 return createRealLiteralAdapter();
187 }
188
189 @Override
190 public Adapter caseStringLiteral(StringLiteral object) {
191 return createStringLiteralAdapter();
192 }
193
194 @Override
195 public Adapter caseLogicLiteral(LogicLiteral object) {
196 return createLogicLiteralAdapter();
197 }
198
199 @Override
200 public Adapter caseEmptyLiteral(EmptyLiteral object) {
201 return createEmptyLiteralAdapter();
202 }
203
204 @Override
205 public Adapter caseCastExpression(CastExpression object) {
206 return createCastExpressionAdapter();
207 }
208
209 @Override
210 public Adapter caseAggregateExpression(AggregateExpression object) {
211 return createAggregateExpressionAdapter();
212 }
213
214 @Override
215 public Adapter caseCount(Count object) {
216 return createCountAdapter();
217 }
218
219 @Override
220 public Adapter caseAggregation(Aggregation object) {
221 return createAggregationAdapter();
222 }
223
224 @Override
225 public Adapter caseForall(Forall object) {
226 return createForallAdapter();
227 }
228
229 @Override
230 public Adapter caseTypeReference(TypeReference object) {
231 return createTypeReferenceAdapter();
232 }
233
234 @Override
235 public Adapter caseInfinityLiteral(InfinityLiteral object) {
236 return createInfinityLiteralAdapter();
237 }
238
239 @Override
240 public Adapter caseInterval(Interval object) {
241 return createIntervalAdapter();
242 }
243
244 @Override
245 public Adapter caseFunctor(Functor object) {
246 return createFunctorAdapter();
247 }
248
249 @Override
250 public Adapter caseRelation(Relation object) {
251 return createRelationAdapter();
252 }
253
254 @Override
255 public Adapter caseBaseRelation(BaseRelation object) {
256 return createBaseRelationAdapter();
257 }
258
259 @Override
260 public Adapter casePredicate(Predicate object) {
261 return createPredicateAdapter();
262 }
263
264 @Override
265 public Adapter caseDatatype(Datatype object) {
266 return createDatatypeAdapter();
267 }
268
269 @Override
270 public Adapter caseFunction(Function object) {
271 return createFunctionAdapter();
272 }
273
274 @Override
275 public Adapter caseMetric(Metric object) {
276 return createMetricAdapter();
277 }
278
279 @Override
280 public Adapter caseOperator(Operator object) {
281 return createOperatorAdapter();
282 }
283
284 @Override
285 public Adapter caseNode(Node object) {
286 return createNodeAdapter();
287 }
288
289 @Override
290 public Adapter caseStatement(Statement object) {
291 return createStatementAdapter();
292 }
293
294 @Override
295 public Adapter caseAbstractAssertion(AbstractAssertion object) {
296 return createAbstractAssertionAdapter();
297 }
298
299 @Override
300 public Adapter caseFunctorDefiniton(FunctorDefiniton object) {
301 return createFunctorDefinitonAdapter();
302 }
303
304 @Override
305 public Adapter casePredicateDefinition(PredicateDefinition object) {
306 return createPredicateDefinitionAdapter();
307 }
308
309 @Override
310 public Adapter caseFunctionDefinition(FunctionDefinition object) {
311 return createFunctionDefinitionAdapter();
312 }
313
314 @Override
315 public Adapter caseAttribute(Attribute object) {
316 return createAttributeAdapter();
317 }
318
319 @Override
320 public Adapter caseExternDeclaration(ExternDeclaration object) {
321 return createExternDeclarationAdapter();
322 }
323
324 @Override
325 public Adapter caseExternFunctorDeclaration(ExternFunctorDeclaration object) {
326 return createExternFunctorDeclarationAdapter();
327 }
328
329 @Override
330 public Adapter caseExternPredicateDeclaration(ExternPredicateDeclaration object) {
331 return createExternPredicateDeclarationAdapter();
332 }
333
334 @Override
335 public Adapter caseExternFunctionDeclaration(ExternFunctionDeclaration object) {
336 return createExternFunctionDeclarationAdapter();
337 }
338
339 @Override
340 public Adapter caseExternAggregationOperatorDeclaration(ExternAggregationOperatorDeclaration object) {
341 return createExternAggregationOperatorDeclarationAdapter();
342 }
343
344 @Override
345 public Adapter caseExternDatatypeDeclaration(ExternDatatypeDeclaration object) {
346 return createExternDatatypeDeclarationAdapter();
347 }
348
349 @Override
350 public Adapter caseClassDeclaration(ClassDeclaration object) {
351 return createClassDeclarationAdapter();
352 }
353
354 @Override
355 public Adapter caseEnumDeclaration(EnumDeclaration object) {
356 return createEnumDeclarationAdapter();
357 }
358
359 @Override
360 public Adapter caseEnumLiteral(EnumLiteral object) {
361 return createEnumLiteralAdapter();
362 }
363
364 @Override
365 public Adapter caseField(Field object) {
366 return createFieldAdapter();
367 }
368
369 @Override
370 public Adapter caseMultiplicity(Multiplicity object) {
371 return createMultiplicityAdapter();
372 }
373
374 @Override
375 public Adapter caseDefaultAssertion(DefaultAssertion object) {
376 return createDefaultAssertionAdapter();
377 }
378
379 @Override
380 public Adapter caseAssertion(Assertion object) {
381 return createAssertionAdapter();
382 }
383
384 @Override
385 public Adapter caseUnboundedMultiplicity(UnboundedMultiplicity object) {
386 return createUnboundedMultiplicityAdapter();
387 }
388
389 @Override
390 public Adapter caseExactMultiplicity(ExactMultiplicity object) {
391 return createExactMultiplicityAdapter();
392 }
393
394 @Override
395 public Adapter caseBoundedMultiplicity(BoundedMultiplicity object) {
396 return createBoundedMultiplicityAdapter();
397 }
398
399 @Override
400 public Adapter caseInlinePredicateAttrributes(InlinePredicateAttrributes object) {
401 return createInlinePredicateAttrributesAdapter();
402 }
403
404 @Override
405 public Adapter caseAggregationOperator(AggregationOperator object) {
406 return createAggregationOperatorAdapter();
407 }
408
409 @Override
410 public Adapter caseProblem(Problem object) {
411 return createProblemAdapter();
412 }
413
414 @Override
415 public Adapter caseTypedStarArgument(TypedStarArgument object) {
416 return createTypedStarArgumentAdapter();
417 }
418
419 @Override
420 public Adapter caseTypedVariableArgument(TypedVariableArgument object) {
421 return createTypedVariableArgumentAdapter();
422 }
423
424 @Override
425 public Adapter caseUnnamedErrorPredicateDefintion(UnnamedErrorPredicateDefintion object) {
426 return createUnnamedErrorPredicateDefintionAdapter();
427 }
428
429 @Override
430 public Adapter caseObjectiveDeclaration(ObjectiveDeclaration object) {
431 return createObjectiveDeclarationAdapter();
432 }
433
434 @Override
435 public Adapter caseScopeDeclaration(ScopeDeclaration object) {
436 return createScopeDeclarationAdapter();
437 }
438
439 @Override
440 public Adapter caseExactScope(ExactScope object) {
441 return createExactScopeAdapter();
442 }
443
444 @Override
445 public Adapter caseBoundedScope(BoundedScope object) {
446 return createBoundedScopeAdapter();
447 }
448
449 @Override
450 public Adapter caseLowerBoundedScope(LowerBoundedScope object) {
451 return createLowerBoundedScopeAdapter();
452 }
453
454 @Override
455 public Adapter caseNamespaceImport(NamespaceImport object) {
456 return createNamespaceImportAdapter();
457 }
458
459 @Override
460 public Adapter caseImport(Import object) {
461 return createImportAdapter();
462 }
463
464 @Override
465 public Adapter caseUriImport(UriImport object) {
466 return createUriImportAdapter();
467 }
468
469 @Override
470 public Adapter defaultCase(EObject object) {
471 return createEObjectAdapter();
472 }
473 };
474
475 /**
476 * Creates an adapter for the <code>target</code>.
477 * <!-- begin-user-doc -->
478 * <!-- end-user-doc -->
479 * @param target the object to adapt.
480 * @return the adapter for the <code>target</code>.
481 * @generated
482 */
483 @Override
484 public Adapter createAdapter(Notifier target) {
485 return modelSwitch.doSwitch((EObject) target);
486 }
487
488 /**
489 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent <em>Path Component</em>}'.
490 * <!-- begin-user-doc -->
491 * This default implementation returns null so that we can easily ignore cases;
492 * it's useful to ignore a case when inheritance will catch all the cases anyway.
493 * <!-- end-user-doc -->
494 * @return the new adapter.
495 * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent
496 * @generated
497 */
498 public Adapter createPathComponentAdapter() {
499 return null;
500 }
501
502 /**
503 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol <em>Symbol</em>}'.
504 * <!-- begin-user-doc -->
505 * This default implementation returns null so that we can easily ignore cases;
506 * it's useful to ignore a case when inheritance will catch all the cases anyway.
507 * <!-- end-user-doc -->
508 * @return the new adapter.
509 * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol
510 * @generated
511 */
512 public Adapter createSymbolAdapter() {
513 return null;
514 }
515
516 /**
517 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Call <em>Call</em>}'.
518 * <!-- begin-user-doc -->
519 * This default implementation returns null so that we can easily ignore cases;
520 * it's useful to ignore a case when inheritance will catch all the cases anyway.
521 * <!-- end-user-doc -->
522 * @return the new adapter.
523 * @see org.eclipse.viatra.solver.language.solverLanguage.Call
524 * @generated
525 */
526 public Adapter createCallAdapter() {
527 return null;
528 }
529
530 /**
531 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference <em>Reference</em>}'.
532 * <!-- begin-user-doc -->
533 * This default implementation returns null so that we can easily ignore cases;
534 * it's useful to ignore a case when inheritance will catch all the cases anyway.
535 * <!-- end-user-doc -->
536 * @return the new adapter.
537 * @see org.eclipse.viatra.solver.language.solverLanguage.Reference
538 * @generated
539 */
540 public Adapter createReferenceAdapter() {
541 return null;
542 }
543
544 /**
545 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression <em>Expression</em>}'.
546 * <!-- begin-user-doc -->
547 * This default implementation returns null so that we can easily ignore cases;
548 * it's useful to ignore a case when inheritance will catch all the cases anyway.
549 * <!-- end-user-doc -->
550 * @return the new adapter.
551 * @see org.eclipse.viatra.solver.language.solverLanguage.Expression
552 * @generated
553 */
554 public Adapter createExpressionAdapter() {
555 return null;
556 }
557
558 /**
559 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Argument <em>Argument</em>}'.
560 * <!-- begin-user-doc -->
561 * This default implementation returns null so that we can easily ignore cases;
562 * it's useful to ignore a case when inheritance will catch all the cases anyway.
563 * <!-- end-user-doc -->
564 * @return the new adapter.
565 * @see org.eclipse.viatra.solver.language.solverLanguage.Argument
566 * @generated
567 */
568 public Adapter createArgumentAdapter() {
569 return null;
570 }
571
572 /**
573 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList <em>Argument List</em>}'.
574 * <!-- begin-user-doc -->
575 * This default implementation returns null so that we can easily ignore cases;
576 * it's useful to ignore a case when inheritance will catch all the cases anyway.
577 * <!-- end-user-doc -->
578 * @return the new adapter.
579 * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList
580 * @generated
581 */
582 public Adapter createArgumentListAdapter() {
583 return null;
584 }
585
586 /**
587 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument <em>Expression Argument</em>}'.
588 * <!-- begin-user-doc -->
589 * This default implementation returns null so that we can easily ignore cases;
590 * it's useful to ignore a case when inheritance will catch all the cases anyway.
591 * <!-- end-user-doc -->
592 * @return the new adapter.
593 * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument
594 * @generated
595 */
596 public Adapter createExpressionArgumentAdapter() {
597 return null;
598 }
599
600 /**
601 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StarArgument <em>Star Argument</em>}'.
602 * <!-- begin-user-doc -->
603 * This default implementation returns null so that we can easily ignore cases;
604 * it's useful to ignore a case when inheritance will catch all the cases anyway.
605 * <!-- end-user-doc -->
606 * @return the new adapter.
607 * @see org.eclipse.viatra.solver.language.solverLanguage.StarArgument
608 * @generated
609 */
610 public Adapter createStarArgumentAdapter() {
611 return null;
612 }
613
614 /**
615 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument <em>Typed Argument</em>}'.
616 * <!-- begin-user-doc -->
617 * This default implementation returns null so that we can easily ignore cases;
618 * it's useful to ignore a case when inheritance will catch all the cases anyway.
619 * <!-- end-user-doc -->
620 * @return the new adapter.
621 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument
622 * @generated
623 */
624 public Adapter createTypedArgumentAdapter() {
625 return null;
626 }
627
628 /**
629 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession <em>Multiary Expession</em>}'.
630 * <!-- begin-user-doc -->
631 * This default implementation returns null so that we can easily ignore cases;
632 * it's useful to ignore a case when inheritance will catch all the cases anyway.
633 * <!-- end-user-doc -->
634 * @return the new adapter.
635 * @see org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession
636 * @generated
637 */
638 public Adapter createMultiaryExpessionAdapter() {
639 return null;
640 }
641
642 /**
643 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable <em>Variable</em>}'.
644 * <!-- begin-user-doc -->
645 * This default implementation returns null so that we can easily ignore cases;
646 * it's useful to ignore a case when inheritance will catch all the cases anyway.
647 * <!-- end-user-doc -->
648 * @return the new adapter.
649 * @see org.eclipse.viatra.solver.language.solverLanguage.Variable
650 * @generated
651 */
652 public Adapter createVariableAdapter() {
653 return null;
654 }
655
656 /**
657 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression <em>Unary Expression</em>}'.
658 * <!-- begin-user-doc -->
659 * This default implementation returns null so that we can easily ignore cases;
660 * it's useful to ignore a case when inheritance will catch all the cases anyway.
661 * <!-- end-user-doc -->
662 * @return the new adapter.
663 * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression
664 * @generated
665 */
666 public Adapter createUnaryExpressionAdapter() {
667 return null;
668 }
669
670 /**
671 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression <em>Binary Expression</em>}'.
672 * <!-- begin-user-doc -->
673 * This default implementation returns null so that we can easily ignore cases;
674 * it's useful to ignore a case when inheritance will catch all the cases anyway.
675 * <!-- end-user-doc -->
676 * @return the new adapter.
677 * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression
678 * @generated
679 */
680 public Adapter createBinaryExpressionAdapter() {
681 return null;
682 }
683
684 /**
685 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction <em>Disjunction</em>}'.
686 * <!-- begin-user-doc -->
687 * This default implementation returns null so that we can easily ignore cases;
688 * it's useful to ignore a case when inheritance will catch all the cases anyway.
689 * <!-- end-user-doc -->
690 * @return the new adapter.
691 * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction
692 * @generated
693 */
694 public Adapter createDisjunctionAdapter() {
695 return null;
696 }
697
698 /**
699 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction <em>Conjunction</em>}'.
700 * <!-- begin-user-doc -->
701 * This default implementation returns null so that we can easily ignore cases;
702 * it's useful to ignore a case when inheritance will catch all the cases anyway.
703 * <!-- end-user-doc -->
704 * @return the new adapter.
705 * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction
706 * @generated
707 */
708 public Adapter createConjunctionAdapter() {
709 return null;
710 }
711
712 /**
713 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression <em>Conditional Expression</em>}'.
714 * <!-- begin-user-doc -->
715 * This default implementation returns null so that we can easily ignore cases;
716 * it's useful to ignore a case when inheritance will catch all the cases anyway.
717 * <!-- end-user-doc -->
718 * @return the new adapter.
719 * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression
720 * @generated
721 */
722 public Adapter createConditionalExpressionAdapter() {
723 return null;
724 }
725
726 /**
727 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch <em>Switch</em>}'.
728 * <!-- begin-user-doc -->
729 * This default implementation returns null so that we can easily ignore cases;
730 * it's useful to ignore a case when inheritance will catch all the cases anyway.
731 * <!-- end-user-doc -->
732 * @return the new adapter.
733 * @see org.eclipse.viatra.solver.language.solverLanguage.Switch
734 * @generated
735 */
736 public Adapter createSwitchAdapter() {
737 return null;
738 }
739
740 /**
741 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Case <em>Case</em>}'.
742 * <!-- begin-user-doc -->
743 * This default implementation returns null so that we can easily ignore cases;
744 * it's useful to ignore a case when inheritance will catch all the cases anyway.
745 * <!-- end-user-doc -->
746 * @return the new adapter.
747 * @see org.eclipse.viatra.solver.language.solverLanguage.Case
748 * @generated
749 */
750 public Adapter createCaseAdapter() {
751 return null;
752 }
753
754 /**
755 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression <em>Let Expression</em>}'.
756 * <!-- begin-user-doc -->
757 * This default implementation returns null so that we can easily ignore cases;
758 * it's useful to ignore a case when inheritance will catch all the cases anyway.
759 * <!-- end-user-doc -->
760 * @return the new adapter.
761 * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression
762 * @generated
763 */
764 public Adapter createLetExpressionAdapter() {
765 return null;
766 }
767
768 /**
769 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding <em>Let Binding</em>}'.
770 * <!-- begin-user-doc -->
771 * This default implementation returns null so that we can easily ignore cases;
772 * it's useful to ignore a case when inheritance will catch all the cases anyway.
773 * <!-- end-user-doc -->
774 * @return the new adapter.
775 * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding
776 * @generated
777 */
778 public Adapter createLetBindingAdapter() {
779 return null;
780 }
781
782 /**
783 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal <em>Literal</em>}'.
784 * <!-- begin-user-doc -->
785 * This default implementation returns null so that we can easily ignore cases;
786 * it's useful to ignore a case when inheritance will catch all the cases anyway.
787 * <!-- end-user-doc -->
788 * @return the new adapter.
789 * @see org.eclipse.viatra.solver.language.solverLanguage.Literal
790 * @generated
791 */
792 public Adapter createLiteralAdapter() {
793 return null;
794 }
795
796 /**
797 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral <em>Int Literal</em>}'.
798 * <!-- begin-user-doc -->
799 * This default implementation returns null so that we can easily ignore cases;
800 * it's useful to ignore a case when inheritance will catch all the cases anyway.
801 * <!-- end-user-doc -->
802 * @return the new adapter.
803 * @see org.eclipse.viatra.solver.language.solverLanguage.IntLiteral
804 * @generated
805 */
806 public Adapter createIntLiteralAdapter() {
807 return null;
808 }
809
810 /**
811 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral <em>Real Literal</em>}'.
812 * <!-- begin-user-doc -->
813 * This default implementation returns null so that we can easily ignore cases;
814 * it's useful to ignore a case when inheritance will catch all the cases anyway.
815 * <!-- end-user-doc -->
816 * @return the new adapter.
817 * @see org.eclipse.viatra.solver.language.solverLanguage.RealLiteral
818 * @generated
819 */
820 public Adapter createRealLiteralAdapter() {
821 return null;
822 }
823
824 /**
825 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral <em>String Literal</em>}'.
826 * <!-- begin-user-doc -->
827 * This default implementation returns null so that we can easily ignore cases;
828 * it's useful to ignore a case when inheritance will catch all the cases anyway.
829 * <!-- end-user-doc -->
830 * @return the new adapter.
831 * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral
832 * @generated
833 */
834 public Adapter createStringLiteralAdapter() {
835 return null;
836 }
837
838 /**
839 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral <em>Logic Literal</em>}'.
840 * <!-- begin-user-doc -->
841 * This default implementation returns null so that we can easily ignore cases;
842 * it's useful to ignore a case when inheritance will catch all the cases anyway.
843 * <!-- end-user-doc -->
844 * @return the new adapter.
845 * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral
846 * @generated
847 */
848 public Adapter createLogicLiteralAdapter() {
849 return null;
850 }
851
852 /**
853 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral <em>Empty Literal</em>}'.
854 * <!-- begin-user-doc -->
855 * This default implementation returns null so that we can easily ignore cases;
856 * it's useful to ignore a case when inheritance will catch all the cases anyway.
857 * <!-- end-user-doc -->
858 * @return the new adapter.
859 * @see org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral
860 * @generated
861 */
862 public Adapter createEmptyLiteralAdapter() {
863 return null;
864 }
865
866 /**
867 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression <em>Cast Expression</em>}'.
868 * <!-- begin-user-doc -->
869 * This default implementation returns null so that we can easily ignore cases;
870 * it's useful to ignore a case when inheritance will catch all the cases anyway.
871 * <!-- end-user-doc -->
872 * @return the new adapter.
873 * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression
874 * @generated
875 */
876 public Adapter createCastExpressionAdapter() {
877 return null;
878 }
879
880 /**
881 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression <em>Aggregate Expression</em>}'.
882 * <!-- begin-user-doc -->
883 * This default implementation returns null so that we can easily ignore cases;
884 * it's useful to ignore a case when inheritance will catch all the cases anyway.
885 * <!-- end-user-doc -->
886 * @return the new adapter.
887 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression
888 * @generated
889 */
890 public Adapter createAggregateExpressionAdapter() {
891 return null;
892 }
893
894 /**
895 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Count <em>Count</em>}'.
896 * <!-- begin-user-doc -->
897 * This default implementation returns null so that we can easily ignore cases;
898 * it's useful to ignore a case when inheritance will catch all the cases anyway.
899 * <!-- end-user-doc -->
900 * @return the new adapter.
901 * @see org.eclipse.viatra.solver.language.solverLanguage.Count
902 * @generated
903 */
904 public Adapter createCountAdapter() {
905 return null;
906 }
907
908 /**
909 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation <em>Aggregation</em>}'.
910 * <!-- begin-user-doc -->
911 * This default implementation returns null so that we can easily ignore cases;
912 * it's useful to ignore a case when inheritance will catch all the cases anyway.
913 * <!-- end-user-doc -->
914 * @return the new adapter.
915 * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation
916 * @generated
917 */
918 public Adapter createAggregationAdapter() {
919 return null;
920 }
921
922 /**
923 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall <em>Forall</em>}'.
924 * <!-- begin-user-doc -->
925 * This default implementation returns null so that we can easily ignore cases;
926 * it's useful to ignore a case when inheritance will catch all the cases anyway.
927 * <!-- end-user-doc -->
928 * @return the new adapter.
929 * @see org.eclipse.viatra.solver.language.solverLanguage.Forall
930 * @generated
931 */
932 public Adapter createForallAdapter() {
933 return null;
934 }
935
936 /**
937 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference <em>Type Reference</em>}'.
938 * <!-- begin-user-doc -->
939 * This default implementation returns null so that we can easily ignore cases;
940 * it's useful to ignore a case when inheritance will catch all the cases anyway.
941 * <!-- end-user-doc -->
942 * @return the new adapter.
943 * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference
944 * @generated
945 */
946 public Adapter createTypeReferenceAdapter() {
947 return null;
948 }
949
950 /**
951 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral <em>Infinity Literal</em>}'.
952 * <!-- begin-user-doc -->
953 * This default implementation returns null so that we can easily ignore cases;
954 * it's useful to ignore a case when inheritance will catch all the cases anyway.
955 * <!-- end-user-doc -->
956 * @return the new adapter.
957 * @see org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral
958 * @generated
959 */
960 public Adapter createInfinityLiteralAdapter() {
961 return null;
962 }
963
964 /**
965 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval <em>Interval</em>}'.
966 * <!-- begin-user-doc -->
967 * This default implementation returns null so that we can easily ignore cases;
968 * it's useful to ignore a case when inheritance will catch all the cases anyway.
969 * <!-- end-user-doc -->
970 * @return the new adapter.
971 * @see org.eclipse.viatra.solver.language.solverLanguage.Interval
972 * @generated
973 */
974 public Adapter createIntervalAdapter() {
975 return null;
976 }
977
978 /**
979 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor <em>Functor</em>}'.
980 * <!-- begin-user-doc -->
981 * This default implementation returns null so that we can easily ignore cases;
982 * it's useful to ignore a case when inheritance will catch all the cases anyway.
983 * <!-- end-user-doc -->
984 * @return the new adapter.
985 * @see org.eclipse.viatra.solver.language.solverLanguage.Functor
986 * @generated
987 */
988 public Adapter createFunctorAdapter() {
989 return null;
990 }
991
992 /**
993 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Relation <em>Relation</em>}'.
994 * <!-- begin-user-doc -->
995 * This default implementation returns null so that we can easily ignore cases;
996 * it's useful to ignore a case when inheritance will catch all the cases anyway.
997 * <!-- end-user-doc -->
998 * @return the new adapter.
999 * @see org.eclipse.viatra.solver.language.solverLanguage.Relation
1000 * @generated
1001 */
1002 public Adapter createRelationAdapter() {
1003 return null;
1004 }
1005
1006 /**
1007 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BaseRelation <em>Base Relation</em>}'.
1008 * <!-- begin-user-doc -->
1009 * This default implementation returns null so that we can easily ignore cases;
1010 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1011 * <!-- end-user-doc -->
1012 * @return the new adapter.
1013 * @see org.eclipse.viatra.solver.language.solverLanguage.BaseRelation
1014 * @generated
1015 */
1016 public Adapter createBaseRelationAdapter() {
1017 return null;
1018 }
1019
1020 /**
1021 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate <em>Predicate</em>}'.
1022 * <!-- begin-user-doc -->
1023 * This default implementation returns null so that we can easily ignore cases;
1024 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1025 * <!-- end-user-doc -->
1026 * @return the new adapter.
1027 * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate
1028 * @generated
1029 */
1030 public Adapter createPredicateAdapter() {
1031 return null;
1032 }
1033
1034 /**
1035 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Datatype <em>Datatype</em>}'.
1036 * <!-- begin-user-doc -->
1037 * This default implementation returns null so that we can easily ignore cases;
1038 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1039 * <!-- end-user-doc -->
1040 * @return the new adapter.
1041 * @see org.eclipse.viatra.solver.language.solverLanguage.Datatype
1042 * @generated
1043 */
1044 public Adapter createDatatypeAdapter() {
1045 return null;
1046 }
1047
1048 /**
1049 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Function <em>Function</em>}'.
1050 * <!-- begin-user-doc -->
1051 * This default implementation returns null so that we can easily ignore cases;
1052 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1053 * <!-- end-user-doc -->
1054 * @return the new adapter.
1055 * @see org.eclipse.viatra.solver.language.solverLanguage.Function
1056 * @generated
1057 */
1058 public Adapter createFunctionAdapter() {
1059 return null;
1060 }
1061
1062 /**
1063 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric <em>Metric</em>}'.
1064 * <!-- begin-user-doc -->
1065 * This default implementation returns null so that we can easily ignore cases;
1066 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1067 * <!-- end-user-doc -->
1068 * @return the new adapter.
1069 * @see org.eclipse.viatra.solver.language.solverLanguage.Metric
1070 * @generated
1071 */
1072 public Adapter createMetricAdapter() {
1073 return null;
1074 }
1075
1076 /**
1077 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Operator <em>Operator</em>}'.
1078 * <!-- begin-user-doc -->
1079 * This default implementation returns null so that we can easily ignore cases;
1080 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1081 * <!-- end-user-doc -->
1082 * @return the new adapter.
1083 * @see org.eclipse.viatra.solver.language.solverLanguage.Operator
1084 * @generated
1085 */
1086 public Adapter createOperatorAdapter() {
1087 return null;
1088 }
1089
1090 /**
1091 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Node <em>Node</em>}'.
1092 * <!-- begin-user-doc -->
1093 * This default implementation returns null so that we can easily ignore cases;
1094 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1095 * <!-- end-user-doc -->
1096 * @return the new adapter.
1097 * @see org.eclipse.viatra.solver.language.solverLanguage.Node
1098 * @generated
1099 */
1100 public Adapter createNodeAdapter() {
1101 return null;
1102 }
1103
1104 /**
1105 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement <em>Statement</em>}'.
1106 * <!-- begin-user-doc -->
1107 * This default implementation returns null so that we can easily ignore cases;
1108 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1109 * <!-- end-user-doc -->
1110 * @return the new adapter.
1111 * @see org.eclipse.viatra.solver.language.solverLanguage.Statement
1112 * @generated
1113 */
1114 public Adapter createStatementAdapter() {
1115 return null;
1116 }
1117
1118 /**
1119 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion <em>Abstract Assertion</em>}'.
1120 * <!-- begin-user-doc -->
1121 * This default implementation returns null so that we can easily ignore cases;
1122 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1123 * <!-- end-user-doc -->
1124 * @return the new adapter.
1125 * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion
1126 * @generated
1127 */
1128 public Adapter createAbstractAssertionAdapter() {
1129 return null;
1130 }
1131
1132 /**
1133 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton <em>Functor Definiton</em>}'.
1134 * <!-- begin-user-doc -->
1135 * This default implementation returns null so that we can easily ignore cases;
1136 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1137 * <!-- end-user-doc -->
1138 * @return the new adapter.
1139 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton
1140 * @generated
1141 */
1142 public Adapter createFunctorDefinitonAdapter() {
1143 return null;
1144 }
1145
1146 /**
1147 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition <em>Predicate Definition</em>}'.
1148 * <!-- begin-user-doc -->
1149 * This default implementation returns null so that we can easily ignore cases;
1150 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1151 * <!-- end-user-doc -->
1152 * @return the new adapter.
1153 * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition
1154 * @generated
1155 */
1156 public Adapter createPredicateDefinitionAdapter() {
1157 return null;
1158 }
1159
1160 /**
1161 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition <em>Function Definition</em>}'.
1162 * <!-- begin-user-doc -->
1163 * This default implementation returns null so that we can easily ignore cases;
1164 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1165 * <!-- end-user-doc -->
1166 * @return the new adapter.
1167 * @see org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition
1168 * @generated
1169 */
1170 public Adapter createFunctionDefinitionAdapter() {
1171 return null;
1172 }
1173
1174 /**
1175 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute <em>Attribute</em>}'.
1176 * <!-- begin-user-doc -->
1177 * This default implementation returns null so that we can easily ignore cases;
1178 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1179 * <!-- end-user-doc -->
1180 * @return the new adapter.
1181 * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute
1182 * @generated
1183 */
1184 public Adapter createAttributeAdapter() {
1185 return null;
1186 }
1187
1188 /**
1189 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration <em>Extern Declaration</em>}'.
1190 * <!-- begin-user-doc -->
1191 * This default implementation returns null so that we can easily ignore cases;
1192 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1193 * <!-- end-user-doc -->
1194 * @return the new adapter.
1195 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration
1196 * @generated
1197 */
1198 public Adapter createExternDeclarationAdapter() {
1199 return null;
1200 }
1201
1202 /**
1203 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration <em>Extern Functor Declaration</em>}'.
1204 * <!-- begin-user-doc -->
1205 * This default implementation returns null so that we can easily ignore cases;
1206 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1207 * <!-- end-user-doc -->
1208 * @return the new adapter.
1209 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration
1210 * @generated
1211 */
1212 public Adapter createExternFunctorDeclarationAdapter() {
1213 return null;
1214 }
1215
1216 /**
1217 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration <em>Extern Predicate Declaration</em>}'.
1218 * <!-- begin-user-doc -->
1219 * This default implementation returns null so that we can easily ignore cases;
1220 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1221 * <!-- end-user-doc -->
1222 * @return the new adapter.
1223 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration
1224 * @generated
1225 */
1226 public Adapter createExternPredicateDeclarationAdapter() {
1227 return null;
1228 }
1229
1230 /**
1231 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration <em>Extern Function Declaration</em>}'.
1232 * <!-- begin-user-doc -->
1233 * This default implementation returns null so that we can easily ignore cases;
1234 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1235 * <!-- end-user-doc -->
1236 * @return the new adapter.
1237 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration
1238 * @generated
1239 */
1240 public Adapter createExternFunctionDeclarationAdapter() {
1241 return null;
1242 }
1243
1244 /**
1245 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration <em>Extern Aggregation Operator Declaration</em>}'.
1246 * <!-- begin-user-doc -->
1247 * This default implementation returns null so that we can easily ignore cases;
1248 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1249 * <!-- end-user-doc -->
1250 * @return the new adapter.
1251 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration
1252 * @generated
1253 */
1254 public Adapter createExternAggregationOperatorDeclarationAdapter() {
1255 return null;
1256 }
1257
1258 /**
1259 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration <em>Extern Datatype Declaration</em>}'.
1260 * <!-- begin-user-doc -->
1261 * This default implementation returns null so that we can easily ignore cases;
1262 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1263 * <!-- end-user-doc -->
1264 * @return the new adapter.
1265 * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration
1266 * @generated
1267 */
1268 public Adapter createExternDatatypeDeclarationAdapter() {
1269 return null;
1270 }
1271
1272 /**
1273 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration <em>Class Declaration</em>}'.
1274 * <!-- begin-user-doc -->
1275 * This default implementation returns null so that we can easily ignore cases;
1276 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1277 * <!-- end-user-doc -->
1278 * @return the new adapter.
1279 * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration
1280 * @generated
1281 */
1282 public Adapter createClassDeclarationAdapter() {
1283 return null;
1284 }
1285
1286 /**
1287 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration <em>Enum Declaration</em>}'.
1288 * <!-- begin-user-doc -->
1289 * This default implementation returns null so that we can easily ignore cases;
1290 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1291 * <!-- end-user-doc -->
1292 * @return the new adapter.
1293 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration
1294 * @generated
1295 */
1296 public Adapter createEnumDeclarationAdapter() {
1297 return null;
1298 }
1299
1300 /**
1301 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral <em>Enum Literal</em>}'.
1302 * <!-- begin-user-doc -->
1303 * This default implementation returns null so that we can easily ignore cases;
1304 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1305 * <!-- end-user-doc -->
1306 * @return the new adapter.
1307 * @see org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral
1308 * @generated
1309 */
1310 public Adapter createEnumLiteralAdapter() {
1311 return null;
1312 }
1313
1314 /**
1315 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Field <em>Field</em>}'.
1316 * <!-- begin-user-doc -->
1317 * This default implementation returns null so that we can easily ignore cases;
1318 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1319 * <!-- end-user-doc -->
1320 * @return the new adapter.
1321 * @see org.eclipse.viatra.solver.language.solverLanguage.Field
1322 * @generated
1323 */
1324 public Adapter createFieldAdapter() {
1325 return null;
1326 }
1327
1328 /**
1329 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Multiplicity <em>Multiplicity</em>}'.
1330 * <!-- begin-user-doc -->
1331 * This default implementation returns null so that we can easily ignore cases;
1332 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1333 * <!-- end-user-doc -->
1334 * @return the new adapter.
1335 * @see org.eclipse.viatra.solver.language.solverLanguage.Multiplicity
1336 * @generated
1337 */
1338 public Adapter createMultiplicityAdapter() {
1339 return null;
1340 }
1341
1342 /**
1343 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion <em>Default Assertion</em>}'.
1344 * <!-- begin-user-doc -->
1345 * This default implementation returns null so that we can easily ignore cases;
1346 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1347 * <!-- end-user-doc -->
1348 * @return the new adapter.
1349 * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion
1350 * @generated
1351 */
1352 public Adapter createDefaultAssertionAdapter() {
1353 return null;
1354 }
1355
1356 /**
1357 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Assertion <em>Assertion</em>}'.
1358 * <!-- begin-user-doc -->
1359 * This default implementation returns null so that we can easily ignore cases;
1360 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1361 * <!-- end-user-doc -->
1362 * @return the new adapter.
1363 * @see org.eclipse.viatra.solver.language.solverLanguage.Assertion
1364 * @generated
1365 */
1366 public Adapter createAssertionAdapter() {
1367 return null;
1368 }
1369
1370 /**
1371 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity <em>Unbounded Multiplicity</em>}'.
1372 * <!-- begin-user-doc -->
1373 * This default implementation returns null so that we can easily ignore cases;
1374 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1375 * <!-- end-user-doc -->
1376 * @return the new adapter.
1377 * @see org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity
1378 * @generated
1379 */
1380 public Adapter createUnboundedMultiplicityAdapter() {
1381 return null;
1382 }
1383
1384 /**
1385 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity <em>Exact Multiplicity</em>}'.
1386 * <!-- begin-user-doc -->
1387 * This default implementation returns null so that we can easily ignore cases;
1388 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1389 * <!-- end-user-doc -->
1390 * @return the new adapter.
1391 * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity
1392 * @generated
1393 */
1394 public Adapter createExactMultiplicityAdapter() {
1395 return null;
1396 }
1397
1398 /**
1399 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity <em>Bounded Multiplicity</em>}'.
1400 * <!-- begin-user-doc -->
1401 * This default implementation returns null so that we can easily ignore cases;
1402 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1403 * <!-- end-user-doc -->
1404 * @return the new adapter.
1405 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity
1406 * @generated
1407 */
1408 public Adapter createBoundedMultiplicityAdapter() {
1409 return null;
1410 }
1411
1412 /**
1413 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes <em>Inline Predicate Attrributes</em>}'.
1414 * <!-- begin-user-doc -->
1415 * This default implementation returns null so that we can easily ignore cases;
1416 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1417 * <!-- end-user-doc -->
1418 * @return the new adapter.
1419 * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes
1420 * @generated
1421 */
1422 public Adapter createInlinePredicateAttrributesAdapter() {
1423 return null;
1424 }
1425
1426 /**
1427 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator <em>Aggregation Operator</em>}'.
1428 * <!-- begin-user-doc -->
1429 * This default implementation returns null so that we can easily ignore cases;
1430 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1431 * <!-- end-user-doc -->
1432 * @return the new adapter.
1433 * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator
1434 * @generated
1435 */
1436 public Adapter createAggregationOperatorAdapter() {
1437 return null;
1438 }
1439
1440 /**
1441 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem <em>Problem</em>}'.
1442 * <!-- begin-user-doc -->
1443 * This default implementation returns null so that we can easily ignore cases;
1444 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1445 * <!-- end-user-doc -->
1446 * @return the new adapter.
1447 * @see org.eclipse.viatra.solver.language.solverLanguage.Problem
1448 * @generated
1449 */
1450 public Adapter createProblemAdapter() {
1451 return null;
1452 }
1453
1454 /**
1455 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument <em>Typed Star Argument</em>}'.
1456 * <!-- begin-user-doc -->
1457 * This default implementation returns null so that we can easily ignore cases;
1458 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1459 * <!-- end-user-doc -->
1460 * @return the new adapter.
1461 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument
1462 * @generated
1463 */
1464 public Adapter createTypedStarArgumentAdapter() {
1465 return null;
1466 }
1467
1468 /**
1469 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument <em>Typed Variable Argument</em>}'.
1470 * <!-- begin-user-doc -->
1471 * This default implementation returns null so that we can easily ignore cases;
1472 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1473 * <!-- end-user-doc -->
1474 * @return the new adapter.
1475 * @see org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument
1476 * @generated
1477 */
1478 public Adapter createTypedVariableArgumentAdapter() {
1479 return null;
1480 }
1481
1482 /**
1483 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion <em>Unnamed Error Predicate Defintion</em>}'.
1484 * <!-- begin-user-doc -->
1485 * This default implementation returns null so that we can easily ignore cases;
1486 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1487 * <!-- end-user-doc -->
1488 * @return the new adapter.
1489 * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion
1490 * @generated
1491 */
1492 public Adapter createUnnamedErrorPredicateDefintionAdapter() {
1493 return null;
1494 }
1495
1496 /**
1497 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration <em>Objective Declaration</em>}'.
1498 * <!-- begin-user-doc -->
1499 * This default implementation returns null so that we can easily ignore cases;
1500 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1501 * <!-- end-user-doc -->
1502 * @return the new adapter.
1503 * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration
1504 * @generated
1505 */
1506 public Adapter createObjectiveDeclarationAdapter() {
1507 return null;
1508 }
1509
1510 /**
1511 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration <em>Scope Declaration</em>}'.
1512 * <!-- begin-user-doc -->
1513 * This default implementation returns null so that we can easily ignore cases;
1514 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1515 * <!-- end-user-doc -->
1516 * @return the new adapter.
1517 * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration
1518 * @generated
1519 */
1520 public Adapter createScopeDeclarationAdapter() {
1521 return null;
1522 }
1523
1524 /**
1525 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope <em>Exact Scope</em>}'.
1526 * <!-- begin-user-doc -->
1527 * This default implementation returns null so that we can easily ignore cases;
1528 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1529 * <!-- end-user-doc -->
1530 * @return the new adapter.
1531 * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScope
1532 * @generated
1533 */
1534 public Adapter createExactScopeAdapter() {
1535 return null;
1536 }
1537
1538 /**
1539 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope <em>Bounded Scope</em>}'.
1540 * <!-- begin-user-doc -->
1541 * This default implementation returns null so that we can easily ignore cases;
1542 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1543 * <!-- end-user-doc -->
1544 * @return the new adapter.
1545 * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope
1546 * @generated
1547 */
1548 public Adapter createBoundedScopeAdapter() {
1549 return null;
1550 }
1551
1552 /**
1553 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope <em>Lower Bounded Scope</em>}'.
1554 * <!-- begin-user-doc -->
1555 * This default implementation returns null so that we can easily ignore cases;
1556 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1557 * <!-- end-user-doc -->
1558 * @return the new adapter.
1559 * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope
1560 * @generated
1561 */
1562 public Adapter createLowerBoundedScopeAdapter() {
1563 return null;
1564 }
1565
1566 /**
1567 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport <em>Namespace Import</em>}'.
1568 * <!-- begin-user-doc -->
1569 * This default implementation returns null so that we can easily ignore cases;
1570 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1571 * <!-- end-user-doc -->
1572 * @return the new adapter.
1573 * @see org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport
1574 * @generated
1575 */
1576 public Adapter createNamespaceImportAdapter() {
1577 return null;
1578 }
1579
1580 /**
1581 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Import <em>Import</em>}'.
1582 * <!-- begin-user-doc -->
1583 * This default implementation returns null so that we can easily ignore cases;
1584 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1585 * <!-- end-user-doc -->
1586 * @return the new adapter.
1587 * @see org.eclipse.viatra.solver.language.solverLanguage.Import
1588 * @generated
1589 */
1590 public Adapter createImportAdapter() {
1591 return null;
1592 }
1593
1594 /**
1595 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport <em>Uri Import</em>}'.
1596 * <!-- begin-user-doc -->
1597 * This default implementation returns null so that we can easily ignore cases;
1598 * it's useful to ignore a case when inheritance will catch all the cases anyway.
1599 * <!-- end-user-doc -->
1600 * @return the new adapter.
1601 * @see org.eclipse.viatra.solver.language.solverLanguage.UriImport
1602 * @generated
1603 */
1604 public Adapter createUriImportAdapter() {
1605 return null;
1606 }
1607
1608 /**
1609 * Creates a new adapter for the default case.
1610 * <!-- begin-user-doc -->
1611 * This default implementation returns null.
1612 * <!-- end-user-doc -->
1613 * @return the new adapter.
1614 * @generated
1615 */
1616 public Adapter createEObjectAdapter() {
1617 return null;
1618 }
1619
1620} //SolverLanguageAdapterFactory
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java
new file mode 100644
index 00000000..4786bb62
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java
@@ -0,0 +1,2114 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.util;
4
5import org.eclipse.emf.ecore.EObject;
6import org.eclipse.emf.ecore.EPackage;
7
8import org.eclipse.emf.ecore.util.Switch;
9
10import org.eclipse.viatra.solver.language.solverLanguage.*;
11
12/**
13 * <!-- begin-user-doc -->
14 * The <b>Switch</b> for the model's inheritance hierarchy.
15 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
16 * to invoke the <code>caseXXX</code> method for each class of the model,
17 * starting with the actual class of the object
18 * and proceeding up the inheritance hierarchy
19 * until a non-null result is returned,
20 * which is the result of the switch.
21 * <!-- end-user-doc -->
22 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage
23 * @generated
24 */
25public class SolverLanguageSwitch<T> extends Switch<T> {
26 /**
27 * The cached model package
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 protected static SolverLanguagePackage modelPackage;
33
34 /**
35 * Creates an instance of the switch.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @generated
39 */
40 public SolverLanguageSwitch() {
41 if (modelPackage == null) {
42 modelPackage = SolverLanguagePackage.eINSTANCE;
43 }
44 }
45
46 /**
47 * Checks whether this is a switch for the given package.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @param ePackage the package in question.
51 * @return whether this is a switch for the given package.
52 * @generated
53 */
54 @Override
55 protected boolean isSwitchFor(EPackage ePackage) {
56 return ePackage == modelPackage;
57 }
58
59 /**
60 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @return the first non-null result returned by a <code>caseXXX</code> call.
64 * @generated
65 */
66 @Override
67 protected T doSwitch(int classifierID, EObject theEObject) {
68 switch (classifierID) {
69 case SolverLanguagePackage.PATH_COMPONENT: {
70 PathComponent pathComponent = (PathComponent) theEObject;
71 T result = casePathComponent(pathComponent);
72 if (result == null)
73 result = defaultCase(theEObject);
74 return result;
75 }
76 case SolverLanguagePackage.SYMBOL: {
77 Symbol symbol = (Symbol) theEObject;
78 T result = caseSymbol(symbol);
79 if (result == null)
80 result = defaultCase(theEObject);
81 return result;
82 }
83 case SolverLanguagePackage.CALL: {
84 Call call = (Call) theEObject;
85 T result = caseCall(call);
86 if (result == null)
87 result = caseExpression(call);
88 if (result == null)
89 result = caseStatement(call);
90 if (result == null)
91 result = defaultCase(theEObject);
92 return result;
93 }
94 case SolverLanguagePackage.REFERENCE: {
95 Reference reference = (Reference) theEObject;
96 T result = caseReference(reference);
97 if (result == null)
98 result = caseExpression(reference);
99 if (result == null)
100 result = caseStatement(reference);
101 if (result == null)
102 result = defaultCase(theEObject);
103 return result;
104 }
105 case SolverLanguagePackage.EXPRESSION: {
106 Expression expression = (Expression) theEObject;
107 T result = caseExpression(expression);
108 if (result == null)
109 result = caseStatement(expression);
110 if (result == null)
111 result = defaultCase(theEObject);
112 return result;
113 }
114 case SolverLanguagePackage.ARGUMENT: {
115 Argument argument = (Argument) theEObject;
116 T result = caseArgument(argument);
117 if (result == null)
118 result = defaultCase(theEObject);
119 return result;
120 }
121 case SolverLanguagePackage.ARGUMENT_LIST: {
122 ArgumentList argumentList = (ArgumentList) theEObject;
123 T result = caseArgumentList(argumentList);
124 if (result == null)
125 result = defaultCase(theEObject);
126 return result;
127 }
128 case SolverLanguagePackage.EXPRESSION_ARGUMENT: {
129 ExpressionArgument expressionArgument = (ExpressionArgument) theEObject;
130 T result = caseExpressionArgument(expressionArgument);
131 if (result == null)
132 result = caseArgument(expressionArgument);
133 if (result == null)
134 result = defaultCase(theEObject);
135 return result;
136 }
137 case SolverLanguagePackage.STAR_ARGUMENT: {
138 StarArgument starArgument = (StarArgument) theEObject;
139 T result = caseStarArgument(starArgument);
140 if (result == null)
141 result = caseArgument(starArgument);
142 if (result == null)
143 result = defaultCase(theEObject);
144 return result;
145 }
146 case SolverLanguagePackage.TYPED_ARGUMENT: {
147 TypedArgument typedArgument = (TypedArgument) theEObject;
148 T result = caseTypedArgument(typedArgument);
149 if (result == null)
150 result = caseArgument(typedArgument);
151 if (result == null)
152 result = defaultCase(theEObject);
153 return result;
154 }
155 case SolverLanguagePackage.MULTIARY_EXPESSION: {
156 MultiaryExpession multiaryExpession = (MultiaryExpession) theEObject;
157 T result = caseMultiaryExpession(multiaryExpession);
158 if (result == null)
159 result = caseExpression(multiaryExpession);
160 if (result == null)
161 result = caseStatement(multiaryExpession);
162 if (result == null)
163 result = defaultCase(theEObject);
164 return result;
165 }
166 case SolverLanguagePackage.VARIABLE: {
167 Variable variable = (Variable) theEObject;
168 T result = caseVariable(variable);
169 if (result == null)
170 result = caseSymbol(variable);
171 if (result == null)
172 result = defaultCase(theEObject);
173 return result;
174 }
175 case SolverLanguagePackage.UNARY_EXPRESSION: {
176 UnaryExpression unaryExpression = (UnaryExpression) theEObject;
177 T result = caseUnaryExpression(unaryExpression);
178 if (result == null)
179 result = caseExpression(unaryExpression);
180 if (result == null)
181 result = caseStatement(unaryExpression);
182 if (result == null)
183 result = defaultCase(theEObject);
184 return result;
185 }
186 case SolverLanguagePackage.BINARY_EXPRESSION: {
187 BinaryExpression binaryExpression = (BinaryExpression) theEObject;
188 T result = caseBinaryExpression(binaryExpression);
189 if (result == null)
190 result = caseExpression(binaryExpression);
191 if (result == null)
192 result = caseStatement(binaryExpression);
193 if (result == null)
194 result = defaultCase(theEObject);
195 return result;
196 }
197 case SolverLanguagePackage.DISJUNCTION: {
198 Disjunction disjunction = (Disjunction) theEObject;
199 T result = caseDisjunction(disjunction);
200 if (result == null)
201 result = caseMultiaryExpession(disjunction);
202 if (result == null)
203 result = caseExpression(disjunction);
204 if (result == null)
205 result = caseStatement(disjunction);
206 if (result == null)
207 result = defaultCase(theEObject);
208 return result;
209 }
210 case SolverLanguagePackage.CONJUNCTION: {
211 Conjunction conjunction = (Conjunction) theEObject;
212 T result = caseConjunction(conjunction);
213 if (result == null)
214 result = caseMultiaryExpession(conjunction);
215 if (result == null)
216 result = caseExpression(conjunction);
217 if (result == null)
218 result = caseStatement(conjunction);
219 if (result == null)
220 result = defaultCase(theEObject);
221 return result;
222 }
223 case SolverLanguagePackage.CONDITIONAL_EXPRESSION: {
224 ConditionalExpression conditionalExpression = (ConditionalExpression) theEObject;
225 T result = caseConditionalExpression(conditionalExpression);
226 if (result == null)
227 result = caseExpression(conditionalExpression);
228 if (result == null)
229 result = caseStatement(conditionalExpression);
230 if (result == null)
231 result = defaultCase(theEObject);
232 return result;
233 }
234 case SolverLanguagePackage.SWITCH: {
235 org.eclipse.viatra.solver.language.solverLanguage.Switch switch_ = (org.eclipse.viatra.solver.language.solverLanguage.Switch) theEObject;
236 T result = caseSwitch(switch_);
237 if (result == null)
238 result = caseExpression(switch_);
239 if (result == null)
240 result = caseStatement(switch_);
241 if (result == null)
242 result = defaultCase(theEObject);
243 return result;
244 }
245 case SolverLanguagePackage.CASE: {
246 Case case_ = (Case) theEObject;
247 T result = caseCase(case_);
248 if (result == null)
249 result = caseExpression(case_);
250 if (result == null)
251 result = caseStatement(case_);
252 if (result == null)
253 result = defaultCase(theEObject);
254 return result;
255 }
256 case SolverLanguagePackage.LET_EXPRESSION: {
257 LetExpression letExpression = (LetExpression) theEObject;
258 T result = caseLetExpression(letExpression);
259 if (result == null)
260 result = caseExpression(letExpression);
261 if (result == null)
262 result = caseStatement(letExpression);
263 if (result == null)
264 result = defaultCase(theEObject);
265 return result;
266 }
267 case SolverLanguagePackage.LET_BINDING: {
268 LetBinding letBinding = (LetBinding) theEObject;
269 T result = caseLetBinding(letBinding);
270 if (result == null)
271 result = defaultCase(theEObject);
272 return result;
273 }
274 case SolverLanguagePackage.LITERAL: {
275 Literal literal = (Literal) theEObject;
276 T result = caseLiteral(literal);
277 if (result == null)
278 result = caseExpression(literal);
279 if (result == null)
280 result = caseStatement(literal);
281 if (result == null)
282 result = defaultCase(theEObject);
283 return result;
284 }
285 case SolverLanguagePackage.INT_LITERAL: {
286 IntLiteral intLiteral = (IntLiteral) theEObject;
287 T result = caseIntLiteral(intLiteral);
288 if (result == null)
289 result = caseLiteral(intLiteral);
290 if (result == null)
291 result = caseExpression(intLiteral);
292 if (result == null)
293 result = caseStatement(intLiteral);
294 if (result == null)
295 result = defaultCase(theEObject);
296 return result;
297 }
298 case SolverLanguagePackage.REAL_LITERAL: {
299 RealLiteral realLiteral = (RealLiteral) theEObject;
300 T result = caseRealLiteral(realLiteral);
301 if (result == null)
302 result = caseLiteral(realLiteral);
303 if (result == null)
304 result = caseExpression(realLiteral);
305 if (result == null)
306 result = caseStatement(realLiteral);
307 if (result == null)
308 result = defaultCase(theEObject);
309 return result;
310 }
311 case SolverLanguagePackage.STRING_LITERAL: {
312 StringLiteral stringLiteral = (StringLiteral) theEObject;
313 T result = caseStringLiteral(stringLiteral);
314 if (result == null)
315 result = caseLiteral(stringLiteral);
316 if (result == null)
317 result = caseExpression(stringLiteral);
318 if (result == null)
319 result = caseStatement(stringLiteral);
320 if (result == null)
321 result = defaultCase(theEObject);
322 return result;
323 }
324 case SolverLanguagePackage.LOGIC_LITERAL: {
325 LogicLiteral logicLiteral = (LogicLiteral) theEObject;
326 T result = caseLogicLiteral(logicLiteral);
327 if (result == null)
328 result = caseLiteral(logicLiteral);
329 if (result == null)
330 result = caseExpression(logicLiteral);
331 if (result == null)
332 result = caseStatement(logicLiteral);
333 if (result == null)
334 result = defaultCase(theEObject);
335 return result;
336 }
337 case SolverLanguagePackage.EMPTY_LITERAL: {
338 EmptyLiteral emptyLiteral = (EmptyLiteral) theEObject;
339 T result = caseEmptyLiteral(emptyLiteral);
340 if (result == null)
341 result = caseLiteral(emptyLiteral);
342 if (result == null)
343 result = caseExpression(emptyLiteral);
344 if (result == null)
345 result = caseStatement(emptyLiteral);
346 if (result == null)
347 result = defaultCase(theEObject);
348 return result;
349 }
350 case SolverLanguagePackage.CAST_EXPRESSION: {
351 CastExpression castExpression = (CastExpression) theEObject;
352 T result = caseCastExpression(castExpression);
353 if (result == null)
354 result = caseExpression(castExpression);
355 if (result == null)
356 result = caseStatement(castExpression);
357 if (result == null)
358 result = defaultCase(theEObject);
359 return result;
360 }
361 case SolverLanguagePackage.AGGREGATE_EXPRESSION: {
362 AggregateExpression aggregateExpression = (AggregateExpression) theEObject;
363 T result = caseAggregateExpression(aggregateExpression);
364 if (result == null)
365 result = caseExpression(aggregateExpression);
366 if (result == null)
367 result = caseStatement(aggregateExpression);
368 if (result == null)
369 result = defaultCase(theEObject);
370 return result;
371 }
372 case SolverLanguagePackage.COUNT: {
373 Count count = (Count) theEObject;
374 T result = caseCount(count);
375 if (result == null)
376 result = caseAggregateExpression(count);
377 if (result == null)
378 result = caseExpression(count);
379 if (result == null)
380 result = caseStatement(count);
381 if (result == null)
382 result = defaultCase(theEObject);
383 return result;
384 }
385 case SolverLanguagePackage.AGGREGATION: {
386 Aggregation aggregation = (Aggregation) theEObject;
387 T result = caseAggregation(aggregation);
388 if (result == null)
389 result = caseAggregateExpression(aggregation);
390 if (result == null)
391 result = caseExpression(aggregation);
392 if (result == null)
393 result = caseStatement(aggregation);
394 if (result == null)
395 result = defaultCase(theEObject);
396 return result;
397 }
398 case SolverLanguagePackage.FORALL: {
399 Forall forall = (Forall) theEObject;
400 T result = caseForall(forall);
401 if (result == null)
402 result = caseAggregateExpression(forall);
403 if (result == null)
404 result = caseExpression(forall);
405 if (result == null)
406 result = caseStatement(forall);
407 if (result == null)
408 result = defaultCase(theEObject);
409 return result;
410 }
411 case SolverLanguagePackage.TYPE_REFERENCE: {
412 TypeReference typeReference = (TypeReference) theEObject;
413 T result = caseTypeReference(typeReference);
414 if (result == null)
415 result = defaultCase(theEObject);
416 return result;
417 }
418 case SolverLanguagePackage.INFINITY_LITERAL: {
419 InfinityLiteral infinityLiteral = (InfinityLiteral) theEObject;
420 T result = caseInfinityLiteral(infinityLiteral);
421 if (result == null)
422 result = caseLiteral(infinityLiteral);
423 if (result == null)
424 result = caseExpression(infinityLiteral);
425 if (result == null)
426 result = caseStatement(infinityLiteral);
427 if (result == null)
428 result = defaultCase(theEObject);
429 return result;
430 }
431 case SolverLanguagePackage.INTERVAL: {
432 Interval interval = (Interval) theEObject;
433 T result = caseInterval(interval);
434 if (result == null)
435 result = caseExpression(interval);
436 if (result == null)
437 result = caseStatement(interval);
438 if (result == null)
439 result = defaultCase(theEObject);
440 return result;
441 }
442 case SolverLanguagePackage.FUNCTOR: {
443 Functor functor = (Functor) theEObject;
444 T result = caseFunctor(functor);
445 if (result == null)
446 result = caseSymbol(functor);
447 if (result == null)
448 result = defaultCase(theEObject);
449 return result;
450 }
451 case SolverLanguagePackage.RELATION: {
452 Relation relation = (Relation) theEObject;
453 T result = caseRelation(relation);
454 if (result == null)
455 result = caseFunctor(relation);
456 if (result == null)
457 result = caseSymbol(relation);
458 if (result == null)
459 result = defaultCase(theEObject);
460 return result;
461 }
462 case SolverLanguagePackage.BASE_RELATION: {
463 BaseRelation baseRelation = (BaseRelation) theEObject;
464 T result = caseBaseRelation(baseRelation);
465 if (result == null)
466 result = caseRelation(baseRelation);
467 if (result == null)
468 result = caseFunctor(baseRelation);
469 if (result == null)
470 result = caseSymbol(baseRelation);
471 if (result == null)
472 result = defaultCase(theEObject);
473 return result;
474 }
475 case SolverLanguagePackage.PREDICATE: {
476 Predicate predicate = (Predicate) theEObject;
477 T result = casePredicate(predicate);
478 if (result == null)
479 result = caseRelation(predicate);
480 if (result == null)
481 result = caseFunctor(predicate);
482 if (result == null)
483 result = caseSymbol(predicate);
484 if (result == null)
485 result = defaultCase(theEObject);
486 return result;
487 }
488 case SolverLanguagePackage.DATATYPE: {
489 Datatype datatype = (Datatype) theEObject;
490 T result = caseDatatype(datatype);
491 if (result == null)
492 result = caseRelation(datatype);
493 if (result == null)
494 result = caseFunctor(datatype);
495 if (result == null)
496 result = caseSymbol(datatype);
497 if (result == null)
498 result = defaultCase(theEObject);
499 return result;
500 }
501 case SolverLanguagePackage.FUNCTION: {
502 Function function = (Function) theEObject;
503 T result = caseFunction(function);
504 if (result == null)
505 result = caseFunctor(function);
506 if (result == null)
507 result = caseSymbol(function);
508 if (result == null)
509 result = defaultCase(theEObject);
510 return result;
511 }
512 case SolverLanguagePackage.METRIC: {
513 Metric metric = (Metric) theEObject;
514 T result = caseMetric(metric);
515 if (result == null)
516 result = caseFunction(metric);
517 if (result == null)
518 result = caseFunctor(metric);
519 if (result == null)
520 result = caseSymbol(metric);
521 if (result == null)
522 result = defaultCase(theEObject);
523 return result;
524 }
525 case SolverLanguagePackage.OPERATOR: {
526 Operator operator = (Operator) theEObject;
527 T result = caseOperator(operator);
528 if (result == null)
529 result = caseFunction(operator);
530 if (result == null)
531 result = caseFunctor(operator);
532 if (result == null)
533 result = caseSymbol(operator);
534 if (result == null)
535 result = defaultCase(theEObject);
536 return result;
537 }
538 case SolverLanguagePackage.NODE: {
539 Node node = (Node) theEObject;
540 T result = caseNode(node);
541 if (result == null)
542 result = caseSymbol(node);
543 if (result == null)
544 result = defaultCase(theEObject);
545 return result;
546 }
547 case SolverLanguagePackage.STATEMENT: {
548 Statement statement = (Statement) theEObject;
549 T result = caseStatement(statement);
550 if (result == null)
551 result = defaultCase(theEObject);
552 return result;
553 }
554 case SolverLanguagePackage.ABSTRACT_ASSERTION: {
555 AbstractAssertion abstractAssertion = (AbstractAssertion) theEObject;
556 T result = caseAbstractAssertion(abstractAssertion);
557 if (result == null)
558 result = caseStatement(abstractAssertion);
559 if (result == null)
560 result = defaultCase(theEObject);
561 return result;
562 }
563 case SolverLanguagePackage.FUNCTOR_DEFINITON: {
564 FunctorDefiniton functorDefiniton = (FunctorDefiniton) theEObject;
565 T result = caseFunctorDefiniton(functorDefiniton);
566 if (result == null)
567 result = caseStatement(functorDefiniton);
568 if (result == null)
569 result = defaultCase(theEObject);
570 return result;
571 }
572 case SolverLanguagePackage.PREDICATE_DEFINITION: {
573 PredicateDefinition predicateDefinition = (PredicateDefinition) theEObject;
574 T result = casePredicateDefinition(predicateDefinition);
575 if (result == null)
576 result = caseFunctorDefiniton(predicateDefinition);
577 if (result == null)
578 result = caseInlinePredicateAttrributes(predicateDefinition);
579 if (result == null)
580 result = caseStatement(predicateDefinition);
581 if (result == null)
582 result = defaultCase(theEObject);
583 return result;
584 }
585 case SolverLanguagePackage.FUNCTION_DEFINITION: {
586 FunctionDefinition functionDefinition = (FunctionDefinition) theEObject;
587 T result = caseFunctionDefinition(functionDefinition);
588 if (result == null)
589 result = caseFunctorDefiniton(functionDefinition);
590 if (result == null)
591 result = caseStatement(functionDefinition);
592 if (result == null)
593 result = defaultCase(theEObject);
594 return result;
595 }
596 case SolverLanguagePackage.ATTRIBUTE: {
597 Attribute attribute = (Attribute) theEObject;
598 T result = caseAttribute(attribute);
599 if (result == null)
600 result = caseStatement(attribute);
601 if (result == null)
602 result = defaultCase(theEObject);
603 return result;
604 }
605 case SolverLanguagePackage.EXTERN_DECLARATION: {
606 ExternDeclaration externDeclaration = (ExternDeclaration) theEObject;
607 T result = caseExternDeclaration(externDeclaration);
608 if (result == null)
609 result = caseStatement(externDeclaration);
610 if (result == null)
611 result = defaultCase(theEObject);
612 return result;
613 }
614 case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION: {
615 ExternFunctorDeclaration externFunctorDeclaration = (ExternFunctorDeclaration) theEObject;
616 T result = caseExternFunctorDeclaration(externFunctorDeclaration);
617 if (result == null)
618 result = caseExternDeclaration(externFunctorDeclaration);
619 if (result == null)
620 result = caseStatement(externFunctorDeclaration);
621 if (result == null)
622 result = defaultCase(theEObject);
623 return result;
624 }
625 case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION: {
626 ExternPredicateDeclaration externPredicateDeclaration = (ExternPredicateDeclaration) theEObject;
627 T result = caseExternPredicateDeclaration(externPredicateDeclaration);
628 if (result == null)
629 result = caseExternFunctorDeclaration(externPredicateDeclaration);
630 if (result == null)
631 result = caseInlinePredicateAttrributes(externPredicateDeclaration);
632 if (result == null)
633 result = caseExternDeclaration(externPredicateDeclaration);
634 if (result == null)
635 result = caseStatement(externPredicateDeclaration);
636 if (result == null)
637 result = defaultCase(theEObject);
638 return result;
639 }
640 case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION: {
641 ExternFunctionDeclaration externFunctionDeclaration = (ExternFunctionDeclaration) theEObject;
642 T result = caseExternFunctionDeclaration(externFunctionDeclaration);
643 if (result == null)
644 result = caseExternFunctorDeclaration(externFunctionDeclaration);
645 if (result == null)
646 result = caseExternDeclaration(externFunctionDeclaration);
647 if (result == null)
648 result = caseStatement(externFunctionDeclaration);
649 if (result == null)
650 result = defaultCase(theEObject);
651 return result;
652 }
653 case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION: {
654 ExternAggregationOperatorDeclaration externAggregationOperatorDeclaration = (ExternAggregationOperatorDeclaration) theEObject;
655 T result = caseExternAggregationOperatorDeclaration(externAggregationOperatorDeclaration);
656 if (result == null)
657 result = caseExternDeclaration(externAggregationOperatorDeclaration);
658 if (result == null)
659 result = caseStatement(externAggregationOperatorDeclaration);
660 if (result == null)
661 result = defaultCase(theEObject);
662 return result;
663 }
664 case SolverLanguagePackage.EXTERN_DATATYPE_DECLARATION: {
665 ExternDatatypeDeclaration externDatatypeDeclaration = (ExternDatatypeDeclaration) theEObject;
666 T result = caseExternDatatypeDeclaration(externDatatypeDeclaration);
667 if (result == null)
668 result = caseExternDeclaration(externDatatypeDeclaration);
669 if (result == null)
670 result = caseStatement(externDatatypeDeclaration);
671 if (result == null)
672 result = defaultCase(theEObject);
673 return result;
674 }
675 case SolverLanguagePackage.CLASS_DECLARATION: {
676 ClassDeclaration classDeclaration = (ClassDeclaration) theEObject;
677 T result = caseClassDeclaration(classDeclaration);
678 if (result == null)
679 result = caseStatement(classDeclaration);
680 if (result == null)
681 result = defaultCase(theEObject);
682 return result;
683 }
684 case SolverLanguagePackage.ENUM_DECLARATION: {
685 EnumDeclaration enumDeclaration = (EnumDeclaration) theEObject;
686 T result = caseEnumDeclaration(enumDeclaration);
687 if (result == null)
688 result = caseStatement(enumDeclaration);
689 if (result == null)
690 result = defaultCase(theEObject);
691 return result;
692 }
693 case SolverLanguagePackage.ENUM_LITERAL: {
694 EnumLiteral enumLiteral = (EnumLiteral) theEObject;
695 T result = caseEnumLiteral(enumLiteral);
696 if (result == null)
697 result = defaultCase(theEObject);
698 return result;
699 }
700 case SolverLanguagePackage.FIELD: {
701 Field field = (Field) theEObject;
702 T result = caseField(field);
703 if (result == null)
704 result = defaultCase(theEObject);
705 return result;
706 }
707 case SolverLanguagePackage.MULTIPLICITY: {
708 Multiplicity multiplicity = (Multiplicity) theEObject;
709 T result = caseMultiplicity(multiplicity);
710 if (result == null)
711 result = defaultCase(theEObject);
712 return result;
713 }
714 case SolverLanguagePackage.DEFAULT_ASSERTION: {
715 DefaultAssertion defaultAssertion = (DefaultAssertion) theEObject;
716 T result = caseDefaultAssertion(defaultAssertion);
717 if (result == null)
718 result = caseAbstractAssertion(defaultAssertion);
719 if (result == null)
720 result = caseStatement(defaultAssertion);
721 if (result == null)
722 result = defaultCase(theEObject);
723 return result;
724 }
725 case SolverLanguagePackage.ASSERTION: {
726 Assertion assertion = (Assertion) theEObject;
727 T result = caseAssertion(assertion);
728 if (result == null)
729 result = caseAbstractAssertion(assertion);
730 if (result == null)
731 result = caseStatement(assertion);
732 if (result == null)
733 result = defaultCase(theEObject);
734 return result;
735 }
736 case SolverLanguagePackage.UNBOUNDED_MULTIPLICITY: {
737 UnboundedMultiplicity unboundedMultiplicity = (UnboundedMultiplicity) theEObject;
738 T result = caseUnboundedMultiplicity(unboundedMultiplicity);
739 if (result == null)
740 result = caseMultiplicity(unboundedMultiplicity);
741 if (result == null)
742 result = defaultCase(theEObject);
743 return result;
744 }
745 case SolverLanguagePackage.EXACT_MULTIPLICITY: {
746 ExactMultiplicity exactMultiplicity = (ExactMultiplicity) theEObject;
747 T result = caseExactMultiplicity(exactMultiplicity);
748 if (result == null)
749 result = caseMultiplicity(exactMultiplicity);
750 if (result == null)
751 result = defaultCase(theEObject);
752 return result;
753 }
754 case SolverLanguagePackage.BOUNDED_MULTIPLICITY: {
755 BoundedMultiplicity boundedMultiplicity = (BoundedMultiplicity) theEObject;
756 T result = caseBoundedMultiplicity(boundedMultiplicity);
757 if (result == null)
758 result = caseMultiplicity(boundedMultiplicity);
759 if (result == null)
760 result = defaultCase(theEObject);
761 return result;
762 }
763 case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES: {
764 InlinePredicateAttrributes inlinePredicateAttrributes = (InlinePredicateAttrributes) theEObject;
765 T result = caseInlinePredicateAttrributes(inlinePredicateAttrributes);
766 if (result == null)
767 result = defaultCase(theEObject);
768 return result;
769 }
770 case SolverLanguagePackage.AGGREGATION_OPERATOR: {
771 AggregationOperator aggregationOperator = (AggregationOperator) theEObject;
772 T result = caseAggregationOperator(aggregationOperator);
773 if (result == null)
774 result = caseSymbol(aggregationOperator);
775 if (result == null)
776 result = defaultCase(theEObject);
777 return result;
778 }
779 case SolverLanguagePackage.PROBLEM: {
780 Problem problem = (Problem) theEObject;
781 T result = caseProblem(problem);
782 if (result == null)
783 result = defaultCase(theEObject);
784 return result;
785 }
786 case SolverLanguagePackage.TYPED_STAR_ARGUMENT: {
787 TypedStarArgument typedStarArgument = (TypedStarArgument) theEObject;
788 T result = caseTypedStarArgument(typedStarArgument);
789 if (result == null)
790 result = caseTypedArgument(typedStarArgument);
791 if (result == null)
792 result = caseArgument(typedStarArgument);
793 if (result == null)
794 result = defaultCase(theEObject);
795 return result;
796 }
797 case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT: {
798 TypedVariableArgument typedVariableArgument = (TypedVariableArgument) theEObject;
799 T result = caseTypedVariableArgument(typedVariableArgument);
800 if (result == null)
801 result = caseTypedArgument(typedVariableArgument);
802 if (result == null)
803 result = caseArgument(typedVariableArgument);
804 if (result == null)
805 result = defaultCase(theEObject);
806 return result;
807 }
808 case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION: {
809 UnnamedErrorPredicateDefintion unnamedErrorPredicateDefintion = (UnnamedErrorPredicateDefintion) theEObject;
810 T result = caseUnnamedErrorPredicateDefintion(unnamedErrorPredicateDefintion);
811 if (result == null)
812 result = caseStatement(unnamedErrorPredicateDefintion);
813 if (result == null)
814 result = defaultCase(theEObject);
815 return result;
816 }
817 case SolverLanguagePackage.OBJECTIVE_DECLARATION: {
818 ObjectiveDeclaration objectiveDeclaration = (ObjectiveDeclaration) theEObject;
819 T result = caseObjectiveDeclaration(objectiveDeclaration);
820 if (result == null)
821 result = caseStatement(objectiveDeclaration);
822 if (result == null)
823 result = defaultCase(theEObject);
824 return result;
825 }
826 case SolverLanguagePackage.SCOPE_DECLARATION: {
827 ScopeDeclaration scopeDeclaration = (ScopeDeclaration) theEObject;
828 T result = caseScopeDeclaration(scopeDeclaration);
829 if (result == null)
830 result = caseStatement(scopeDeclaration);
831 if (result == null)
832 result = defaultCase(theEObject);
833 return result;
834 }
835 case SolverLanguagePackage.EXACT_SCOPE: {
836 ExactScope exactScope = (ExactScope) theEObject;
837 T result = caseExactScope(exactScope);
838 if (result == null)
839 result = caseScopeDeclaration(exactScope);
840 if (result == null)
841 result = caseStatement(exactScope);
842 if (result == null)
843 result = defaultCase(theEObject);
844 return result;
845 }
846 case SolverLanguagePackage.BOUNDED_SCOPE: {
847 BoundedScope boundedScope = (BoundedScope) theEObject;
848 T result = caseBoundedScope(boundedScope);
849 if (result == null)
850 result = caseScopeDeclaration(boundedScope);
851 if (result == null)
852 result = caseStatement(boundedScope);
853 if (result == null)
854 result = defaultCase(theEObject);
855 return result;
856 }
857 case SolverLanguagePackage.LOWER_BOUNDED_SCOPE: {
858 LowerBoundedScope lowerBoundedScope = (LowerBoundedScope) theEObject;
859 T result = caseLowerBoundedScope(lowerBoundedScope);
860 if (result == null)
861 result = caseScopeDeclaration(lowerBoundedScope);
862 if (result == null)
863 result = caseStatement(lowerBoundedScope);
864 if (result == null)
865 result = defaultCase(theEObject);
866 return result;
867 }
868 case SolverLanguagePackage.NAMESPACE_IMPORT: {
869 NamespaceImport namespaceImport = (NamespaceImport) theEObject;
870 T result = caseNamespaceImport(namespaceImport);
871 if (result == null)
872 result = caseImport(namespaceImport);
873 if (result == null)
874 result = defaultCase(theEObject);
875 return result;
876 }
877 case SolverLanguagePackage.IMPORT: {
878 Import import_ = (Import) theEObject;
879 T result = caseImport(import_);
880 if (result == null)
881 result = defaultCase(theEObject);
882 return result;
883 }
884 case SolverLanguagePackage.URI_IMPORT: {
885 UriImport uriImport = (UriImport) theEObject;
886 T result = caseUriImport(uriImport);
887 if (result == null)
888 result = caseImport(uriImport);
889 if (result == null)
890 result = defaultCase(theEObject);
891 return result;
892 }
893 default:
894 return defaultCase(theEObject);
895 }
896 }
897
898 /**
899 * Returns the result of interpreting the object as an instance of '<em>Path Component</em>'.
900 * <!-- begin-user-doc -->
901 * This implementation returns null;
902 * returning a non-null result will terminate the switch.
903 * <!-- end-user-doc -->
904 * @param object the target of the switch.
905 * @return the result of interpreting the object as an instance of '<em>Path Component</em>'.
906 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
907 * @generated
908 */
909 public T casePathComponent(PathComponent object) {
910 return null;
911 }
912
913 /**
914 * Returns the result of interpreting the object as an instance of '<em>Symbol</em>'.
915 * <!-- begin-user-doc -->
916 * This implementation returns null;
917 * returning a non-null result will terminate the switch.
918 * <!-- end-user-doc -->
919 * @param object the target of the switch.
920 * @return the result of interpreting the object as an instance of '<em>Symbol</em>'.
921 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
922 * @generated
923 */
924 public T caseSymbol(Symbol object) {
925 return null;
926 }
927
928 /**
929 * Returns the result of interpreting the object as an instance of '<em>Call</em>'.
930 * <!-- begin-user-doc -->
931 * This implementation returns null;
932 * returning a non-null result will terminate the switch.
933 * <!-- end-user-doc -->
934 * @param object the target of the switch.
935 * @return the result of interpreting the object as an instance of '<em>Call</em>'.
936 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
937 * @generated
938 */
939 public T caseCall(Call object) {
940 return null;
941 }
942
943 /**
944 * Returns the result of interpreting the object as an instance of '<em>Reference</em>'.
945 * <!-- begin-user-doc -->
946 * This implementation returns null;
947 * returning a non-null result will terminate the switch.
948 * <!-- end-user-doc -->
949 * @param object the target of the switch.
950 * @return the result of interpreting the object as an instance of '<em>Reference</em>'.
951 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
952 * @generated
953 */
954 public T caseReference(Reference object) {
955 return null;
956 }
957
958 /**
959 * Returns the result of interpreting the object as an instance of '<em>Expression</em>'.
960 * <!-- begin-user-doc -->
961 * This implementation returns null;
962 * returning a non-null result will terminate the switch.
963 * <!-- end-user-doc -->
964 * @param object the target of the switch.
965 * @return the result of interpreting the object as an instance of '<em>Expression</em>'.
966 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
967 * @generated
968 */
969 public T caseExpression(Expression object) {
970 return null;
971 }
972
973 /**
974 * Returns the result of interpreting the object as an instance of '<em>Argument</em>'.
975 * <!-- begin-user-doc -->
976 * This implementation returns null;
977 * returning a non-null result will terminate the switch.
978 * <!-- end-user-doc -->
979 * @param object the target of the switch.
980 * @return the result of interpreting the object as an instance of '<em>Argument</em>'.
981 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
982 * @generated
983 */
984 public T caseArgument(Argument object) {
985 return null;
986 }
987
988 /**
989 * Returns the result of interpreting the object as an instance of '<em>Argument List</em>'.
990 * <!-- begin-user-doc -->
991 * This implementation returns null;
992 * returning a non-null result will terminate the switch.
993 * <!-- end-user-doc -->
994 * @param object the target of the switch.
995 * @return the result of interpreting the object as an instance of '<em>Argument List</em>'.
996 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
997 * @generated
998 */
999 public T caseArgumentList(ArgumentList object) {
1000 return null;
1001 }
1002
1003 /**
1004 * Returns the result of interpreting the object as an instance of '<em>Expression Argument</em>'.
1005 * <!-- begin-user-doc -->
1006 * This implementation returns null;
1007 * returning a non-null result will terminate the switch.
1008 * <!-- end-user-doc -->
1009 * @param object the target of the switch.
1010 * @return the result of interpreting the object as an instance of '<em>Expression Argument</em>'.
1011 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1012 * @generated
1013 */
1014 public T caseExpressionArgument(ExpressionArgument object) {
1015 return null;
1016 }
1017
1018 /**
1019 * Returns the result of interpreting the object as an instance of '<em>Star Argument</em>'.
1020 * <!-- begin-user-doc -->
1021 * This implementation returns null;
1022 * returning a non-null result will terminate the switch.
1023 * <!-- end-user-doc -->
1024 * @param object the target of the switch.
1025 * @return the result of interpreting the object as an instance of '<em>Star Argument</em>'.
1026 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1027 * @generated
1028 */
1029 public T caseStarArgument(StarArgument object) {
1030 return null;
1031 }
1032
1033 /**
1034 * Returns the result of interpreting the object as an instance of '<em>Typed Argument</em>'.
1035 * <!-- begin-user-doc -->
1036 * This implementation returns null;
1037 * returning a non-null result will terminate the switch.
1038 * <!-- end-user-doc -->
1039 * @param object the target of the switch.
1040 * @return the result of interpreting the object as an instance of '<em>Typed Argument</em>'.
1041 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1042 * @generated
1043 */
1044 public T caseTypedArgument(TypedArgument object) {
1045 return null;
1046 }
1047
1048 /**
1049 * Returns the result of interpreting the object as an instance of '<em>Multiary Expession</em>'.
1050 * <!-- begin-user-doc -->
1051 * This implementation returns null;
1052 * returning a non-null result will terminate the switch.
1053 * <!-- end-user-doc -->
1054 * @param object the target of the switch.
1055 * @return the result of interpreting the object as an instance of '<em>Multiary Expession</em>'.
1056 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1057 * @generated
1058 */
1059 public T caseMultiaryExpession(MultiaryExpession object) {
1060 return null;
1061 }
1062
1063 /**
1064 * Returns the result of interpreting the object as an instance of '<em>Variable</em>'.
1065 * <!-- begin-user-doc -->
1066 * This implementation returns null;
1067 * returning a non-null result will terminate the switch.
1068 * <!-- end-user-doc -->
1069 * @param object the target of the switch.
1070 * @return the result of interpreting the object as an instance of '<em>Variable</em>'.
1071 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1072 * @generated
1073 */
1074 public T caseVariable(Variable object) {
1075 return null;
1076 }
1077
1078 /**
1079 * Returns the result of interpreting the object as an instance of '<em>Unary Expression</em>'.
1080 * <!-- begin-user-doc -->
1081 * This implementation returns null;
1082 * returning a non-null result will terminate the switch.
1083 * <!-- end-user-doc -->
1084 * @param object the target of the switch.
1085 * @return the result of interpreting the object as an instance of '<em>Unary Expression</em>'.
1086 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1087 * @generated
1088 */
1089 public T caseUnaryExpression(UnaryExpression object) {
1090 return null;
1091 }
1092
1093 /**
1094 * Returns the result of interpreting the object as an instance of '<em>Binary Expression</em>'.
1095 * <!-- begin-user-doc -->
1096 * This implementation returns null;
1097 * returning a non-null result will terminate the switch.
1098 * <!-- end-user-doc -->
1099 * @param object the target of the switch.
1100 * @return the result of interpreting the object as an instance of '<em>Binary Expression</em>'.
1101 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1102 * @generated
1103 */
1104 public T caseBinaryExpression(BinaryExpression object) {
1105 return null;
1106 }
1107
1108 /**
1109 * Returns the result of interpreting the object as an instance of '<em>Disjunction</em>'.
1110 * <!-- begin-user-doc -->
1111 * This implementation returns null;
1112 * returning a non-null result will terminate the switch.
1113 * <!-- end-user-doc -->
1114 * @param object the target of the switch.
1115 * @return the result of interpreting the object as an instance of '<em>Disjunction</em>'.
1116 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1117 * @generated
1118 */
1119 public T caseDisjunction(Disjunction object) {
1120 return null;
1121 }
1122
1123 /**
1124 * Returns the result of interpreting the object as an instance of '<em>Conjunction</em>'.
1125 * <!-- begin-user-doc -->
1126 * This implementation returns null;
1127 * returning a non-null result will terminate the switch.
1128 * <!-- end-user-doc -->
1129 * @param object the target of the switch.
1130 * @return the result of interpreting the object as an instance of '<em>Conjunction</em>'.
1131 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1132 * @generated
1133 */
1134 public T caseConjunction(Conjunction object) {
1135 return null;
1136 }
1137
1138 /**
1139 * Returns the result of interpreting the object as an instance of '<em>Conditional Expression</em>'.
1140 * <!-- begin-user-doc -->
1141 * This implementation returns null;
1142 * returning a non-null result will terminate the switch.
1143 * <!-- end-user-doc -->
1144 * @param object the target of the switch.
1145 * @return the result of interpreting the object as an instance of '<em>Conditional Expression</em>'.
1146 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1147 * @generated
1148 */
1149 public T caseConditionalExpression(ConditionalExpression object) {
1150 return null;
1151 }
1152
1153 /**
1154 * Returns the result of interpreting the object as an instance of '<em>Switch</em>'.
1155 * <!-- begin-user-doc -->
1156 * This implementation returns null;
1157 * returning a non-null result will terminate the switch.
1158 * <!-- end-user-doc -->
1159 * @param object the target of the switch.
1160 * @return the result of interpreting the object as an instance of '<em>Switch</em>'.
1161 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1162 * @generated
1163 */
1164 public T caseSwitch(org.eclipse.viatra.solver.language.solverLanguage.Switch object) {
1165 return null;
1166 }
1167
1168 /**
1169 * Returns the result of interpreting the object as an instance of '<em>Case</em>'.
1170 * <!-- begin-user-doc -->
1171 * This implementation returns null;
1172 * returning a non-null result will terminate the switch.
1173 * <!-- end-user-doc -->
1174 * @param object the target of the switch.
1175 * @return the result of interpreting the object as an instance of '<em>Case</em>'.
1176 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1177 * @generated
1178 */
1179 public T caseCase(Case object) {
1180 return null;
1181 }
1182
1183 /**
1184 * Returns the result of interpreting the object as an instance of '<em>Let Expression</em>'.
1185 * <!-- begin-user-doc -->
1186 * This implementation returns null;
1187 * returning a non-null result will terminate the switch.
1188 * <!-- end-user-doc -->
1189 * @param object the target of the switch.
1190 * @return the result of interpreting the object as an instance of '<em>Let Expression</em>'.
1191 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1192 * @generated
1193 */
1194 public T caseLetExpression(LetExpression object) {
1195 return null;
1196 }
1197
1198 /**
1199 * Returns the result of interpreting the object as an instance of '<em>Let Binding</em>'.
1200 * <!-- begin-user-doc -->
1201 * This implementation returns null;
1202 * returning a non-null result will terminate the switch.
1203 * <!-- end-user-doc -->
1204 * @param object the target of the switch.
1205 * @return the result of interpreting the object as an instance of '<em>Let Binding</em>'.
1206 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1207 * @generated
1208 */
1209 public T caseLetBinding(LetBinding object) {
1210 return null;
1211 }
1212
1213 /**
1214 * Returns the result of interpreting the object as an instance of '<em>Literal</em>'.
1215 * <!-- begin-user-doc -->
1216 * This implementation returns null;
1217 * returning a non-null result will terminate the switch.
1218 * <!-- end-user-doc -->
1219 * @param object the target of the switch.
1220 * @return the result of interpreting the object as an instance of '<em>Literal</em>'.
1221 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1222 * @generated
1223 */
1224 public T caseLiteral(Literal object) {
1225 return null;
1226 }
1227
1228 /**
1229 * Returns the result of interpreting the object as an instance of '<em>Int Literal</em>'.
1230 * <!-- begin-user-doc -->
1231 * This implementation returns null;
1232 * returning a non-null result will terminate the switch.
1233 * <!-- end-user-doc -->
1234 * @param object the target of the switch.
1235 * @return the result of interpreting the object as an instance of '<em>Int Literal</em>'.
1236 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1237 * @generated
1238 */
1239 public T caseIntLiteral(IntLiteral object) {
1240 return null;
1241 }
1242
1243 /**
1244 * Returns the result of interpreting the object as an instance of '<em>Real Literal</em>'.
1245 * <!-- begin-user-doc -->
1246 * This implementation returns null;
1247 * returning a non-null result will terminate the switch.
1248 * <!-- end-user-doc -->
1249 * @param object the target of the switch.
1250 * @return the result of interpreting the object as an instance of '<em>Real Literal</em>'.
1251 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1252 * @generated
1253 */
1254 public T caseRealLiteral(RealLiteral object) {
1255 return null;
1256 }
1257
1258 /**
1259 * Returns the result of interpreting the object as an instance of '<em>String Literal</em>'.
1260 * <!-- begin-user-doc -->
1261 * This implementation returns null;
1262 * returning a non-null result will terminate the switch.
1263 * <!-- end-user-doc -->
1264 * @param object the target of the switch.
1265 * @return the result of interpreting the object as an instance of '<em>String Literal</em>'.
1266 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1267 * @generated
1268 */
1269 public T caseStringLiteral(StringLiteral object) {
1270 return null;
1271 }
1272
1273 /**
1274 * Returns the result of interpreting the object as an instance of '<em>Logic Literal</em>'.
1275 * <!-- begin-user-doc -->
1276 * This implementation returns null;
1277 * returning a non-null result will terminate the switch.
1278 * <!-- end-user-doc -->
1279 * @param object the target of the switch.
1280 * @return the result of interpreting the object as an instance of '<em>Logic Literal</em>'.
1281 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1282 * @generated
1283 */
1284 public T caseLogicLiteral(LogicLiteral object) {
1285 return null;
1286 }
1287
1288 /**
1289 * Returns the result of interpreting the object as an instance of '<em>Empty Literal</em>'.
1290 * <!-- begin-user-doc -->
1291 * This implementation returns null;
1292 * returning a non-null result will terminate the switch.
1293 * <!-- end-user-doc -->
1294 * @param object the target of the switch.
1295 * @return the result of interpreting the object as an instance of '<em>Empty Literal</em>'.
1296 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1297 * @generated
1298 */
1299 public T caseEmptyLiteral(EmptyLiteral object) {
1300 return null;
1301 }
1302
1303 /**
1304 * Returns the result of interpreting the object as an instance of '<em>Cast Expression</em>'.
1305 * <!-- begin-user-doc -->
1306 * This implementation returns null;
1307 * returning a non-null result will terminate the switch.
1308 * <!-- end-user-doc -->
1309 * @param object the target of the switch.
1310 * @return the result of interpreting the object as an instance of '<em>Cast Expression</em>'.
1311 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1312 * @generated
1313 */
1314 public T caseCastExpression(CastExpression object) {
1315 return null;
1316 }
1317
1318 /**
1319 * Returns the result of interpreting the object as an instance of '<em>Aggregate Expression</em>'.
1320 * <!-- begin-user-doc -->
1321 * This implementation returns null;
1322 * returning a non-null result will terminate the switch.
1323 * <!-- end-user-doc -->
1324 * @param object the target of the switch.
1325 * @return the result of interpreting the object as an instance of '<em>Aggregate Expression</em>'.
1326 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1327 * @generated
1328 */
1329 public T caseAggregateExpression(AggregateExpression object) {
1330 return null;
1331 }
1332
1333 /**
1334 * Returns the result of interpreting the object as an instance of '<em>Count</em>'.
1335 * <!-- begin-user-doc -->
1336 * This implementation returns null;
1337 * returning a non-null result will terminate the switch.
1338 * <!-- end-user-doc -->
1339 * @param object the target of the switch.
1340 * @return the result of interpreting the object as an instance of '<em>Count</em>'.
1341 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1342 * @generated
1343 */
1344 public T caseCount(Count object) {
1345 return null;
1346 }
1347
1348 /**
1349 * Returns the result of interpreting the object as an instance of '<em>Aggregation</em>'.
1350 * <!-- begin-user-doc -->
1351 * This implementation returns null;
1352 * returning a non-null result will terminate the switch.
1353 * <!-- end-user-doc -->
1354 * @param object the target of the switch.
1355 * @return the result of interpreting the object as an instance of '<em>Aggregation</em>'.
1356 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1357 * @generated
1358 */
1359 public T caseAggregation(Aggregation object) {
1360 return null;
1361 }
1362
1363 /**
1364 * Returns the result of interpreting the object as an instance of '<em>Forall</em>'.
1365 * <!-- begin-user-doc -->
1366 * This implementation returns null;
1367 * returning a non-null result will terminate the switch.
1368 * <!-- end-user-doc -->
1369 * @param object the target of the switch.
1370 * @return the result of interpreting the object as an instance of '<em>Forall</em>'.
1371 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1372 * @generated
1373 */
1374 public T caseForall(Forall object) {
1375 return null;
1376 }
1377
1378 /**
1379 * Returns the result of interpreting the object as an instance of '<em>Type Reference</em>'.
1380 * <!-- begin-user-doc -->
1381 * This implementation returns null;
1382 * returning a non-null result will terminate the switch.
1383 * <!-- end-user-doc -->
1384 * @param object the target of the switch.
1385 * @return the result of interpreting the object as an instance of '<em>Type Reference</em>'.
1386 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1387 * @generated
1388 */
1389 public T caseTypeReference(TypeReference object) {
1390 return null;
1391 }
1392
1393 /**
1394 * Returns the result of interpreting the object as an instance of '<em>Infinity Literal</em>'.
1395 * <!-- begin-user-doc -->
1396 * This implementation returns null;
1397 * returning a non-null result will terminate the switch.
1398 * <!-- end-user-doc -->
1399 * @param object the target of the switch.
1400 * @return the result of interpreting the object as an instance of '<em>Infinity Literal</em>'.
1401 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1402 * @generated
1403 */
1404 public T caseInfinityLiteral(InfinityLiteral object) {
1405 return null;
1406 }
1407
1408 /**
1409 * Returns the result of interpreting the object as an instance of '<em>Interval</em>'.
1410 * <!-- begin-user-doc -->
1411 * This implementation returns null;
1412 * returning a non-null result will terminate the switch.
1413 * <!-- end-user-doc -->
1414 * @param object the target of the switch.
1415 * @return the result of interpreting the object as an instance of '<em>Interval</em>'.
1416 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1417 * @generated
1418 */
1419 public T caseInterval(Interval object) {
1420 return null;
1421 }
1422
1423 /**
1424 * Returns the result of interpreting the object as an instance of '<em>Functor</em>'.
1425 * <!-- begin-user-doc -->
1426 * This implementation returns null;
1427 * returning a non-null result will terminate the switch.
1428 * <!-- end-user-doc -->
1429 * @param object the target of the switch.
1430 * @return the result of interpreting the object as an instance of '<em>Functor</em>'.
1431 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1432 * @generated
1433 */
1434 public T caseFunctor(Functor object) {
1435 return null;
1436 }
1437
1438 /**
1439 * Returns the result of interpreting the object as an instance of '<em>Relation</em>'.
1440 * <!-- begin-user-doc -->
1441 * This implementation returns null;
1442 * returning a non-null result will terminate the switch.
1443 * <!-- end-user-doc -->
1444 * @param object the target of the switch.
1445 * @return the result of interpreting the object as an instance of '<em>Relation</em>'.
1446 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1447 * @generated
1448 */
1449 public T caseRelation(Relation object) {
1450 return null;
1451 }
1452
1453 /**
1454 * Returns the result of interpreting the object as an instance of '<em>Base Relation</em>'.
1455 * <!-- begin-user-doc -->
1456 * This implementation returns null;
1457 * returning a non-null result will terminate the switch.
1458 * <!-- end-user-doc -->
1459 * @param object the target of the switch.
1460 * @return the result of interpreting the object as an instance of '<em>Base Relation</em>'.
1461 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1462 * @generated
1463 */
1464 public T caseBaseRelation(BaseRelation object) {
1465 return null;
1466 }
1467
1468 /**
1469 * Returns the result of interpreting the object as an instance of '<em>Predicate</em>'.
1470 * <!-- begin-user-doc -->
1471 * This implementation returns null;
1472 * returning a non-null result will terminate the switch.
1473 * <!-- end-user-doc -->
1474 * @param object the target of the switch.
1475 * @return the result of interpreting the object as an instance of '<em>Predicate</em>'.
1476 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1477 * @generated
1478 */
1479 public T casePredicate(Predicate object) {
1480 return null;
1481 }
1482
1483 /**
1484 * Returns the result of interpreting the object as an instance of '<em>Datatype</em>'.
1485 * <!-- begin-user-doc -->
1486 * This implementation returns null;
1487 * returning a non-null result will terminate the switch.
1488 * <!-- end-user-doc -->
1489 * @param object the target of the switch.
1490 * @return the result of interpreting the object as an instance of '<em>Datatype</em>'.
1491 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1492 * @generated
1493 */
1494 public T caseDatatype(Datatype object) {
1495 return null;
1496 }
1497
1498 /**
1499 * Returns the result of interpreting the object as an instance of '<em>Function</em>'.
1500 * <!-- begin-user-doc -->
1501 * This implementation returns null;
1502 * returning a non-null result will terminate the switch.
1503 * <!-- end-user-doc -->
1504 * @param object the target of the switch.
1505 * @return the result of interpreting the object as an instance of '<em>Function</em>'.
1506 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1507 * @generated
1508 */
1509 public T caseFunction(Function object) {
1510 return null;
1511 }
1512
1513 /**
1514 * Returns the result of interpreting the object as an instance of '<em>Metric</em>'.
1515 * <!-- begin-user-doc -->
1516 * This implementation returns null;
1517 * returning a non-null result will terminate the switch.
1518 * <!-- end-user-doc -->
1519 * @param object the target of the switch.
1520 * @return the result of interpreting the object as an instance of '<em>Metric</em>'.
1521 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1522 * @generated
1523 */
1524 public T caseMetric(Metric object) {
1525 return null;
1526 }
1527
1528 /**
1529 * Returns the result of interpreting the object as an instance of '<em>Operator</em>'.
1530 * <!-- begin-user-doc -->
1531 * This implementation returns null;
1532 * returning a non-null result will terminate the switch.
1533 * <!-- end-user-doc -->
1534 * @param object the target of the switch.
1535 * @return the result of interpreting the object as an instance of '<em>Operator</em>'.
1536 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1537 * @generated
1538 */
1539 public T caseOperator(Operator object) {
1540 return null;
1541 }
1542
1543 /**
1544 * Returns the result of interpreting the object as an instance of '<em>Node</em>'.
1545 * <!-- begin-user-doc -->
1546 * This implementation returns null;
1547 * returning a non-null result will terminate the switch.
1548 * <!-- end-user-doc -->
1549 * @param object the target of the switch.
1550 * @return the result of interpreting the object as an instance of '<em>Node</em>'.
1551 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1552 * @generated
1553 */
1554 public T caseNode(Node object) {
1555 return null;
1556 }
1557
1558 /**
1559 * Returns the result of interpreting the object as an instance of '<em>Statement</em>'.
1560 * <!-- begin-user-doc -->
1561 * This implementation returns null;
1562 * returning a non-null result will terminate the switch.
1563 * <!-- end-user-doc -->
1564 * @param object the target of the switch.
1565 * @return the result of interpreting the object as an instance of '<em>Statement</em>'.
1566 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1567 * @generated
1568 */
1569 public T caseStatement(Statement object) {
1570 return null;
1571 }
1572
1573 /**
1574 * Returns the result of interpreting the object as an instance of '<em>Abstract Assertion</em>'.
1575 * <!-- begin-user-doc -->
1576 * This implementation returns null;
1577 * returning a non-null result will terminate the switch.
1578 * <!-- end-user-doc -->
1579 * @param object the target of the switch.
1580 * @return the result of interpreting the object as an instance of '<em>Abstract Assertion</em>'.
1581 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1582 * @generated
1583 */
1584 public T caseAbstractAssertion(AbstractAssertion object) {
1585 return null;
1586 }
1587
1588 /**
1589 * Returns the result of interpreting the object as an instance of '<em>Functor Definiton</em>'.
1590 * <!-- begin-user-doc -->
1591 * This implementation returns null;
1592 * returning a non-null result will terminate the switch.
1593 * <!-- end-user-doc -->
1594 * @param object the target of the switch.
1595 * @return the result of interpreting the object as an instance of '<em>Functor Definiton</em>'.
1596 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1597 * @generated
1598 */
1599 public T caseFunctorDefiniton(FunctorDefiniton object) {
1600 return null;
1601 }
1602
1603 /**
1604 * Returns the result of interpreting the object as an instance of '<em>Predicate Definition</em>'.
1605 * <!-- begin-user-doc -->
1606 * This implementation returns null;
1607 * returning a non-null result will terminate the switch.
1608 * <!-- end-user-doc -->
1609 * @param object the target of the switch.
1610 * @return the result of interpreting the object as an instance of '<em>Predicate Definition</em>'.
1611 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1612 * @generated
1613 */
1614 public T casePredicateDefinition(PredicateDefinition object) {
1615 return null;
1616 }
1617
1618 /**
1619 * Returns the result of interpreting the object as an instance of '<em>Function Definition</em>'.
1620 * <!-- begin-user-doc -->
1621 * This implementation returns null;
1622 * returning a non-null result will terminate the switch.
1623 * <!-- end-user-doc -->
1624 * @param object the target of the switch.
1625 * @return the result of interpreting the object as an instance of '<em>Function Definition</em>'.
1626 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1627 * @generated
1628 */
1629 public T caseFunctionDefinition(FunctionDefinition object) {
1630 return null;
1631 }
1632
1633 /**
1634 * Returns the result of interpreting the object as an instance of '<em>Attribute</em>'.
1635 * <!-- begin-user-doc -->
1636 * This implementation returns null;
1637 * returning a non-null result will terminate the switch.
1638 * <!-- end-user-doc -->
1639 * @param object the target of the switch.
1640 * @return the result of interpreting the object as an instance of '<em>Attribute</em>'.
1641 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1642 * @generated
1643 */
1644 public T caseAttribute(Attribute object) {
1645 return null;
1646 }
1647
1648 /**
1649 * Returns the result of interpreting the object as an instance of '<em>Extern Declaration</em>'.
1650 * <!-- begin-user-doc -->
1651 * This implementation returns null;
1652 * returning a non-null result will terminate the switch.
1653 * <!-- end-user-doc -->
1654 * @param object the target of the switch.
1655 * @return the result of interpreting the object as an instance of '<em>Extern Declaration</em>'.
1656 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1657 * @generated
1658 */
1659 public T caseExternDeclaration(ExternDeclaration object) {
1660 return null;
1661 }
1662
1663 /**
1664 * Returns the result of interpreting the object as an instance of '<em>Extern Functor Declaration</em>'.
1665 * <!-- begin-user-doc -->
1666 * This implementation returns null;
1667 * returning a non-null result will terminate the switch.
1668 * <!-- end-user-doc -->
1669 * @param object the target of the switch.
1670 * @return the result of interpreting the object as an instance of '<em>Extern Functor Declaration</em>'.
1671 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1672 * @generated
1673 */
1674 public T caseExternFunctorDeclaration(ExternFunctorDeclaration object) {
1675 return null;
1676 }
1677
1678 /**
1679 * Returns the result of interpreting the object as an instance of '<em>Extern Predicate Declaration</em>'.
1680 * <!-- begin-user-doc -->
1681 * This implementation returns null;
1682 * returning a non-null result will terminate the switch.
1683 * <!-- end-user-doc -->
1684 * @param object the target of the switch.
1685 * @return the result of interpreting the object as an instance of '<em>Extern Predicate Declaration</em>'.
1686 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1687 * @generated
1688 */
1689 public T caseExternPredicateDeclaration(ExternPredicateDeclaration object) {
1690 return null;
1691 }
1692
1693 /**
1694 * Returns the result of interpreting the object as an instance of '<em>Extern Function Declaration</em>'.
1695 * <!-- begin-user-doc -->
1696 * This implementation returns null;
1697 * returning a non-null result will terminate the switch.
1698 * <!-- end-user-doc -->
1699 * @param object the target of the switch.
1700 * @return the result of interpreting the object as an instance of '<em>Extern Function Declaration</em>'.
1701 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1702 * @generated
1703 */
1704 public T caseExternFunctionDeclaration(ExternFunctionDeclaration object) {
1705 return null;
1706 }
1707
1708 /**
1709 * Returns the result of interpreting the object as an instance of '<em>Extern Aggregation Operator Declaration</em>'.
1710 * <!-- begin-user-doc -->
1711 * This implementation returns null;
1712 * returning a non-null result will terminate the switch.
1713 * <!-- end-user-doc -->
1714 * @param object the target of the switch.
1715 * @return the result of interpreting the object as an instance of '<em>Extern Aggregation Operator Declaration</em>'.
1716 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1717 * @generated
1718 */
1719 public T caseExternAggregationOperatorDeclaration(ExternAggregationOperatorDeclaration object) {
1720 return null;
1721 }
1722
1723 /**
1724 * Returns the result of interpreting the object as an instance of '<em>Extern Datatype Declaration</em>'.
1725 * <!-- begin-user-doc -->
1726 * This implementation returns null;
1727 * returning a non-null result will terminate the switch.
1728 * <!-- end-user-doc -->
1729 * @param object the target of the switch.
1730 * @return the result of interpreting the object as an instance of '<em>Extern Datatype Declaration</em>'.
1731 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1732 * @generated
1733 */
1734 public T caseExternDatatypeDeclaration(ExternDatatypeDeclaration object) {
1735 return null;
1736 }
1737
1738 /**
1739 * Returns the result of interpreting the object as an instance of '<em>Class Declaration</em>'.
1740 * <!-- begin-user-doc -->
1741 * This implementation returns null;
1742 * returning a non-null result will terminate the switch.
1743 * <!-- end-user-doc -->
1744 * @param object the target of the switch.
1745 * @return the result of interpreting the object as an instance of '<em>Class Declaration</em>'.
1746 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1747 * @generated
1748 */
1749 public T caseClassDeclaration(ClassDeclaration object) {
1750 return null;
1751 }
1752
1753 /**
1754 * Returns the result of interpreting the object as an instance of '<em>Enum Declaration</em>'.
1755 * <!-- begin-user-doc -->
1756 * This implementation returns null;
1757 * returning a non-null result will terminate the switch.
1758 * <!-- end-user-doc -->
1759 * @param object the target of the switch.
1760 * @return the result of interpreting the object as an instance of '<em>Enum Declaration</em>'.
1761 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1762 * @generated
1763 */
1764 public T caseEnumDeclaration(EnumDeclaration object) {
1765 return null;
1766 }
1767
1768 /**
1769 * Returns the result of interpreting the object as an instance of '<em>Enum Literal</em>'.
1770 * <!-- begin-user-doc -->
1771 * This implementation returns null;
1772 * returning a non-null result will terminate the switch.
1773 * <!-- end-user-doc -->
1774 * @param object the target of the switch.
1775 * @return the result of interpreting the object as an instance of '<em>Enum Literal</em>'.
1776 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1777 * @generated
1778 */
1779 public T caseEnumLiteral(EnumLiteral object) {
1780 return null;
1781 }
1782
1783 /**
1784 * Returns the result of interpreting the object as an instance of '<em>Field</em>'.
1785 * <!-- begin-user-doc -->
1786 * This implementation returns null;
1787 * returning a non-null result will terminate the switch.
1788 * <!-- end-user-doc -->
1789 * @param object the target of the switch.
1790 * @return the result of interpreting the object as an instance of '<em>Field</em>'.
1791 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1792 * @generated
1793 */
1794 public T caseField(Field object) {
1795 return null;
1796 }
1797
1798 /**
1799 * Returns the result of interpreting the object as an instance of '<em>Multiplicity</em>'.
1800 * <!-- begin-user-doc -->
1801 * This implementation returns null;
1802 * returning a non-null result will terminate the switch.
1803 * <!-- end-user-doc -->
1804 * @param object the target of the switch.
1805 * @return the result of interpreting the object as an instance of '<em>Multiplicity</em>'.
1806 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1807 * @generated
1808 */
1809 public T caseMultiplicity(Multiplicity object) {
1810 return null;
1811 }
1812
1813 /**
1814 * Returns the result of interpreting the object as an instance of '<em>Default Assertion</em>'.
1815 * <!-- begin-user-doc -->
1816 * This implementation returns null;
1817 * returning a non-null result will terminate the switch.
1818 * <!-- end-user-doc -->
1819 * @param object the target of the switch.
1820 * @return the result of interpreting the object as an instance of '<em>Default Assertion</em>'.
1821 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1822 * @generated
1823 */
1824 public T caseDefaultAssertion(DefaultAssertion object) {
1825 return null;
1826 }
1827
1828 /**
1829 * Returns the result of interpreting the object as an instance of '<em>Assertion</em>'.
1830 * <!-- begin-user-doc -->
1831 * This implementation returns null;
1832 * returning a non-null result will terminate the switch.
1833 * <!-- end-user-doc -->
1834 * @param object the target of the switch.
1835 * @return the result of interpreting the object as an instance of '<em>Assertion</em>'.
1836 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1837 * @generated
1838 */
1839 public T caseAssertion(Assertion object) {
1840 return null;
1841 }
1842
1843 /**
1844 * Returns the result of interpreting the object as an instance of '<em>Unbounded Multiplicity</em>'.
1845 * <!-- begin-user-doc -->
1846 * This implementation returns null;
1847 * returning a non-null result will terminate the switch.
1848 * <!-- end-user-doc -->
1849 * @param object the target of the switch.
1850 * @return the result of interpreting the object as an instance of '<em>Unbounded Multiplicity</em>'.
1851 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1852 * @generated
1853 */
1854 public T caseUnboundedMultiplicity(UnboundedMultiplicity object) {
1855 return null;
1856 }
1857
1858 /**
1859 * Returns the result of interpreting the object as an instance of '<em>Exact Multiplicity</em>'.
1860 * <!-- begin-user-doc -->
1861 * This implementation returns null;
1862 * returning a non-null result will terminate the switch.
1863 * <!-- end-user-doc -->
1864 * @param object the target of the switch.
1865 * @return the result of interpreting the object as an instance of '<em>Exact Multiplicity</em>'.
1866 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1867 * @generated
1868 */
1869 public T caseExactMultiplicity(ExactMultiplicity object) {
1870 return null;
1871 }
1872
1873 /**
1874 * Returns the result of interpreting the object as an instance of '<em>Bounded Multiplicity</em>'.
1875 * <!-- begin-user-doc -->
1876 * This implementation returns null;
1877 * returning a non-null result will terminate the switch.
1878 * <!-- end-user-doc -->
1879 * @param object the target of the switch.
1880 * @return the result of interpreting the object as an instance of '<em>Bounded Multiplicity</em>'.
1881 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1882 * @generated
1883 */
1884 public T caseBoundedMultiplicity(BoundedMultiplicity object) {
1885 return null;
1886 }
1887
1888 /**
1889 * Returns the result of interpreting the object as an instance of '<em>Inline Predicate Attrributes</em>'.
1890 * <!-- begin-user-doc -->
1891 * This implementation returns null;
1892 * returning a non-null result will terminate the switch.
1893 * <!-- end-user-doc -->
1894 * @param object the target of the switch.
1895 * @return the result of interpreting the object as an instance of '<em>Inline Predicate Attrributes</em>'.
1896 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1897 * @generated
1898 */
1899 public T caseInlinePredicateAttrributes(InlinePredicateAttrributes object) {
1900 return null;
1901 }
1902
1903 /**
1904 * Returns the result of interpreting the object as an instance of '<em>Aggregation Operator</em>'.
1905 * <!-- begin-user-doc -->
1906 * This implementation returns null;
1907 * returning a non-null result will terminate the switch.
1908 * <!-- end-user-doc -->
1909 * @param object the target of the switch.
1910 * @return the result of interpreting the object as an instance of '<em>Aggregation Operator</em>'.
1911 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1912 * @generated
1913 */
1914 public T caseAggregationOperator(AggregationOperator object) {
1915 return null;
1916 }
1917
1918 /**
1919 * Returns the result of interpreting the object as an instance of '<em>Problem</em>'.
1920 * <!-- begin-user-doc -->
1921 * This implementation returns null;
1922 * returning a non-null result will terminate the switch.
1923 * <!-- end-user-doc -->
1924 * @param object the target of the switch.
1925 * @return the result of interpreting the object as an instance of '<em>Problem</em>'.
1926 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1927 * @generated
1928 */
1929 public T caseProblem(Problem object) {
1930 return null;
1931 }
1932
1933 /**
1934 * Returns the result of interpreting the object as an instance of '<em>Typed Star Argument</em>'.
1935 * <!-- begin-user-doc -->
1936 * This implementation returns null;
1937 * returning a non-null result will terminate the switch.
1938 * <!-- end-user-doc -->
1939 * @param object the target of the switch.
1940 * @return the result of interpreting the object as an instance of '<em>Typed Star Argument</em>'.
1941 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1942 * @generated
1943 */
1944 public T caseTypedStarArgument(TypedStarArgument object) {
1945 return null;
1946 }
1947
1948 /**
1949 * Returns the result of interpreting the object as an instance of '<em>Typed Variable Argument</em>'.
1950 * <!-- begin-user-doc -->
1951 * This implementation returns null;
1952 * returning a non-null result will terminate the switch.
1953 * <!-- end-user-doc -->
1954 * @param object the target of the switch.
1955 * @return the result of interpreting the object as an instance of '<em>Typed Variable Argument</em>'.
1956 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1957 * @generated
1958 */
1959 public T caseTypedVariableArgument(TypedVariableArgument object) {
1960 return null;
1961 }
1962
1963 /**
1964 * Returns the result of interpreting the object as an instance of '<em>Unnamed Error Predicate Defintion</em>'.
1965 * <!-- begin-user-doc -->
1966 * This implementation returns null;
1967 * returning a non-null result will terminate the switch.
1968 * <!-- end-user-doc -->
1969 * @param object the target of the switch.
1970 * @return the result of interpreting the object as an instance of '<em>Unnamed Error Predicate Defintion</em>'.
1971 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1972 * @generated
1973 */
1974 public T caseUnnamedErrorPredicateDefintion(UnnamedErrorPredicateDefintion object) {
1975 return null;
1976 }
1977
1978 /**
1979 * Returns the result of interpreting the object as an instance of '<em>Objective Declaration</em>'.
1980 * <!-- begin-user-doc -->
1981 * This implementation returns null;
1982 * returning a non-null result will terminate the switch.
1983 * <!-- end-user-doc -->
1984 * @param object the target of the switch.
1985 * @return the result of interpreting the object as an instance of '<em>Objective Declaration</em>'.
1986 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
1987 * @generated
1988 */
1989 public T caseObjectiveDeclaration(ObjectiveDeclaration object) {
1990 return null;
1991 }
1992
1993 /**
1994 * Returns the result of interpreting the object as an instance of '<em>Scope Declaration</em>'.
1995 * <!-- begin-user-doc -->
1996 * This implementation returns null;
1997 * returning a non-null result will terminate the switch.
1998 * <!-- end-user-doc -->
1999 * @param object the target of the switch.
2000 * @return the result of interpreting the object as an instance of '<em>Scope Declaration</em>'.
2001 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2002 * @generated
2003 */
2004 public T caseScopeDeclaration(ScopeDeclaration object) {
2005 return null;
2006 }
2007
2008 /**
2009 * Returns the result of interpreting the object as an instance of '<em>Exact Scope</em>'.
2010 * <!-- begin-user-doc -->
2011 * This implementation returns null;
2012 * returning a non-null result will terminate the switch.
2013 * <!-- end-user-doc -->
2014 * @param object the target of the switch.
2015 * @return the result of interpreting the object as an instance of '<em>Exact Scope</em>'.
2016 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2017 * @generated
2018 */
2019 public T caseExactScope(ExactScope object) {
2020 return null;
2021 }
2022
2023 /**
2024 * Returns the result of interpreting the object as an instance of '<em>Bounded Scope</em>'.
2025 * <!-- begin-user-doc -->
2026 * This implementation returns null;
2027 * returning a non-null result will terminate the switch.
2028 * <!-- end-user-doc -->
2029 * @param object the target of the switch.
2030 * @return the result of interpreting the object as an instance of '<em>Bounded Scope</em>'.
2031 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2032 * @generated
2033 */
2034 public T caseBoundedScope(BoundedScope object) {
2035 return null;
2036 }
2037
2038 /**
2039 * Returns the result of interpreting the object as an instance of '<em>Lower Bounded Scope</em>'.
2040 * <!-- begin-user-doc -->
2041 * This implementation returns null;
2042 * returning a non-null result will terminate the switch.
2043 * <!-- end-user-doc -->
2044 * @param object the target of the switch.
2045 * @return the result of interpreting the object as an instance of '<em>Lower Bounded Scope</em>'.
2046 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2047 * @generated
2048 */
2049 public T caseLowerBoundedScope(LowerBoundedScope object) {
2050 return null;
2051 }
2052
2053 /**
2054 * Returns the result of interpreting the object as an instance of '<em>Namespace Import</em>'.
2055 * <!-- begin-user-doc -->
2056 * This implementation returns null;
2057 * returning a non-null result will terminate the switch.
2058 * <!-- end-user-doc -->
2059 * @param object the target of the switch.
2060 * @return the result of interpreting the object as an instance of '<em>Namespace Import</em>'.
2061 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2062 * @generated
2063 */
2064 public T caseNamespaceImport(NamespaceImport object) {
2065 return null;
2066 }
2067
2068 /**
2069 * Returns the result of interpreting the object as an instance of '<em>Import</em>'.
2070 * <!-- begin-user-doc -->
2071 * This implementation returns null;
2072 * returning a non-null result will terminate the switch.
2073 * <!-- end-user-doc -->
2074 * @param object the target of the switch.
2075 * @return the result of interpreting the object as an instance of '<em>Import</em>'.
2076 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2077 * @generated
2078 */
2079 public T caseImport(Import object) {
2080 return null;
2081 }
2082
2083 /**
2084 * Returns the result of interpreting the object as an instance of '<em>Uri Import</em>'.
2085 * <!-- begin-user-doc -->
2086 * This implementation returns null;
2087 * returning a non-null result will terminate the switch.
2088 * <!-- end-user-doc -->
2089 * @param object the target of the switch.
2090 * @return the result of interpreting the object as an instance of '<em>Uri Import</em>'.
2091 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
2092 * @generated
2093 */
2094 public T caseUriImport(UriImport object) {
2095 return null;
2096 }
2097
2098 /**
2099 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
2100 * <!-- begin-user-doc -->
2101 * This implementation returns null;
2102 * returning a non-null result will terminate the switch, but this is the last case anyway.
2103 * <!-- end-user-doc -->
2104 * @param object the target of the switch.
2105 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
2106 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
2107 * @generated
2108 */
2109 @Override
2110 public T defaultCase(EObject object) {
2111 return null;
2112 }
2113
2114} //SolverLanguageSwitch