aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <marussy@mit.bme.hu>2021-06-29 18:29:13 +0200
committerLibravatar Kristóf Marussy <marussy@mit.bme.hu>2021-06-29 18:31:07 +0200
commitad35e53fa23be5312f1e4b8d830a73e8ade1f08c (patch)
treeb48aeb3034358e0a02a6d17221428522ad879b77
parentRemove Xtext generated Javascript file (diff)
downloadrefinery-ad35e53fa23be5312f1e4b8d830a73e8ade1f08c.tar.gz
refinery-ad35e53fa23be5312f1e4b8d830a73e8ade1f08c.tar.zst
refinery-ad35e53fa23be5312f1e4b8d830a73e8ade1f08c.zip
Generate all files on build
-rw-r--r--.gitignore1
-rw-r--r--build.gradle5
-rw-r--r--gradle/source-layout.gradle10
-rw-r--r--language-ide/build.gradle18
-rw-r--r--language-model/build.gradle32
-rw-r--r--language-model/build.properties1
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java19
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Assertion.java85
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/AssertionArgument.java18
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java82
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java95
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Conjunction.java36
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Constant.java18
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantArgument.java44
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantAssertionArgument.java44
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java36
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExactMultiplicity.java45
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExistentialQuantifier.java38
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ImplicitVariable.java16
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/IntConstant.java45
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Literal.java18
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/LogicValue.java227
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Multiplicity.java18
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NamedElement.java46
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NegativeLiteral.java44
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java16
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeAssertionArgument.java44
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeValueAssertion.java67
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java44
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/PredicateDefinition.java72
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java49
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java258
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java3137
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RangeMultiplicity.java69
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RealConstant.java45
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java113
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Relation.java16
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ScopeDeclaration.java36
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Statement.java18
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/StringConstant.java44
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/TypeScope.java92
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java16
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java16
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java16
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNodeArgument.java67
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java38
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionArgumentImpl.java39
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionImpl.java288
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java286
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java335
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java190
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantArgumentImpl.java182
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantAssertionArgumentImpl.java182
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantImpl.java39
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java150
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ExactMultiplicityImpl.java164
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ImplicitVariableImpl.java37
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/IntConstantImpl.java164
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/LiteralImpl.java39
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/MultiplicityImpl.java39
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NamedElementImpl.java164
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java229
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeAssertionArgumentImpl.java159
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java37
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeValueAssertionImpl.java247
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java158
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/PredicateDefinitionImpl.java262
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java437
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java188
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java1535
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RangeMultiplicityImpl.java219
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RealConstantImpl.java164
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java378
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RelationImpl.java37
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ScopeDeclarationImpl.java153
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/StringConstantImpl.java164
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/TypeScopeImpl.java317
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java37
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java37
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeArgumentImpl.java251
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java37
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java784
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java964
-rw-r--r--language-model/src/main/java/org/eclipse/viatra/solver/language/model/GenerateProblemModel.mwe217
-rw-r--r--language-web/build.gradle77
-rw-r--r--language-web/package.json5
-rw-r--r--language-web/src/main/java/org/eclipse/viatra/solver/language/web/ServerLauncher.java105
-rw-r--r--language-web/webpack.config.js3
-rw-r--r--language/build.gradle19
89 files changed, 215 insertions, 14417 deletions
diff --git a/.gitignore b/.gitignore
index c5d32a6c..d0be3f43 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
1bin/ 1bin/
2emf-gen/
2xtend-gen/ 3xtend-gen/
3xtext-gen/ 4xtext-gen/
4.gradle/ 5.gradle/
diff --git a/build.gradle b/build.gradle
index de2a7fb3..521ad7ff 100644
--- a/build.gradle
+++ b/build.gradle
@@ -7,6 +7,11 @@ buildscript {
7 } 7 }
8} 8}
9 9
10plugins {
11 id 'com.github.johnrengelman.shadow' version '5.2.0' apply false
12 id 'com.moowork.node' version "1.3.1" apply false
13}
14
10subprojects { 15subprojects {
11 ext.xtextVersion = '2.26.0.M1' 16 ext.xtextVersion = '2.26.0.M1'
12 ext.hamcrestVersion = '2.2' 17 ext.hamcrestVersion = '2.2'
diff --git a/gradle/source-layout.gradle b/gradle/source-layout.gradle
index d347fb13..254798f1 100644
--- a/gradle/source-layout.gradle
+++ b/gradle/source-layout.gradle
@@ -12,9 +12,6 @@ sourceSets {
12} 12}
13 13
14jar { 14jar {
15 from('model') {
16 into('model')
17 }
18 from(sourceSets.main.allSource) { 15 from(sourceSets.main.allSource) {
19 include '**/*.xtext' 16 include '**/*.xtext'
20 } 17 }
@@ -23,6 +20,9 @@ jar {
23 } 20 }
24} 21}
25 22
26plugins.withId('war') { 23clean.doLast {
27 webAppDirName = "src/main/webapp" 24 delete 'src/main/xtend-gen'
25 delete 'src/main/xtext-gen'
26 delete 'src/test/xtend-gen'
27 delete 'src/test/xtext-gen'
28} 28}
diff --git a/language-ide/build.gradle b/language-ide/build.gradle
index 9cc8cf52..396f63bd 100644
--- a/language-ide/build.gradle
+++ b/language-ide/build.gradle
@@ -1,23 +1,5 @@
1plugins {
2 id 'com.github.johnrengelman.shadow' version '5.2.0'
3}
4
5dependencies { 1dependencies {
6 compile project(':language') 2 compile project(':language')
7 compile "org.eclipse.xtext:org.eclipse.xtext.ide:${xtextVersion}" 3 compile "org.eclipse.xtext:org.eclipse.xtext.ide:${xtextVersion}"
8 compile "org.eclipse.xtext:org.eclipse.xtext.xbase.ide:${xtextVersion}" 4 compile "org.eclipse.xtext:org.eclipse.xtext.xbase.ide:${xtextVersion}"
9} 5}
10
11apply plugin: 'application'
12apply plugin: 'com.github.johnrengelman.shadow'
13mainClassName = "org.eclipse.xtext.ide.server.ServerLauncher"
14
15shadowJar {
16 from(project.convention.getPlugin(JavaPluginConvention).sourceSets.main.output)
17 configurations = [project.configurations.runtime]
18 exclude('META-INF/INDEX.LIST', 'META-INF/*.SF', 'META-INF/*.DSA', 'META-INF/*.RSA','schema/*',
19 '.options', '.api_description', '*.profile', '*.html', 'about.*', 'about_files/*',
20 'plugin.xml', 'systembundle.properties', 'profile.list')
21 classifier = 'ls'
22 append('plugin.properties')
23}
diff --git a/language-model/build.gradle b/language-model/build.gradle
index 08e16a38..51b24134 100644
--- a/language-model/build.gradle
+++ b/language-model/build.gradle
@@ -1,5 +1,18 @@
1configurations {
2 mwe2 {
3 extendsFrom compile
4 }
5}
6
1dependencies { 7dependencies {
2 compile 'org.eclipse.emf:org.eclipse.emf.ecore' 8 compile 'org.eclipse.emf:org.eclipse.emf.ecore'
9 mwe2 'org.eclipse.emf:org.eclipse.emf.codegen.ecore'
10 mwe2 'org.eclipse.emf:org.eclipse.emf.ecore'
11 mwe2 'org.eclipse.emf:org.eclipse.emf.mwe.utils'
12 mwe2 'org.eclipse.emf:org.eclipse.emf.mwe2.launch'
13 mwe2 'org.eclipse.emf:org.eclipse.emf.mwe2.lib'
14 mwe2 "org.eclipse.xtext:org.eclipse.xtext:${xtextVersion}"
15 mwe2 "org.eclipse.xtext:org.eclipse.xtext.xbase:${xtextVersion}"
3} 16}
4 17
5sourceSets { 18sourceSets {
@@ -8,8 +21,27 @@ sourceSets {
8 } 21 }
9} 22}
10 23
24task generateEPackage(type: JavaExec) {
25 main = 'org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher'
26 classpath = configurations.mwe2
27 inputs.file "src/main/java/org/eclipse/viatra/solver/language/model/GenerateProblemModel.mwe2"
28 inputs.file "src/main/resources/model/problem.ecore"
29 inputs.file "src/main/resources/model/problem.genmodel"
30 outputs.dir "src/main/emf-gen"
31 args += "src/main/java/org/eclipse/viatra/solver/language/model/GenerateProblemModel.mwe2"
32 args += "-p"
33 args += "rootPath=/${projectDir}"
34}
35
36compileJava.dependsOn(generateEPackage)
37clean.dependsOn(cleanGenerateEPackage)
38
11eclipse { 39eclipse {
12 project { 40 project {
13 natures += ['org.eclipse.sirius.nature.modelingproject', 'org.eclipse.pde.PluginNature'] 41 natures += ['org.eclipse.sirius.nature.modelingproject', 'org.eclipse.pde.PluginNature']
14 } 42 }
43
44 classpath {
45 plusConfigurations += [configurations.mwe2]
46 }
15} \ No newline at end of file 47} \ No newline at end of file
diff --git a/language-model/build.properties b/language-model/build.properties
index 97e1d1b5..65dfc7c4 100644
--- a/language-model/build.properties
+++ b/language-model/build.properties
@@ -7,4 +7,5 @@ bin.includes = .,\
7 plugin.properties 7 plugin.properties
8jars.compile.order = . 8jars.compile.order = .
9source.. = src/main/emf-gen/,\ 9source.. = src/main/emf-gen/,\
10 src/main/java/,\
10 src/main/resources/ 11 src/main/resources/
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java
deleted file mode 100644
index a027e914..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java
+++ /dev/null
@@ -1,19 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage#getArgument()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Argument extends EObject {
18
19} // Argument
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Assertion.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Assertion.java
deleted file mode 100644
index 16c7ecff..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Assertion.java
+++ /dev/null
@@ -1,85 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Assertion</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.model.problem.Assertion#getRelation <em>Relation</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getValue <em>Value</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getArguments <em>Arguments</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAssertion()
22 * @model
23 * @generated
24 */
25public interface Assertion extends Statement {
26 /**
27 * Returns the value of the '<em><b>Relation</b></em>' reference.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Relation</em>' reference.
31 * @see #setRelation(Relation)
32 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAssertion_Relation()
33 * @model
34 * @generated
35 */
36 Relation getRelation();
37
38 /**
39 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getRelation <em>Relation</em>}' reference.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @param value the new value of the '<em>Relation</em>' reference.
43 * @see #getRelation()
44 * @generated
45 */
46 void setRelation(Relation value);
47
48 /**
49 * Returns the value of the '<em><b>Arguments</b></em>' containment reference list.
50 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.AssertionArgument}.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Arguments</em>' containment reference list.
54 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAssertion_Arguments()
55 * @model containment="true"
56 * @generated
57 */
58 EList<AssertionArgument> getArguments();
59
60 /**
61 * Returns the value of the '<em><b>Value</b></em>' attribute.
62 * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.model.problem.LogicValue}.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @return the value of the '<em>Value</em>' attribute.
66 * @see org.eclipse.viatra.solver.language.model.problem.LogicValue
67 * @see #setValue(LogicValue)
68 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAssertion_Value()
69 * @model
70 * @generated
71 */
72 LogicValue getValue();
73
74 /**
75 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getValue <em>Value</em>}' attribute.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @param value the new value of the '<em>Value</em>' attribute.
79 * @see org.eclipse.viatra.solver.language.model.problem.LogicValue
80 * @see #getValue()
81 * @generated
82 */
83 void setValue(LogicValue value);
84
85} // Assertion
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/AssertionArgument.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/AssertionArgument.java
deleted file mode 100644
index 054b34a2..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/AssertionArgument.java
+++ /dev/null
@@ -1,18 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Assertion Argument</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAssertionArgument()
14 * @model abstract="true"
15 * @generated
16 */
17public interface AssertionArgument extends EObject {
18} // AssertionArgument
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java
deleted file mode 100644
index d1b4d3fe..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java
+++ /dev/null
@@ -1,82 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Atom</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.model.problem.Atom#getRelation <em>Relation</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#isTransitiveClosure <em>Transitive Closure</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#getArguments <em>Arguments</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom()
22 * @model
23 * @generated
24 */
25public interface Atom extends Literal {
26 /**
27 * Returns the value of the '<em><b>Relation</b></em>' reference.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Relation</em>' reference.
31 * @see #setRelation(Relation)
32 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom_Relation()
33 * @model
34 * @generated
35 */
36 Relation getRelation();
37
38 /**
39 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Atom#getRelation <em>Relation</em>}' reference.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @param value the new value of the '<em>Relation</em>' reference.
43 * @see #getRelation()
44 * @generated
45 */
46 void setRelation(Relation value);
47
48 /**
49 * Returns the value of the '<em><b>Arguments</b></em>' containment reference list.
50 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Argument}.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Arguments</em>' containment reference list.
54 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom_Arguments()
55 * @model containment="true"
56 * @generated
57 */
58 EList<Argument> getArguments();
59
60 /**
61 * Returns the value of the '<em><b>Transitive Closure</b></em>' attribute.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @return the value of the '<em>Transitive Closure</em>' attribute.
65 * @see #setTransitiveClosure(boolean)
66 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom_TransitiveClosure()
67 * @model
68 * @generated
69 */
70 boolean isTransitiveClosure();
71
72 /**
73 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Atom#isTransitiveClosure <em>Transitive Closure</em>}' attribute.
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @param value the new value of the '<em>Transitive Closure</em>' attribute.
77 * @see #isTransitiveClosure()
78 * @generated
79 */
80 void setTransitiveClosure(boolean value);
81
82} // Atom
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java
deleted file mode 100644
index d0f471be..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java
+++ /dev/null
@@ -1,95 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ClassDeclaration#isAbstract <em>Abstract</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getSuperTypes <em>Super Types</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getReferenceDeclarations <em>Reference Declarations</em>}</li>
19 * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode <em>New Node</em>}</li>
20 * </ul>
21 *
22 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration()
23 * @model
24 * @generated
25 */
26public interface ClassDeclaration extends Relation, Statement {
27 /**
28 * Returns the value of the '<em><b>Abstract</b></em>' attribute.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Abstract</em>' attribute.
32 * @see #setAbstract(boolean)
33 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration_Abstract()
34 * @model
35 * @generated
36 */
37 boolean isAbstract();
38
39 /**
40 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#isAbstract <em>Abstract</em>}' attribute.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @param value the new value of the '<em>Abstract</em>' attribute.
44 * @see #isAbstract()
45 * @generated
46 */
47 void setAbstract(boolean value);
48
49 /**
50 * Returns the value of the '<em><b>Super Types</b></em>' reference list.
51 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Relation}.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @return the value of the '<em>Super Types</em>' reference list.
55 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration_SuperTypes()
56 * @model
57 * @generated
58 */
59 EList<Relation> getSuperTypes();
60
61 /**
62 * Returns the value of the '<em><b>Reference Declarations</b></em>' containment reference list.
63 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration}.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @return the value of the '<em>Reference Declarations</em>' containment reference list.
67 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration_ReferenceDeclarations()
68 * @model containment="true"
69 * @generated
70 */
71 EList<ReferenceDeclaration> getReferenceDeclarations();
72
73 /**
74 * Returns the value of the '<em><b>New Node</b></em>' containment reference.
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @return the value of the '<em>New Node</em>' containment reference.
78 * @see #setNewNode(Node)
79 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration_NewNode()
80 * @model containment="true"
81 * @generated
82 */
83 Node getNewNode();
84
85 /**
86 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode <em>New Node</em>}' containment reference.
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @param value the new value of the '<em>New Node</em>' containment reference.
90 * @see #getNewNode()
91 * @generated
92 */
93 void setNewNode(Node value);
94
95} // ClassDeclaration
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Conjunction.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Conjunction.java
deleted file mode 100644
index df8e0cef..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Conjunction.java
+++ /dev/null
@@ -1,36 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Conjunction</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.model.problem.Conjunction#getLiterals <em>Literals</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConjunction()
20 * @model
21 * @generated
22 */
23public interface Conjunction extends ExistentialQuantifier {
24 /**
25 * Returns the value of the '<em><b>Literals</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Literal}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Literals</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConjunction_Literals()
31 * @model containment="true"
32 * @generated
33 */
34 EList<Literal> getLiterals();
35
36} // Conjunction
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Constant.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Constant.java
deleted file mode 100644
index 89f12830..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Constant.java
+++ /dev/null
@@ -1,18 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Constant</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConstant()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Constant extends EObject {
18} // Constant
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantArgument.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantArgument.java
deleted file mode 100644
index 96b631f0..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantArgument.java
+++ /dev/null
@@ -1,44 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Constant 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.model.problem.ConstantArgument#getConstant <em>Constant</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConstantArgument()
18 * @model
19 * @generated
20 */
21public interface ConstantArgument extends Argument {
22 /**
23 * Returns the value of the '<em><b>Constant</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Constant</em>' containment reference.
27 * @see #setConstant(Constant)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConstantArgument_Constant()
29 * @model containment="true"
30 * @generated
31 */
32 Constant getConstant();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ConstantArgument#getConstant <em>Constant</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Constant</em>' containment reference.
39 * @see #getConstant()
40 * @generated
41 */
42 void setConstant(Constant value);
43
44} // ConstantArgument
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantAssertionArgument.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantAssertionArgument.java
deleted file mode 100644
index fd40de62..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ConstantAssertionArgument.java
+++ /dev/null
@@ -1,44 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Constant Assertion 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.model.problem.ConstantAssertionArgument#getConstant <em>Constant</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConstantAssertionArgument()
18 * @model
19 * @generated
20 */
21public interface ConstantAssertionArgument extends AssertionArgument {
22 /**
23 * Returns the value of the '<em><b>Constant</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Constant</em>' containment reference.
27 * @see #setConstant(Constant)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getConstantAssertionArgument_Constant()
29 * @model containment="true"
30 * @generated
31 */
32 Constant getConstant();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument#getConstant <em>Constant</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Constant</em>' containment reference.
39 * @see #getConstant()
40 * @generated
41 */
42 void setConstant(Constant value);
43
44} // ConstantAssertionArgument
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java
deleted file mode 100644
index 81f2967d..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/EnumDeclaration.java
+++ /dev/null
@@ -1,36 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.EnumDeclaration#getLiterals <em>Literals</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getEnumDeclaration()
20 * @model
21 * @generated
22 */
23public interface EnumDeclaration extends Relation, Statement {
24 /**
25 * Returns the value of the '<em><b>Literals</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Node}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Literals</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getEnumDeclaration_Literals()
31 * @model containment="true"
32 * @generated
33 */
34 EList<Node> getLiterals();
35
36} // EnumDeclaration
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExactMultiplicity.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExactMultiplicity.java
deleted file mode 100644
index 413c2ad1..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExactMultiplicity.java
+++ /dev/null
@@ -1,45 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ExactMultiplicity#getExactValue <em>Exact Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getExactMultiplicity()
18 * @model
19 * @generated
20 */
21public interface ExactMultiplicity extends Multiplicity {
22 /**
23 * Returns the value of the '<em><b>Exact Value</b></em>' attribute.
24 * The default value is <code>"1"</code>.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Exact Value</em>' attribute.
28 * @see #setExactValue(int)
29 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getExactMultiplicity_ExactValue()
30 * @model default="1"
31 * @generated
32 */
33 int getExactValue();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity#getExactValue <em>Exact Value</em>}' attribute.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Exact Value</em>' attribute.
40 * @see #getExactValue()
41 * @generated
42 */
43 void setExactValue(int value);
44
45} // ExactMultiplicity
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExistentialQuantifier.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExistentialQuantifier.java
deleted file mode 100644
index 1a1d5f8a..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ExistentialQuantifier.java
+++ /dev/null
@@ -1,38 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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>Existential Quantifier</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.model.problem.ExistentialQuantifier#getImplicitVariables <em>Implicit Variables</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getExistentialQuantifier()
22 * @model interface="true" abstract="true"
23 * @generated
24 */
25public interface ExistentialQuantifier extends EObject {
26 /**
27 * Returns the value of the '<em><b>Implicit Variables</b></em>' containment reference list.
28 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.ImplicitVariable}.
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @return the value of the '<em>Implicit Variables</em>' containment reference list.
32 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getExistentialQuantifier_ImplicitVariables()
33 * @model containment="true"
34 * @generated
35 */
36 EList<ImplicitVariable> getImplicitVariables();
37
38} // ExistentialQuantifier
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ImplicitVariable.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ImplicitVariable.java
deleted file mode 100644
index 6d1793c6..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ImplicitVariable.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Implicit Variable</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getImplicitVariable()
12 * @model
13 * @generated
14 */
15public interface ImplicitVariable extends Variable {
16} // ImplicitVariable
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/IntConstant.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/IntConstant.java
deleted file mode 100644
index 8c42d183..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/IntConstant.java
+++ /dev/null
@@ -1,45 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Int Constant</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.model.problem.IntConstant#getIntValue <em>Int Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getIntConstant()
18 * @model
19 * @generated
20 */
21public interface IntConstant extends Constant {
22 /**
23 * Returns the value of the '<em><b>Int Value</b></em>' attribute.
24 * The default value is <code>"0"</code>.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Int Value</em>' attribute.
28 * @see #setIntValue(int)
29 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getIntConstant_IntValue()
30 * @model default="0"
31 * @generated
32 */
33 int getIntValue();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.IntConstant#getIntValue <em>Int Value</em>}' attribute.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Int Value</em>' attribute.
40 * @see #getIntValue()
41 * @generated
42 */
43 void setIntValue(int value);
44
45} // IntConstant
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Literal.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Literal.java
deleted file mode 100644
index acccf79b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Literal.java
+++ /dev/null
@@ -1,18 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Literal</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 *
13 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getLiteral()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Literal extends EObject {
18} // Literal
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/LogicValue.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/LogicValue.java
deleted file mode 100644
index 2efbd25a..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/LogicValue.java
+++ /dev/null
@@ -1,227 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage#getLogicValue()
17 * @model
18 * @generated
19 */
20public enum LogicValue implements Enumerator {
21 /**
22 * The '<em><b>TRUE</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #TRUE_VALUE
26 * @generated
27 * @ordered
28 */
29 TRUE(0, "TRUE", "TRUE"),
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>UNKNOWN</b></em>' literal object.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #UNKNOWN_VALUE
46 * @generated
47 * @ordered
48 */
49 UNKNOWN(2, "UNKNOWN", "UNKNOWN");
50
51 /**
52 * The '<em><b>TRUE</b></em>' literal value.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #TRUE
56 * @model
57 * @generated
58 * @ordered
59 */
60 public static final int TRUE_VALUE = 0;
61
62 /**
63 * The '<em><b>FALSE</b></em>' literal value.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @see #FALSE
67 * @model
68 * @generated
69 * @ordered
70 */
71 public static final int FALSE_VALUE = 1;
72
73 /**
74 * The '<em><b>UNKNOWN</b></em>' literal value.
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @see #UNKNOWN
78 * @model
79 * @generated
80 * @ordered
81 */
82 public static final int UNKNOWN_VALUE = 2;
83
84 /**
85 * An array of all the '<em><b>Logic Value</b></em>' enumerators.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @generated
89 */
90 private static final LogicValue[] VALUES_ARRAY = new LogicValue[] { TRUE, FALSE, UNKNOWN, };
91
92 /**
93 * A public read-only list of all the '<em><b>Logic Value</b></em>' enumerators.
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 public static final List<LogicValue> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
99
100 /**
101 * Returns the '<em><b>Logic Value</b></em>' literal with the specified literal value.
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @param literal the literal.
105 * @return the matching enumerator or <code>null</code>.
106 * @generated
107 */
108 public static LogicValue get(String literal) {
109 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
110 LogicValue result = VALUES_ARRAY[i];
111 if (result.toString().equals(literal)) {
112 return result;
113 }
114 }
115 return null;
116 }
117
118 /**
119 * Returns the '<em><b>Logic Value</b></em>' literal with the specified name.
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @param name the name.
123 * @return the matching enumerator or <code>null</code>.
124 * @generated
125 */
126 public static LogicValue getByName(String name) {
127 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
128 LogicValue result = VALUES_ARRAY[i];
129 if (result.getName().equals(name)) {
130 return result;
131 }
132 }
133 return null;
134 }
135
136 /**
137 * Returns the '<em><b>Logic Value</b></em>' literal with the specified integer value.
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @param value the integer value.
141 * @return the matching enumerator or <code>null</code>.
142 * @generated
143 */
144 public static LogicValue get(int value) {
145 switch (value) {
146 case TRUE_VALUE:
147 return TRUE;
148 case FALSE_VALUE:
149 return FALSE;
150 case UNKNOWN_VALUE:
151 return UNKNOWN;
152 }
153 return null;
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 private final int value;
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 private final String name;
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 private final String literal;
176
177 /**
178 * Only this class can construct instances.
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @generated
182 */
183 private LogicValue(int value, String name, String literal) {
184 this.value = value;
185 this.name = name;
186 this.literal = literal;
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 public int getValue() {
195 return value;
196 }
197
198 /**
199 * <!-- begin-user-doc -->
200 * <!-- end-user-doc -->
201 * @generated
202 */
203 public String getName() {
204 return name;
205 }
206
207 /**
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 */
212 public String getLiteral() {
213 return literal;
214 }
215
216 /**
217 * Returns the literal value of the enumerator, which is its string representation.
218 * <!-- begin-user-doc -->
219 * <!-- end-user-doc -->
220 * @generated
221 */
222 @Override
223 public String toString() {
224 return literal;
225 }
226
227} //LogicValue
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Multiplicity.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Multiplicity.java
deleted file mode 100644
index d3d573fa..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Multiplicity.java
+++ /dev/null
@@ -1,18 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage#getMultiplicity()
14 * @model abstract="true"
15 * @generated
16 */
17public interface Multiplicity extends EObject {
18} // Multiplicity
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NamedElement.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NamedElement.java
deleted file mode 100644
index 3302b041..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NamedElement.java
+++ /dev/null
@@ -1,46 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Named Element</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.model.problem.NamedElement#getName <em>Name</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNamedElement()
20 * @model abstract="true"
21 * @generated
22 */
23public interface NamedElement 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.model.problem.ProblemPackage#getNamedElement_Name()
31 * @model
32 * @generated
33 */
34 String getName();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.NamedElement#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} // NamedElement
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NegativeLiteral.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NegativeLiteral.java
deleted file mode 100644
index ac3aa2b9..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NegativeLiteral.java
+++ /dev/null
@@ -1,44 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Negative 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.model.problem.NegativeLiteral#getAtom <em>Atom</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNegativeLiteral()
18 * @model
19 * @generated
20 */
21public interface NegativeLiteral extends ExistentialQuantifier, Literal {
22 /**
23 * Returns the value of the '<em><b>Atom</b></em>' containment reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Atom</em>' containment reference.
27 * @see #setAtom(Atom)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNegativeLiteral_Atom()
29 * @model containment="true"
30 * @generated
31 */
32 Atom getAtom();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.NegativeLiteral#getAtom <em>Atom</em>}' containment reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Atom</em>' containment reference.
39 * @see #getAtom()
40 * @generated
41 */
42 void setAtom(Atom value);
43
44} // NegativeLiteral
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java
deleted file mode 100644
index 3da08af3..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Node.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Node</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNode()
12 * @model
13 * @generated
14 */
15public interface Node extends VariableOrNode {
16} // Node
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeAssertionArgument.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeAssertionArgument.java
deleted file mode 100644
index fd006405..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeAssertionArgument.java
+++ /dev/null
@@ -1,44 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Node Assertion 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.model.problem.NodeAssertionArgument#getNode <em>Node</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNodeAssertionArgument()
18 * @model
19 * @generated
20 */
21public interface NodeAssertionArgument extends AssertionArgument {
22 /**
23 * Returns the value of the '<em><b>Node</b></em>' reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Node</em>' reference.
27 * @see #setNode(Node)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNodeAssertionArgument_Node()
29 * @model
30 * @generated
31 */
32 Node getNode();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument#getNode <em>Node</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Node</em>' reference.
39 * @see #getNode()
40 * @generated
41 */
42 void setNode(Node value);
43
44} // NodeAssertionArgument
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeValueAssertion.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeValueAssertion.java
deleted file mode 100644
index bfe5901a..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/NodeValueAssertion.java
+++ /dev/null
@@ -1,67 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Node Value 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.model.problem.NodeValueAssertion#getNode <em>Node</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getValue <em>Value</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNodeValueAssertion()
19 * @model
20 * @generated
21 */
22public interface NodeValueAssertion extends Statement {
23 /**
24 * Returns the value of the '<em><b>Node</b></em>' reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Node</em>' reference.
28 * @see #setNode(Node)
29 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNodeValueAssertion_Node()
30 * @model
31 * @generated
32 */
33 Node getNode();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getNode <em>Node</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Node</em>' reference.
40 * @see #getNode()
41 * @generated
42 */
43 void setNode(Node value);
44
45 /**
46 * Returns the value of the '<em><b>Value</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Value</em>' containment reference.
50 * @see #setValue(Constant)
51 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getNodeValueAssertion_Value()
52 * @model containment="true"
53 * @generated
54 */
55 Constant getValue();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getValue <em>Value</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Value</em>' containment reference.
62 * @see #getValue()
63 * @generated
64 */
65 void setValue(Constant value);
66
67} // NodeValueAssertion
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java
deleted file mode 100644
index 7bedca1b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Parameter.java
+++ /dev/null
@@ -1,44 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Parameter</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.model.problem.Parameter#getParameterType <em>Parameter Type</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getParameter()
18 * @model
19 * @generated
20 */
21public interface Parameter extends Variable {
22 /**
23 * Returns the value of the '<em><b>Parameter Type</b></em>' reference.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>Parameter Type</em>' reference.
27 * @see #setParameterType(Relation)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getParameter_ParameterType()
29 * @model
30 * @generated
31 */
32 Relation getParameterType();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Parameter#getParameterType <em>Parameter Type</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>Parameter Type</em>' reference.
39 * @see #getParameterType()
40 * @generated
41 */
42 void setParameterType(Relation value);
43
44} // Parameter
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/PredicateDefinition.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/PredicateDefinition.java
deleted file mode 100644
index 175d5fff..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/PredicateDefinition.java
+++ /dev/null
@@ -1,72 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Predicate Definition</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.model.problem.PredicateDefinition#isError <em>Error</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#getParameters <em>Parameters</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#getBodies <em>Bodies</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getPredicateDefinition()
22 * @model
23 * @generated
24 */
25public interface PredicateDefinition extends Relation, Statement {
26 /**
27 * Returns the value of the '<em><b>Error</b></em>' attribute.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Error</em>' attribute.
31 * @see #setError(boolean)
32 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getPredicateDefinition_Error()
33 * @model
34 * @generated
35 */
36 boolean isError();
37
38 /**
39 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#isError <em>Error</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @param value the new value of the '<em>Error</em>' attribute.
43 * @see #isError()
44 * @generated
45 */
46 void setError(boolean value);
47
48 /**
49 * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
50 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Parameter}.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @return the value of the '<em>Parameters</em>' containment reference list.
54 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getPredicateDefinition_Parameters()
55 * @model containment="true"
56 * @generated
57 */
58 EList<Parameter> getParameters();
59
60 /**
61 * Returns the value of the '<em><b>Bodies</b></em>' containment reference list.
62 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Conjunction}.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @return the value of the '<em>Bodies</em>' containment reference list.
66 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getPredicateDefinition_Bodies()
67 * @model containment="true"
68 * @generated
69 */
70 EList<Conjunction> getBodies();
71
72} // PredicateDefinition
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java
deleted file mode 100644
index 7e19bd22..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java
+++ /dev/null
@@ -1,49 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Problem</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.model.problem.Problem#getNodes <em>Nodes</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.Problem#getStatements <em>Statements</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getProblem()
21 * @model
22 * @generated
23 */
24public interface Problem extends NamedElement {
25 /**
26 * Returns the value of the '<em><b>Nodes</b></em>' containment reference list.
27 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Node}.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Nodes</em>' containment reference list.
31 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getProblem_Nodes()
32 * @model containment="true"
33 * @generated
34 */
35 EList<Node> getNodes();
36
37 /**
38 * Returns the value of the '<em><b>Statements</b></em>' containment reference list.
39 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Statement}.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @return the value of the '<em>Statements</em>' containment reference list.
43 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getProblem_Statements()
44 * @model containment="true"
45 * @generated
46 */
47 EList<Statement> getStatements();
48
49} // Problem
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java
deleted file mode 100644
index bb97cbc9..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java
+++ /dev/null
@@ -1,258 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage
13 * @generated
14 */
15public interface ProblemFactory extends EFactory {
16 /**
17 * The singleton instance of the factory.
18 * <!-- begin-user-doc -->
19 * <!-- end-user-doc -->
20 * @generated
21 */
22 ProblemFactory eINSTANCE = org.eclipse.viatra.solver.language.model.problem.impl.ProblemFactoryImpl.init();
23
24 /**
25 * Returns a new object of class '<em>Problem</em>'.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return a new object of class '<em>Problem</em>'.
29 * @generated
30 */
31 Problem createProblem();
32
33 /**
34 * Returns a new object of class '<em>Class Declaration</em>'.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @return a new object of class '<em>Class Declaration</em>'.
38 * @generated
39 */
40 ClassDeclaration createClassDeclaration();
41
42 /**
43 * Returns a new object of class '<em>Reference Declaration</em>'.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @return a new object of class '<em>Reference Declaration</em>'.
47 * @generated
48 */
49 ReferenceDeclaration createReferenceDeclaration();
50
51 /**
52 * Returns a new object of class '<em>Predicate Definition</em>'.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return a new object of class '<em>Predicate Definition</em>'.
56 * @generated
57 */
58 PredicateDefinition createPredicateDefinition();
59
60 /**
61 * Returns a new object of class '<em>Parameter</em>'.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @return a new object of class '<em>Parameter</em>'.
65 * @generated
66 */
67 Parameter createParameter();
68
69 /**
70 * Returns a new object of class '<em>Conjunction</em>'.
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @return a new object of class '<em>Conjunction</em>'.
74 * @generated
75 */
76 Conjunction createConjunction();
77
78 /**
79 * Returns a new object of class '<em>Atom</em>'.
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @return a new object of class '<em>Atom</em>'.
83 * @generated
84 */
85 Atom createAtom();
86
87 /**
88 * Returns a new object of class '<em>Implicit Variable</em>'.
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @return a new object of class '<em>Implicit Variable</em>'.
92 * @generated
93 */
94 ImplicitVariable createImplicitVariable();
95
96 /**
97 * Returns a new object of class '<em>Negative Literal</em>'.
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @return a new object of class '<em>Negative Literal</em>'.
101 * @generated
102 */
103 NegativeLiteral createNegativeLiteral();
104
105 /**
106 * Returns a new object of class '<em>Assertion</em>'.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @return a new object of class '<em>Assertion</em>'.
110 * @generated
111 */
112 Assertion createAssertion();
113
114 /**
115 * Returns a new object of class '<em>Node</em>'.
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @return a new object of class '<em>Node</em>'.
119 * @generated
120 */
121 Node createNode();
122
123 /**
124 * Returns a new object of class '<em>Scope Declaration</em>'.
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @return a new object of class '<em>Scope Declaration</em>'.
128 * @generated
129 */
130 ScopeDeclaration createScopeDeclaration();
131
132 /**
133 * Returns a new object of class '<em>Type Scope</em>'.
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @return a new object of class '<em>Type Scope</em>'.
137 * @generated
138 */
139 TypeScope createTypeScope();
140
141 /**
142 * Returns a new object of class '<em>Range Multiplicity</em>'.
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @return a new object of class '<em>Range Multiplicity</em>'.
146 * @generated
147 */
148 RangeMultiplicity createRangeMultiplicity();
149
150 /**
151 * Returns a new object of class '<em>Exact Multiplicity</em>'.
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @return a new object of class '<em>Exact Multiplicity</em>'.
155 * @generated
156 */
157 ExactMultiplicity createExactMultiplicity();
158
159 /**
160 * Returns a new object of class '<em>Unbounded Multiplicity</em>'.
161 * <!-- begin-user-doc -->
162 * <!-- end-user-doc -->
163 * @return a new object of class '<em>Unbounded Multiplicity</em>'.
164 * @generated
165 */
166 UnboundedMultiplicity createUnboundedMultiplicity();
167
168 /**
169 * Returns a new object of class '<em>Variable Or Node Argument</em>'.
170 * <!-- begin-user-doc -->
171 * <!-- end-user-doc -->
172 * @return a new object of class '<em>Variable Or Node Argument</em>'.
173 * @generated
174 */
175 VariableOrNodeArgument createVariableOrNodeArgument();
176
177 /**
178 * Returns a new object of class '<em>Enum Declaration</em>'.
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @return a new object of class '<em>Enum Declaration</em>'.
182 * @generated
183 */
184 EnumDeclaration createEnumDeclaration();
185
186 /**
187 * Returns a new object of class '<em>Int Constant</em>'.
188 * <!-- begin-user-doc -->
189 * <!-- end-user-doc -->
190 * @return a new object of class '<em>Int Constant</em>'.
191 * @generated
192 */
193 IntConstant createIntConstant();
194
195 /**
196 * Returns a new object of class '<em>Real Constant</em>'.
197 * <!-- begin-user-doc -->
198 * <!-- end-user-doc -->
199 * @return a new object of class '<em>Real Constant</em>'.
200 * @generated
201 */
202 RealConstant createRealConstant();
203
204 /**
205 * Returns a new object of class '<em>String Constant</em>'.
206 * <!-- begin-user-doc -->
207 * <!-- end-user-doc -->
208 * @return a new object of class '<em>String Constant</em>'.
209 * @generated
210 */
211 StringConstant createStringConstant();
212
213 /**
214 * Returns a new object of class '<em>Constant Argument</em>'.
215 * <!-- begin-user-doc -->
216 * <!-- end-user-doc -->
217 * @return a new object of class '<em>Constant Argument</em>'.
218 * @generated
219 */
220 ConstantArgument createConstantArgument();
221
222 /**
223 * Returns a new object of class '<em>Node Assertion Argument</em>'.
224 * <!-- begin-user-doc -->
225 * <!-- end-user-doc -->
226 * @return a new object of class '<em>Node Assertion Argument</em>'.
227 * @generated
228 */
229 NodeAssertionArgument createNodeAssertionArgument();
230
231 /**
232 * Returns a new object of class '<em>Constant Assertion Argument</em>'.
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @return a new object of class '<em>Constant Assertion Argument</em>'.
236 * @generated
237 */
238 ConstantAssertionArgument createConstantAssertionArgument();
239
240 /**
241 * Returns a new object of class '<em>Node Value Assertion</em>'.
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @return a new object of class '<em>Node Value Assertion</em>'.
245 * @generated
246 */
247 NodeValueAssertion createNodeValueAssertion();
248
249 /**
250 * Returns the package supported by this factory.
251 * <!-- begin-user-doc -->
252 * <!-- end-user-doc -->
253 * @return the package supported by this factory.
254 * @generated
255 */
256 ProblemPackage getProblemPackage();
257
258} //ProblemFactory
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java
deleted file mode 100644
index b711566a..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java
+++ /dev/null
@@ -1,3137 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemFactory
24 * @model kind="package"
25 * @generated
26 */
27public interface ProblemPackage extends EPackage {
28 /**
29 * The package name.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 String eNAME = "problem";
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/model/Problem";
43
44 /**
45 * The package namespace name.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 String eNS_PREFIX = "problem";
51
52 /**
53 * The singleton instance of the package.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 ProblemPackage eINSTANCE = org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl.init();
59
60 /**
61 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl <em>Named Element</em>}' class.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl
65 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNamedElement()
66 * @generated
67 */
68 int NAMED_ELEMENT = 4;
69
70 /**
71 * The feature id for the '<em><b>Name</b></em>' attribute.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 * @ordered
76 */
77 int NAMED_ELEMENT__NAME = 0;
78
79 /**
80 * The number of structural features of the '<em>Named Element</em>' class.
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 * @ordered
85 */
86 int NAMED_ELEMENT_FEATURE_COUNT = 1;
87
88 /**
89 * The number of operations of the '<em>Named Element</em>' class.
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 * @ordered
94 */
95 int NAMED_ELEMENT_OPERATION_COUNT = 0;
96
97 /**
98 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl <em>Problem</em>}' class.
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl
102 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getProblem()
103 * @generated
104 */
105 int PROBLEM = 0;
106
107 /**
108 * The feature id for the '<em><b>Name</b></em>' attribute.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated
112 * @ordered
113 */
114 int PROBLEM__NAME = NAMED_ELEMENT__NAME;
115
116 /**
117 * The feature id for the '<em><b>Nodes</b></em>' containment reference list.
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 * @ordered
122 */
123 int PROBLEM__NODES = NAMED_ELEMENT_FEATURE_COUNT + 0;
124
125 /**
126 * The feature id for the '<em><b>Statements</b></em>' containment reference list.
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @generated
130 * @ordered
131 */
132 int PROBLEM__STATEMENTS = NAMED_ELEMENT_FEATURE_COUNT + 1;
133
134 /**
135 * The number of structural features of the '<em>Problem</em>' class.
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 * @ordered
140 */
141 int PROBLEM_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 2;
142
143 /**
144 * The number of operations of the '<em>Problem</em>' class.
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @generated
148 * @ordered
149 */
150 int PROBLEM_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
151
152 /**
153 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RelationImpl <em>Relation</em>}' class.
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @see org.eclipse.viatra.solver.language.model.problem.impl.RelationImpl
157 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getRelation()
158 * @generated
159 */
160 int RELATION = 1;
161
162 /**
163 * The feature id for the '<em><b>Name</b></em>' attribute.
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 * @ordered
168 */
169 int RELATION__NAME = NAMED_ELEMENT__NAME;
170
171 /**
172 * The number of structural features of the '<em>Relation</em>' class.
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 * @ordered
177 */
178 int RELATION_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 0;
179
180 /**
181 * The number of operations of the '<em>Relation</em>' class.
182 * <!-- begin-user-doc -->
183 * <!-- end-user-doc -->
184 * @generated
185 * @ordered
186 */
187 int RELATION_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
188
189 /**
190 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl <em>Class Declaration</em>}' class.
191 * <!-- begin-user-doc -->
192 * <!-- end-user-doc -->
193 * @see org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl
194 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getClassDeclaration()
195 * @generated
196 */
197 int CLASS_DECLARATION = 2;
198
199 /**
200 * The feature id for the '<em><b>Name</b></em>' attribute.
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @generated
204 * @ordered
205 */
206 int CLASS_DECLARATION__NAME = RELATION__NAME;
207
208 /**
209 * The feature id for the '<em><b>Abstract</b></em>' attribute.
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 * @ordered
214 */
215 int CLASS_DECLARATION__ABSTRACT = RELATION_FEATURE_COUNT + 0;
216
217 /**
218 * The feature id for the '<em><b>Super Types</b></em>' reference list.
219 * <!-- begin-user-doc -->
220 * <!-- end-user-doc -->
221 * @generated
222 * @ordered
223 */
224 int CLASS_DECLARATION__SUPER_TYPES = RELATION_FEATURE_COUNT + 1;
225
226 /**
227 * The feature id for the '<em><b>Reference Declarations</b></em>' containment reference list.
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 * @ordered
232 */
233 int CLASS_DECLARATION__REFERENCE_DECLARATIONS = RELATION_FEATURE_COUNT + 2;
234
235 /**
236 * The feature id for the '<em><b>New Node</b></em>' containment reference.
237 * <!-- begin-user-doc -->
238 * <!-- end-user-doc -->
239 * @generated
240 * @ordered
241 */
242 int CLASS_DECLARATION__NEW_NODE = RELATION_FEATURE_COUNT + 3;
243
244 /**
245 * The number of structural features of the '<em>Class Declaration</em>' class.
246 * <!-- begin-user-doc -->
247 * <!-- end-user-doc -->
248 * @generated
249 * @ordered
250 */
251 int CLASS_DECLARATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 4;
252
253 /**
254 * The number of operations of the '<em>Class Declaration</em>' class.
255 * <!-- begin-user-doc -->
256 * <!-- end-user-doc -->
257 * @generated
258 * @ordered
259 */
260 int CLASS_DECLARATION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
261
262 /**
263 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl <em>Reference Declaration</em>}' class.
264 * <!-- begin-user-doc -->
265 * <!-- end-user-doc -->
266 * @see org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl
267 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getReferenceDeclaration()
268 * @generated
269 */
270 int REFERENCE_DECLARATION = 3;
271
272 /**
273 * The feature id for the '<em><b>Name</b></em>' attribute.
274 * <!-- begin-user-doc -->
275 * <!-- end-user-doc -->
276 * @generated
277 * @ordered
278 */
279 int REFERENCE_DECLARATION__NAME = RELATION__NAME;
280
281 /**
282 * The feature id for the '<em><b>Reference Type</b></em>' reference.
283 * <!-- begin-user-doc -->
284 * <!-- end-user-doc -->
285 * @generated
286 * @ordered
287 */
288 int REFERENCE_DECLARATION__REFERENCE_TYPE = RELATION_FEATURE_COUNT + 0;
289
290 /**
291 * The feature id for the '<em><b>Opposite</b></em>' reference.
292 * <!-- begin-user-doc -->
293 * <!-- end-user-doc -->
294 * @generated
295 * @ordered
296 */
297 int REFERENCE_DECLARATION__OPPOSITE = RELATION_FEATURE_COUNT + 1;
298
299 /**
300 * The feature id for the '<em><b>Containment</b></em>' attribute.
301 * <!-- begin-user-doc -->
302 * <!-- end-user-doc -->
303 * @generated
304 * @ordered
305 */
306 int REFERENCE_DECLARATION__CONTAINMENT = RELATION_FEATURE_COUNT + 2;
307
308 /**
309 * The feature id for the '<em><b>Multiplicity</b></em>' containment reference.
310 * <!-- begin-user-doc -->
311 * <!-- end-user-doc -->
312 * @generated
313 * @ordered
314 */
315 int REFERENCE_DECLARATION__MULTIPLICITY = RELATION_FEATURE_COUNT + 3;
316
317 /**
318 * The number of structural features of the '<em>Reference Declaration</em>' class.
319 * <!-- begin-user-doc -->
320 * <!-- end-user-doc -->
321 * @generated
322 * @ordered
323 */
324 int REFERENCE_DECLARATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 4;
325
326 /**
327 * The number of operations of the '<em>Reference Declaration</em>' class.
328 * <!-- begin-user-doc -->
329 * <!-- end-user-doc -->
330 * @generated
331 * @ordered
332 */
333 int REFERENCE_DECLARATION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
334
335 /**
336 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.PredicateDefinitionImpl <em>Predicate Definition</em>}' class.
337 * <!-- begin-user-doc -->
338 * <!-- end-user-doc -->
339 * @see org.eclipse.viatra.solver.language.model.problem.impl.PredicateDefinitionImpl
340 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getPredicateDefinition()
341 * @generated
342 */
343 int PREDICATE_DEFINITION = 5;
344
345 /**
346 * The feature id for the '<em><b>Name</b></em>' attribute.
347 * <!-- begin-user-doc -->
348 * <!-- end-user-doc -->
349 * @generated
350 * @ordered
351 */
352 int PREDICATE_DEFINITION__NAME = RELATION__NAME;
353
354 /**
355 * The feature id for the '<em><b>Error</b></em>' attribute.
356 * <!-- begin-user-doc -->
357 * <!-- end-user-doc -->
358 * @generated
359 * @ordered
360 */
361 int PREDICATE_DEFINITION__ERROR = RELATION_FEATURE_COUNT + 0;
362
363 /**
364 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
365 * <!-- begin-user-doc -->
366 * <!-- end-user-doc -->
367 * @generated
368 * @ordered
369 */
370 int PREDICATE_DEFINITION__PARAMETERS = RELATION_FEATURE_COUNT + 1;
371
372 /**
373 * The feature id for the '<em><b>Bodies</b></em>' containment reference list.
374 * <!-- begin-user-doc -->
375 * <!-- end-user-doc -->
376 * @generated
377 * @ordered
378 */
379 int PREDICATE_DEFINITION__BODIES = RELATION_FEATURE_COUNT + 2;
380
381 /**
382 * The number of structural features of the '<em>Predicate Definition</em>' class.
383 * <!-- begin-user-doc -->
384 * <!-- end-user-doc -->
385 * @generated
386 * @ordered
387 */
388 int PREDICATE_DEFINITION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 3;
389
390 /**
391 * The number of operations of the '<em>Predicate Definition</em>' class.
392 * <!-- begin-user-doc -->
393 * <!-- end-user-doc -->
394 * @generated
395 * @ordered
396 */
397 int PREDICATE_DEFINITION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
398
399 /**
400 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl <em>Variable Or Node</em>}' class.
401 * <!-- begin-user-doc -->
402 * <!-- end-user-doc -->
403 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl
404 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariableOrNode()
405 * @generated
406 */
407 int VARIABLE_OR_NODE = 25;
408
409 /**
410 * The feature id for the '<em><b>Name</b></em>' attribute.
411 * <!-- begin-user-doc -->
412 * <!-- end-user-doc -->
413 * @generated
414 * @ordered
415 */
416 int VARIABLE_OR_NODE__NAME = NAMED_ELEMENT__NAME;
417
418 /**
419 * The number of structural features of the '<em>Variable Or Node</em>' class.
420 * <!-- begin-user-doc -->
421 * <!-- end-user-doc -->
422 * @generated
423 * @ordered
424 */
425 int VARIABLE_OR_NODE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 0;
426
427 /**
428 * The number of operations of the '<em>Variable Or Node</em>' class.
429 * <!-- begin-user-doc -->
430 * <!-- end-user-doc -->
431 * @generated
432 * @ordered
433 */
434 int VARIABLE_OR_NODE_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0;
435
436 /**
437 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableImpl <em>Variable</em>}' class.
438 * <!-- begin-user-doc -->
439 * <!-- end-user-doc -->
440 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableImpl
441 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariable()
442 * @generated
443 */
444 int VARIABLE = 7;
445
446 /**
447 * The feature id for the '<em><b>Name</b></em>' attribute.
448 * <!-- begin-user-doc -->
449 * <!-- end-user-doc -->
450 * @generated
451 * @ordered
452 */
453 int VARIABLE__NAME = VARIABLE_OR_NODE__NAME;
454
455 /**
456 * The number of structural features of the '<em>Variable</em>' class.
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 * @ordered
461 */
462 int VARIABLE_FEATURE_COUNT = VARIABLE_OR_NODE_FEATURE_COUNT + 0;
463
464 /**
465 * The number of operations of the '<em>Variable</em>' class.
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 * @ordered
470 */
471 int VARIABLE_OPERATION_COUNT = VARIABLE_OR_NODE_OPERATION_COUNT + 0;
472
473 /**
474 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ParameterImpl <em>Parameter</em>}' class.
475 * <!-- begin-user-doc -->
476 * <!-- end-user-doc -->
477 * @see org.eclipse.viatra.solver.language.model.problem.impl.ParameterImpl
478 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getParameter()
479 * @generated
480 */
481 int PARAMETER = 6;
482
483 /**
484 * The feature id for the '<em><b>Name</b></em>' attribute.
485 * <!-- begin-user-doc -->
486 * <!-- end-user-doc -->
487 * @generated
488 * @ordered
489 */
490 int PARAMETER__NAME = VARIABLE__NAME;
491
492 /**
493 * The feature id for the '<em><b>Parameter Type</b></em>' reference.
494 * <!-- begin-user-doc -->
495 * <!-- end-user-doc -->
496 * @generated
497 * @ordered
498 */
499 int PARAMETER__PARAMETER_TYPE = VARIABLE_FEATURE_COUNT + 0;
500
501 /**
502 * The number of structural features of the '<em>Parameter</em>' class.
503 * <!-- begin-user-doc -->
504 * <!-- end-user-doc -->
505 * @generated
506 * @ordered
507 */
508 int PARAMETER_FEATURE_COUNT = VARIABLE_FEATURE_COUNT + 1;
509
510 /**
511 * The number of operations of the '<em>Parameter</em>' class.
512 * <!-- begin-user-doc -->
513 * <!-- end-user-doc -->
514 * @generated
515 * @ordered
516 */
517 int PARAMETER_OPERATION_COUNT = VARIABLE_OPERATION_COUNT + 0;
518
519 /**
520 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier <em>Existential Quantifier</em>}' class.
521 * <!-- begin-user-doc -->
522 * <!-- end-user-doc -->
523 * @see org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier
524 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getExistentialQuantifier()
525 * @generated
526 */
527 int EXISTENTIAL_QUANTIFIER = 13;
528
529 /**
530 * The feature id for the '<em><b>Implicit Variables</b></em>' containment reference list.
531 * <!-- begin-user-doc -->
532 * <!-- end-user-doc -->
533 * @generated
534 * @ordered
535 */
536 int EXISTENTIAL_QUANTIFIER__IMPLICIT_VARIABLES = 0;
537
538 /**
539 * The number of structural features of the '<em>Existential Quantifier</em>' class.
540 * <!-- begin-user-doc -->
541 * <!-- end-user-doc -->
542 * @generated
543 * @ordered
544 */
545 int EXISTENTIAL_QUANTIFIER_FEATURE_COUNT = 1;
546
547 /**
548 * The number of operations of the '<em>Existential Quantifier</em>' class.
549 * <!-- begin-user-doc -->
550 * <!-- end-user-doc -->
551 * @generated
552 * @ordered
553 */
554 int EXISTENTIAL_QUANTIFIER_OPERATION_COUNT = 0;
555
556 /**
557 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConjunctionImpl <em>Conjunction</em>}' class.
558 * <!-- begin-user-doc -->
559 * <!-- end-user-doc -->
560 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConjunctionImpl
561 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConjunction()
562 * @generated
563 */
564 int CONJUNCTION = 8;
565
566 /**
567 * The feature id for the '<em><b>Implicit Variables</b></em>' containment reference list.
568 * <!-- begin-user-doc -->
569 * <!-- end-user-doc -->
570 * @generated
571 * @ordered
572 */
573 int CONJUNCTION__IMPLICIT_VARIABLES = EXISTENTIAL_QUANTIFIER__IMPLICIT_VARIABLES;
574
575 /**
576 * The feature id for the '<em><b>Literals</b></em>' containment reference list.
577 * <!-- begin-user-doc -->
578 * <!-- end-user-doc -->
579 * @generated
580 * @ordered
581 */
582 int CONJUNCTION__LITERALS = EXISTENTIAL_QUANTIFIER_FEATURE_COUNT + 0;
583
584 /**
585 * The number of structural features of the '<em>Conjunction</em>' class.
586 * <!-- begin-user-doc -->
587 * <!-- end-user-doc -->
588 * @generated
589 * @ordered
590 */
591 int CONJUNCTION_FEATURE_COUNT = EXISTENTIAL_QUANTIFIER_FEATURE_COUNT + 1;
592
593 /**
594 * The number of operations of the '<em>Conjunction</em>' class.
595 * <!-- begin-user-doc -->
596 * <!-- end-user-doc -->
597 * @generated
598 * @ordered
599 */
600 int CONJUNCTION_OPERATION_COUNT = EXISTENTIAL_QUANTIFIER_OPERATION_COUNT + 0;
601
602 /**
603 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.LiteralImpl <em>Literal</em>}' class.
604 * <!-- begin-user-doc -->
605 * <!-- end-user-doc -->
606 * @see org.eclipse.viatra.solver.language.model.problem.impl.LiteralImpl
607 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLiteral()
608 * @generated
609 */
610 int LITERAL = 9;
611
612 /**
613 * The number of structural features of the '<em>Literal</em>' class.
614 * <!-- begin-user-doc -->
615 * <!-- end-user-doc -->
616 * @generated
617 * @ordered
618 */
619 int LITERAL_FEATURE_COUNT = 0;
620
621 /**
622 * The number of operations of the '<em>Literal</em>' class.
623 * <!-- begin-user-doc -->
624 * <!-- end-user-doc -->
625 * @generated
626 * @ordered
627 */
628 int LITERAL_OPERATION_COUNT = 0;
629
630 /**
631 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl <em>Atom</em>}' class.
632 * <!-- begin-user-doc -->
633 * <!-- end-user-doc -->
634 * @see org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl
635 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getAtom()
636 * @generated
637 */
638 int ATOM = 10;
639
640 /**
641 * The feature id for the '<em><b>Relation</b></em>' reference.
642 * <!-- begin-user-doc -->
643 * <!-- end-user-doc -->
644 * @generated
645 * @ordered
646 */
647 int ATOM__RELATION = LITERAL_FEATURE_COUNT + 0;
648
649 /**
650 * The feature id for the '<em><b>Transitive Closure</b></em>' attribute.
651 * <!-- begin-user-doc -->
652 * <!-- end-user-doc -->
653 * @generated
654 * @ordered
655 */
656 int ATOM__TRANSITIVE_CLOSURE = LITERAL_FEATURE_COUNT + 1;
657
658 /**
659 * The feature id for the '<em><b>Arguments</b></em>' containment reference list.
660 * <!-- begin-user-doc -->
661 * <!-- end-user-doc -->
662 * @generated
663 * @ordered
664 */
665 int ATOM__ARGUMENTS = LITERAL_FEATURE_COUNT + 2;
666
667 /**
668 * The number of structural features of the '<em>Atom</em>' class.
669 * <!-- begin-user-doc -->
670 * <!-- end-user-doc -->
671 * @generated
672 * @ordered
673 */
674 int ATOM_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 3;
675
676 /**
677 * The number of operations of the '<em>Atom</em>' class.
678 * <!-- begin-user-doc -->
679 * <!-- end-user-doc -->
680 * @generated
681 * @ordered
682 */
683 int ATOM_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0;
684
685 /**
686 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ImplicitVariableImpl <em>Implicit Variable</em>}' class.
687 * <!-- begin-user-doc -->
688 * <!-- end-user-doc -->
689 * @see org.eclipse.viatra.solver.language.model.problem.impl.ImplicitVariableImpl
690 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getImplicitVariable()
691 * @generated
692 */
693 int IMPLICIT_VARIABLE = 11;
694
695 /**
696 * The feature id for the '<em><b>Name</b></em>' attribute.
697 * <!-- begin-user-doc -->
698 * <!-- end-user-doc -->
699 * @generated
700 * @ordered
701 */
702 int IMPLICIT_VARIABLE__NAME = VARIABLE__NAME;
703
704 /**
705 * The number of structural features of the '<em>Implicit Variable</em>' class.
706 * <!-- begin-user-doc -->
707 * <!-- end-user-doc -->
708 * @generated
709 * @ordered
710 */
711 int IMPLICIT_VARIABLE_FEATURE_COUNT = VARIABLE_FEATURE_COUNT + 0;
712
713 /**
714 * The number of operations of the '<em>Implicit Variable</em>' class.
715 * <!-- begin-user-doc -->
716 * <!-- end-user-doc -->
717 * @generated
718 * @ordered
719 */
720 int IMPLICIT_VARIABLE_OPERATION_COUNT = VARIABLE_OPERATION_COUNT + 0;
721
722 /**
723 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NegativeLiteralImpl <em>Negative Literal</em>}' class.
724 * <!-- begin-user-doc -->
725 * <!-- end-user-doc -->
726 * @see org.eclipse.viatra.solver.language.model.problem.impl.NegativeLiteralImpl
727 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNegativeLiteral()
728 * @generated
729 */
730 int NEGATIVE_LITERAL = 12;
731
732 /**
733 * The feature id for the '<em><b>Implicit Variables</b></em>' containment reference list.
734 * <!-- begin-user-doc -->
735 * <!-- end-user-doc -->
736 * @generated
737 * @ordered
738 */
739 int NEGATIVE_LITERAL__IMPLICIT_VARIABLES = EXISTENTIAL_QUANTIFIER__IMPLICIT_VARIABLES;
740
741 /**
742 * The feature id for the '<em><b>Atom</b></em>' containment reference.
743 * <!-- begin-user-doc -->
744 * <!-- end-user-doc -->
745 * @generated
746 * @ordered
747 */
748 int NEGATIVE_LITERAL__ATOM = EXISTENTIAL_QUANTIFIER_FEATURE_COUNT + 0;
749
750 /**
751 * The number of structural features of the '<em>Negative Literal</em>' class.
752 * <!-- begin-user-doc -->
753 * <!-- end-user-doc -->
754 * @generated
755 * @ordered
756 */
757 int NEGATIVE_LITERAL_FEATURE_COUNT = EXISTENTIAL_QUANTIFIER_FEATURE_COUNT + 1;
758
759 /**
760 * The number of operations of the '<em>Negative Literal</em>' class.
761 * <!-- begin-user-doc -->
762 * <!-- end-user-doc -->
763 * @generated
764 * @ordered
765 */
766 int NEGATIVE_LITERAL_OPERATION_COUNT = EXISTENTIAL_QUANTIFIER_OPERATION_COUNT + 0;
767
768 /**
769 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.Statement <em>Statement</em>}' class.
770 * <!-- begin-user-doc -->
771 * <!-- end-user-doc -->
772 * @see org.eclipse.viatra.solver.language.model.problem.Statement
773 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getStatement()
774 * @generated
775 */
776 int STATEMENT = 17;
777
778 /**
779 * The number of structural features of the '<em>Statement</em>' class.
780 * <!-- begin-user-doc -->
781 * <!-- end-user-doc -->
782 * @generated
783 * @ordered
784 */
785 int STATEMENT_FEATURE_COUNT = 0;
786
787 /**
788 * The number of operations of the '<em>Statement</em>' class.
789 * <!-- begin-user-doc -->
790 * <!-- end-user-doc -->
791 * @generated
792 * @ordered
793 */
794 int STATEMENT_OPERATION_COUNT = 0;
795
796 /**
797 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.AssertionImpl <em>Assertion</em>}' class.
798 * <!-- begin-user-doc -->
799 * <!-- end-user-doc -->
800 * @see org.eclipse.viatra.solver.language.model.problem.impl.AssertionImpl
801 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getAssertion()
802 * @generated
803 */
804 int ASSERTION = 14;
805
806 /**
807 * The feature id for the '<em><b>Relation</b></em>' reference.
808 * <!-- begin-user-doc -->
809 * <!-- end-user-doc -->
810 * @generated
811 * @ordered
812 */
813 int ASSERTION__RELATION = STATEMENT_FEATURE_COUNT + 0;
814
815 /**
816 * The feature id for the '<em><b>Value</b></em>' attribute.
817 * <!-- begin-user-doc -->
818 * <!-- end-user-doc -->
819 * @generated
820 * @ordered
821 */
822 int ASSERTION__VALUE = STATEMENT_FEATURE_COUNT + 1;
823
824 /**
825 * The feature id for the '<em><b>Arguments</b></em>' containment reference list.
826 * <!-- begin-user-doc -->
827 * <!-- end-user-doc -->
828 * @generated
829 * @ordered
830 */
831 int ASSERTION__ARGUMENTS = STATEMENT_FEATURE_COUNT + 2;
832
833 /**
834 * The number of structural features of the '<em>Assertion</em>' class.
835 * <!-- begin-user-doc -->
836 * <!-- end-user-doc -->
837 * @generated
838 * @ordered
839 */
840 int ASSERTION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 3;
841
842 /**
843 * The number of operations of the '<em>Assertion</em>' class.
844 * <!-- begin-user-doc -->
845 * <!-- end-user-doc -->
846 * @generated
847 * @ordered
848 */
849 int ASSERTION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
850
851 /**
852 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeImpl <em>Node</em>}' class.
853 * <!-- begin-user-doc -->
854 * <!-- end-user-doc -->
855 * @see org.eclipse.viatra.solver.language.model.problem.impl.NodeImpl
856 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNode()
857 * @generated
858 */
859 int NODE = 15;
860
861 /**
862 * The feature id for the '<em><b>Name</b></em>' attribute.
863 * <!-- begin-user-doc -->
864 * <!-- end-user-doc -->
865 * @generated
866 * @ordered
867 */
868 int NODE__NAME = VARIABLE_OR_NODE__NAME;
869
870 /**
871 * The number of structural features of the '<em>Node</em>' class.
872 * <!-- begin-user-doc -->
873 * <!-- end-user-doc -->
874 * @generated
875 * @ordered
876 */
877 int NODE_FEATURE_COUNT = VARIABLE_OR_NODE_FEATURE_COUNT + 0;
878
879 /**
880 * The number of operations of the '<em>Node</em>' class.
881 * <!-- begin-user-doc -->
882 * <!-- end-user-doc -->
883 * @generated
884 * @ordered
885 */
886 int NODE_OPERATION_COUNT = VARIABLE_OR_NODE_OPERATION_COUNT + 0;
887
888 /**
889 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ScopeDeclarationImpl <em>Scope Declaration</em>}' class.
890 * <!-- begin-user-doc -->
891 * <!-- end-user-doc -->
892 * @see org.eclipse.viatra.solver.language.model.problem.impl.ScopeDeclarationImpl
893 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getScopeDeclaration()
894 * @generated
895 */
896 int SCOPE_DECLARATION = 16;
897
898 /**
899 * The feature id for the '<em><b>Type Scopes</b></em>' containment reference list.
900 * <!-- begin-user-doc -->
901 * <!-- end-user-doc -->
902 * @generated
903 * @ordered
904 */
905 int SCOPE_DECLARATION__TYPE_SCOPES = STATEMENT_FEATURE_COUNT + 0;
906
907 /**
908 * The number of structural features of the '<em>Scope Declaration</em>' class.
909 * <!-- begin-user-doc -->
910 * <!-- end-user-doc -->
911 * @generated
912 * @ordered
913 */
914 int SCOPE_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1;
915
916 /**
917 * The number of operations of the '<em>Scope Declaration</em>' class.
918 * <!-- begin-user-doc -->
919 * <!-- end-user-doc -->
920 * @generated
921 * @ordered
922 */
923 int SCOPE_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
924
925 /**
926 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.TypeScopeImpl <em>Type Scope</em>}' class.
927 * <!-- begin-user-doc -->
928 * <!-- end-user-doc -->
929 * @see org.eclipse.viatra.solver.language.model.problem.impl.TypeScopeImpl
930 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getTypeScope()
931 * @generated
932 */
933 int TYPE_SCOPE = 18;
934
935 /**
936 * The feature id for the '<em><b>Target Type</b></em>' reference.
937 * <!-- begin-user-doc -->
938 * <!-- end-user-doc -->
939 * @generated
940 * @ordered
941 */
942 int TYPE_SCOPE__TARGET_TYPE = 0;
943
944 /**
945 * The feature id for the '<em><b>Increment</b></em>' attribute.
946 * <!-- begin-user-doc -->
947 * <!-- end-user-doc -->
948 * @generated
949 * @ordered
950 */
951 int TYPE_SCOPE__INCREMENT = 1;
952
953 /**
954 * The feature id for the '<em><b>Multiplicity</b></em>' containment reference.
955 * <!-- begin-user-doc -->
956 * <!-- end-user-doc -->
957 * @generated
958 * @ordered
959 */
960 int TYPE_SCOPE__MULTIPLICITY = 2;
961
962 /**
963 * The number of structural features of the '<em>Type Scope</em>' class.
964 * <!-- begin-user-doc -->
965 * <!-- end-user-doc -->
966 * @generated
967 * @ordered
968 */
969 int TYPE_SCOPE_FEATURE_COUNT = 3;
970
971 /**
972 * The number of operations of the '<em>Type Scope</em>' class.
973 * <!-- begin-user-doc -->
974 * <!-- end-user-doc -->
975 * @generated
976 * @ordered
977 */
978 int TYPE_SCOPE_OPERATION_COUNT = 0;
979
980 /**
981 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.MultiplicityImpl <em>Multiplicity</em>}' class.
982 * <!-- begin-user-doc -->
983 * <!-- end-user-doc -->
984 * @see org.eclipse.viatra.solver.language.model.problem.impl.MultiplicityImpl
985 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getMultiplicity()
986 * @generated
987 */
988 int MULTIPLICITY = 19;
989
990 /**
991 * The number of structural features of the '<em>Multiplicity</em>' class.
992 * <!-- begin-user-doc -->
993 * <!-- end-user-doc -->
994 * @generated
995 * @ordered
996 */
997 int MULTIPLICITY_FEATURE_COUNT = 0;
998
999 /**
1000 * The number of operations of the '<em>Multiplicity</em>' class.
1001 * <!-- begin-user-doc -->
1002 * <!-- end-user-doc -->
1003 * @generated
1004 * @ordered
1005 */
1006 int MULTIPLICITY_OPERATION_COUNT = 0;
1007
1008 /**
1009 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RangeMultiplicityImpl <em>Range Multiplicity</em>}' class.
1010 * <!-- begin-user-doc -->
1011 * <!-- end-user-doc -->
1012 * @see org.eclipse.viatra.solver.language.model.problem.impl.RangeMultiplicityImpl
1013 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getRangeMultiplicity()
1014 * @generated
1015 */
1016 int RANGE_MULTIPLICITY = 20;
1017
1018 /**
1019 * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
1020 * <!-- begin-user-doc -->
1021 * <!-- end-user-doc -->
1022 * @generated
1023 * @ordered
1024 */
1025 int RANGE_MULTIPLICITY__LOWER_BOUND = MULTIPLICITY_FEATURE_COUNT + 0;
1026
1027 /**
1028 * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
1029 * <!-- begin-user-doc -->
1030 * <!-- end-user-doc -->
1031 * @generated
1032 * @ordered
1033 */
1034 int RANGE_MULTIPLICITY__UPPER_BOUND = MULTIPLICITY_FEATURE_COUNT + 1;
1035
1036 /**
1037 * The number of structural features of the '<em>Range Multiplicity</em>' class.
1038 * <!-- begin-user-doc -->
1039 * <!-- end-user-doc -->
1040 * @generated
1041 * @ordered
1042 */
1043 int RANGE_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 2;
1044
1045 /**
1046 * The number of operations of the '<em>Range Multiplicity</em>' class.
1047 * <!-- begin-user-doc -->
1048 * <!-- end-user-doc -->
1049 * @generated
1050 * @ordered
1051 */
1052 int RANGE_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0;
1053
1054 /**
1055 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ExactMultiplicityImpl <em>Exact Multiplicity</em>}' class.
1056 * <!-- begin-user-doc -->
1057 * <!-- end-user-doc -->
1058 * @see org.eclipse.viatra.solver.language.model.problem.impl.ExactMultiplicityImpl
1059 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getExactMultiplicity()
1060 * @generated
1061 */
1062 int EXACT_MULTIPLICITY = 21;
1063
1064 /**
1065 * The feature id for the '<em><b>Exact Value</b></em>' attribute.
1066 * <!-- begin-user-doc -->
1067 * <!-- end-user-doc -->
1068 * @generated
1069 * @ordered
1070 */
1071 int EXACT_MULTIPLICITY__EXACT_VALUE = MULTIPLICITY_FEATURE_COUNT + 0;
1072
1073 /**
1074 * The number of structural features of the '<em>Exact Multiplicity</em>' class.
1075 * <!-- begin-user-doc -->
1076 * <!-- end-user-doc -->
1077 * @generated
1078 * @ordered
1079 */
1080 int EXACT_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 1;
1081
1082 /**
1083 * The number of operations of the '<em>Exact Multiplicity</em>' class.
1084 * <!-- begin-user-doc -->
1085 * <!-- end-user-doc -->
1086 * @generated
1087 * @ordered
1088 */
1089 int EXACT_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0;
1090
1091 /**
1092 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl <em>Unbounded Multiplicity</em>}' class.
1093 * <!-- begin-user-doc -->
1094 * <!-- end-user-doc -->
1095 * @see org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl
1096 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getUnboundedMultiplicity()
1097 * @generated
1098 */
1099 int UNBOUNDED_MULTIPLICITY = 22;
1100
1101 /**
1102 * The number of structural features of the '<em>Unbounded Multiplicity</em>' class.
1103 * <!-- begin-user-doc -->
1104 * <!-- end-user-doc -->
1105 * @generated
1106 * @ordered
1107 */
1108 int UNBOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 0;
1109
1110 /**
1111 * The number of operations of the '<em>Unbounded Multiplicity</em>' class.
1112 * <!-- begin-user-doc -->
1113 * <!-- end-user-doc -->
1114 * @generated
1115 * @ordered
1116 */
1117 int UNBOUNDED_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0;
1118
1119 /**
1120 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl <em>Argument</em>}' class.
1121 * <!-- begin-user-doc -->
1122 * <!-- end-user-doc -->
1123 * @see org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl
1124 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getArgument()
1125 * @generated
1126 */
1127 int ARGUMENT = 31;
1128
1129 /**
1130 * The number of structural features of the '<em>Argument</em>' class.
1131 * <!-- begin-user-doc -->
1132 * <!-- end-user-doc -->
1133 * @generated
1134 * @ordered
1135 */
1136 int ARGUMENT_FEATURE_COUNT = 0;
1137
1138 /**
1139 * The number of operations of the '<em>Argument</em>' class.
1140 * <!-- begin-user-doc -->
1141 * <!-- end-user-doc -->
1142 * @generated
1143 * @ordered
1144 */
1145 int ARGUMENT_OPERATION_COUNT = 0;
1146
1147 /**
1148 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeArgumentImpl <em>Variable Or Node Argument</em>}' class.
1149 * <!-- begin-user-doc -->
1150 * <!-- end-user-doc -->
1151 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeArgumentImpl
1152 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariableOrNodeArgument()
1153 * @generated
1154 */
1155 int VARIABLE_OR_NODE_ARGUMENT = 23;
1156
1157 /**
1158 * The feature id for the '<em><b>Variable Or Node</b></em>' reference.
1159 * <!-- begin-user-doc -->
1160 * <!-- end-user-doc -->
1161 * @generated
1162 * @ordered
1163 */
1164 int VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE = ARGUMENT_FEATURE_COUNT + 0;
1165
1166 /**
1167 * The feature id for the '<em><b>Singleton Variable</b></em>' containment reference.
1168 * <!-- begin-user-doc -->
1169 * <!-- end-user-doc -->
1170 * @generated
1171 * @ordered
1172 */
1173 int VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE = ARGUMENT_FEATURE_COUNT + 1;
1174
1175 /**
1176 * The number of structural features of the '<em>Variable Or Node Argument</em>' class.
1177 * <!-- begin-user-doc -->
1178 * <!-- end-user-doc -->
1179 * @generated
1180 * @ordered
1181 */
1182 int VARIABLE_OR_NODE_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 2;
1183
1184 /**
1185 * The number of operations of the '<em>Variable Or Node Argument</em>' class.
1186 * <!-- begin-user-doc -->
1187 * <!-- end-user-doc -->
1188 * @generated
1189 * @ordered
1190 */
1191 int VARIABLE_OR_NODE_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0;
1192
1193 /**
1194 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl <em>Enum Declaration</em>}' class.
1195 * <!-- begin-user-doc -->
1196 * <!-- end-user-doc -->
1197 * @see org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl
1198 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getEnumDeclaration()
1199 * @generated
1200 */
1201 int ENUM_DECLARATION = 24;
1202
1203 /**
1204 * The feature id for the '<em><b>Name</b></em>' attribute.
1205 * <!-- begin-user-doc -->
1206 * <!-- end-user-doc -->
1207 * @generated
1208 * @ordered
1209 */
1210 int ENUM_DECLARATION__NAME = RELATION__NAME;
1211
1212 /**
1213 * The feature id for the '<em><b>Literals</b></em>' containment reference list.
1214 * <!-- begin-user-doc -->
1215 * <!-- end-user-doc -->
1216 * @generated
1217 * @ordered
1218 */
1219 int ENUM_DECLARATION__LITERALS = RELATION_FEATURE_COUNT + 0;
1220
1221 /**
1222 * The number of structural features of the '<em>Enum Declaration</em>' class.
1223 * <!-- begin-user-doc -->
1224 * <!-- end-user-doc -->
1225 * @generated
1226 * @ordered
1227 */
1228 int ENUM_DECLARATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 1;
1229
1230 /**
1231 * The number of operations of the '<em>Enum Declaration</em>' class.
1232 * <!-- begin-user-doc -->
1233 * <!-- end-user-doc -->
1234 * @generated
1235 * @ordered
1236 */
1237 int ENUM_DECLARATION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0;
1238
1239 /**
1240 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConstantImpl <em>Constant</em>}' class.
1241 * <!-- begin-user-doc -->
1242 * <!-- end-user-doc -->
1243 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConstantImpl
1244 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConstant()
1245 * @generated
1246 */
1247 int CONSTANT = 26;
1248
1249 /**
1250 * The number of structural features of the '<em>Constant</em>' class.
1251 * <!-- begin-user-doc -->
1252 * <!-- end-user-doc -->
1253 * @generated
1254 * @ordered
1255 */
1256 int CONSTANT_FEATURE_COUNT = 0;
1257
1258 /**
1259 * The number of operations of the '<em>Constant</em>' class.
1260 * <!-- begin-user-doc -->
1261 * <!-- end-user-doc -->
1262 * @generated
1263 * @ordered
1264 */
1265 int CONSTANT_OPERATION_COUNT = 0;
1266
1267 /**
1268 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.IntConstantImpl <em>Int Constant</em>}' class.
1269 * <!-- begin-user-doc -->
1270 * <!-- end-user-doc -->
1271 * @see org.eclipse.viatra.solver.language.model.problem.impl.IntConstantImpl
1272 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getIntConstant()
1273 * @generated
1274 */
1275 int INT_CONSTANT = 27;
1276
1277 /**
1278 * The feature id for the '<em><b>Int Value</b></em>' attribute.
1279 * <!-- begin-user-doc -->
1280 * <!-- end-user-doc -->
1281 * @generated
1282 * @ordered
1283 */
1284 int INT_CONSTANT__INT_VALUE = CONSTANT_FEATURE_COUNT + 0;
1285
1286 /**
1287 * The number of structural features of the '<em>Int Constant</em>' class.
1288 * <!-- begin-user-doc -->
1289 * <!-- end-user-doc -->
1290 * @generated
1291 * @ordered
1292 */
1293 int INT_CONSTANT_FEATURE_COUNT = CONSTANT_FEATURE_COUNT + 1;
1294
1295 /**
1296 * The number of operations of the '<em>Int Constant</em>' class.
1297 * <!-- begin-user-doc -->
1298 * <!-- end-user-doc -->
1299 * @generated
1300 * @ordered
1301 */
1302 int INT_CONSTANT_OPERATION_COUNT = CONSTANT_OPERATION_COUNT + 0;
1303
1304 /**
1305 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RealConstantImpl <em>Real Constant</em>}' class.
1306 * <!-- begin-user-doc -->
1307 * <!-- end-user-doc -->
1308 * @see org.eclipse.viatra.solver.language.model.problem.impl.RealConstantImpl
1309 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getRealConstant()
1310 * @generated
1311 */
1312 int REAL_CONSTANT = 28;
1313
1314 /**
1315 * The feature id for the '<em><b>Real Value</b></em>' attribute.
1316 * <!-- begin-user-doc -->
1317 * <!-- end-user-doc -->
1318 * @generated
1319 * @ordered
1320 */
1321 int REAL_CONSTANT__REAL_VALUE = CONSTANT_FEATURE_COUNT + 0;
1322
1323 /**
1324 * The number of structural features of the '<em>Real Constant</em>' class.
1325 * <!-- begin-user-doc -->
1326 * <!-- end-user-doc -->
1327 * @generated
1328 * @ordered
1329 */
1330 int REAL_CONSTANT_FEATURE_COUNT = CONSTANT_FEATURE_COUNT + 1;
1331
1332 /**
1333 * The number of operations of the '<em>Real Constant</em>' class.
1334 * <!-- begin-user-doc -->
1335 * <!-- end-user-doc -->
1336 * @generated
1337 * @ordered
1338 */
1339 int REAL_CONSTANT_OPERATION_COUNT = CONSTANT_OPERATION_COUNT + 0;
1340
1341 /**
1342 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.StringConstantImpl <em>String Constant</em>}' class.
1343 * <!-- begin-user-doc -->
1344 * <!-- end-user-doc -->
1345 * @see org.eclipse.viatra.solver.language.model.problem.impl.StringConstantImpl
1346 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getStringConstant()
1347 * @generated
1348 */
1349 int STRING_CONSTANT = 29;
1350
1351 /**
1352 * The feature id for the '<em><b>String Value</b></em>' attribute.
1353 * <!-- begin-user-doc -->
1354 * <!-- end-user-doc -->
1355 * @generated
1356 * @ordered
1357 */
1358 int STRING_CONSTANT__STRING_VALUE = CONSTANT_FEATURE_COUNT + 0;
1359
1360 /**
1361 * The number of structural features of the '<em>String Constant</em>' class.
1362 * <!-- begin-user-doc -->
1363 * <!-- end-user-doc -->
1364 * @generated
1365 * @ordered
1366 */
1367 int STRING_CONSTANT_FEATURE_COUNT = CONSTANT_FEATURE_COUNT + 1;
1368
1369 /**
1370 * The number of operations of the '<em>String Constant</em>' class.
1371 * <!-- begin-user-doc -->
1372 * <!-- end-user-doc -->
1373 * @generated
1374 * @ordered
1375 */
1376 int STRING_CONSTANT_OPERATION_COUNT = CONSTANT_OPERATION_COUNT + 0;
1377
1378 /**
1379 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConstantArgumentImpl <em>Constant Argument</em>}' class.
1380 * <!-- begin-user-doc -->
1381 * <!-- end-user-doc -->
1382 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConstantArgumentImpl
1383 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConstantArgument()
1384 * @generated
1385 */
1386 int CONSTANT_ARGUMENT = 30;
1387
1388 /**
1389 * The feature id for the '<em><b>Constant</b></em>' containment reference.
1390 * <!-- begin-user-doc -->
1391 * <!-- end-user-doc -->
1392 * @generated
1393 * @ordered
1394 */
1395 int CONSTANT_ARGUMENT__CONSTANT = ARGUMENT_FEATURE_COUNT + 0;
1396
1397 /**
1398 * The number of structural features of the '<em>Constant Argument</em>' class.
1399 * <!-- begin-user-doc -->
1400 * <!-- end-user-doc -->
1401 * @generated
1402 * @ordered
1403 */
1404 int CONSTANT_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1;
1405
1406 /**
1407 * The number of operations of the '<em>Constant Argument</em>' class.
1408 * <!-- begin-user-doc -->
1409 * <!-- end-user-doc -->
1410 * @generated
1411 * @ordered
1412 */
1413 int CONSTANT_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0;
1414
1415 /**
1416 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.AssertionArgumentImpl <em>Assertion Argument</em>}' class.
1417 * <!-- begin-user-doc -->
1418 * <!-- end-user-doc -->
1419 * @see org.eclipse.viatra.solver.language.model.problem.impl.AssertionArgumentImpl
1420 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getAssertionArgument()
1421 * @generated
1422 */
1423 int ASSERTION_ARGUMENT = 33;
1424
1425 /**
1426 * The number of structural features of the '<em>Assertion Argument</em>' class.
1427 * <!-- begin-user-doc -->
1428 * <!-- end-user-doc -->
1429 * @generated
1430 * @ordered
1431 */
1432 int ASSERTION_ARGUMENT_FEATURE_COUNT = 0;
1433
1434 /**
1435 * The number of operations of the '<em>Assertion Argument</em>' class.
1436 * <!-- begin-user-doc -->
1437 * <!-- end-user-doc -->
1438 * @generated
1439 * @ordered
1440 */
1441 int ASSERTION_ARGUMENT_OPERATION_COUNT = 0;
1442
1443 /**
1444 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeAssertionArgumentImpl <em>Node Assertion Argument</em>}' class.
1445 * <!-- begin-user-doc -->
1446 * <!-- end-user-doc -->
1447 * @see org.eclipse.viatra.solver.language.model.problem.impl.NodeAssertionArgumentImpl
1448 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNodeAssertionArgument()
1449 * @generated
1450 */
1451 int NODE_ASSERTION_ARGUMENT = 32;
1452
1453 /**
1454 * The feature id for the '<em><b>Node</b></em>' reference.
1455 * <!-- begin-user-doc -->
1456 * <!-- end-user-doc -->
1457 * @generated
1458 * @ordered
1459 */
1460 int NODE_ASSERTION_ARGUMENT__NODE = ASSERTION_ARGUMENT_FEATURE_COUNT + 0;
1461
1462 /**
1463 * The number of structural features of the '<em>Node Assertion Argument</em>' class.
1464 * <!-- begin-user-doc -->
1465 * <!-- end-user-doc -->
1466 * @generated
1467 * @ordered
1468 */
1469 int NODE_ASSERTION_ARGUMENT_FEATURE_COUNT = ASSERTION_ARGUMENT_FEATURE_COUNT + 1;
1470
1471 /**
1472 * The number of operations of the '<em>Node Assertion Argument</em>' class.
1473 * <!-- begin-user-doc -->
1474 * <!-- end-user-doc -->
1475 * @generated
1476 * @ordered
1477 */
1478 int NODE_ASSERTION_ARGUMENT_OPERATION_COUNT = ASSERTION_ARGUMENT_OPERATION_COUNT + 0;
1479
1480 /**
1481 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConstantAssertionArgumentImpl <em>Constant Assertion Argument</em>}' class.
1482 * <!-- begin-user-doc -->
1483 * <!-- end-user-doc -->
1484 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConstantAssertionArgumentImpl
1485 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConstantAssertionArgument()
1486 * @generated
1487 */
1488 int CONSTANT_ASSERTION_ARGUMENT = 34;
1489
1490 /**
1491 * The feature id for the '<em><b>Constant</b></em>' containment reference.
1492 * <!-- begin-user-doc -->
1493 * <!-- end-user-doc -->
1494 * @generated
1495 * @ordered
1496 */
1497 int CONSTANT_ASSERTION_ARGUMENT__CONSTANT = ASSERTION_ARGUMENT_FEATURE_COUNT + 0;
1498
1499 /**
1500 * The number of structural features of the '<em>Constant Assertion Argument</em>' class.
1501 * <!-- begin-user-doc -->
1502 * <!-- end-user-doc -->
1503 * @generated
1504 * @ordered
1505 */
1506 int CONSTANT_ASSERTION_ARGUMENT_FEATURE_COUNT = ASSERTION_ARGUMENT_FEATURE_COUNT + 1;
1507
1508 /**
1509 * The number of operations of the '<em>Constant Assertion Argument</em>' class.
1510 * <!-- begin-user-doc -->
1511 * <!-- end-user-doc -->
1512 * @generated
1513 * @ordered
1514 */
1515 int CONSTANT_ASSERTION_ARGUMENT_OPERATION_COUNT = ASSERTION_ARGUMENT_OPERATION_COUNT + 0;
1516
1517 /**
1518 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeValueAssertionImpl <em>Node Value Assertion</em>}' class.
1519 * <!-- begin-user-doc -->
1520 * <!-- end-user-doc -->
1521 * @see org.eclipse.viatra.solver.language.model.problem.impl.NodeValueAssertionImpl
1522 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNodeValueAssertion()
1523 * @generated
1524 */
1525 int NODE_VALUE_ASSERTION = 35;
1526
1527 /**
1528 * The feature id for the '<em><b>Node</b></em>' reference.
1529 * <!-- begin-user-doc -->
1530 * <!-- end-user-doc -->
1531 * @generated
1532 * @ordered
1533 */
1534 int NODE_VALUE_ASSERTION__NODE = STATEMENT_FEATURE_COUNT + 0;
1535
1536 /**
1537 * The feature id for the '<em><b>Value</b></em>' containment reference.
1538 * <!-- begin-user-doc -->
1539 * <!-- end-user-doc -->
1540 * @generated
1541 * @ordered
1542 */
1543 int NODE_VALUE_ASSERTION__VALUE = STATEMENT_FEATURE_COUNT + 1;
1544
1545 /**
1546 * The number of structural features of the '<em>Node Value Assertion</em>' class.
1547 * <!-- begin-user-doc -->
1548 * <!-- end-user-doc -->
1549 * @generated
1550 * @ordered
1551 */
1552 int NODE_VALUE_ASSERTION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2;
1553
1554 /**
1555 * The number of operations of the '<em>Node Value Assertion</em>' class.
1556 * <!-- begin-user-doc -->
1557 * <!-- end-user-doc -->
1558 * @generated
1559 * @ordered
1560 */
1561 int NODE_VALUE_ASSERTION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0;
1562
1563 /**
1564 * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum.
1565 * <!-- begin-user-doc -->
1566 * <!-- end-user-doc -->
1567 * @see org.eclipse.viatra.solver.language.model.problem.LogicValue
1568 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLogicValue()
1569 * @generated
1570 */
1571 int LOGIC_VALUE = 36;
1572
1573 /**
1574 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Problem <em>Problem</em>}'.
1575 * <!-- begin-user-doc -->
1576 * <!-- end-user-doc -->
1577 * @return the meta object for class '<em>Problem</em>'.
1578 * @see org.eclipse.viatra.solver.language.model.problem.Problem
1579 * @generated
1580 */
1581 EClass getProblem();
1582
1583 /**
1584 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.Problem#getNodes <em>Nodes</em>}'.
1585 * <!-- begin-user-doc -->
1586 * <!-- end-user-doc -->
1587 * @return the meta object for the containment reference list '<em>Nodes</em>'.
1588 * @see org.eclipse.viatra.solver.language.model.problem.Problem#getNodes()
1589 * @see #getProblem()
1590 * @generated
1591 */
1592 EReference getProblem_Nodes();
1593
1594 /**
1595 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.Problem#getStatements <em>Statements</em>}'.
1596 * <!-- begin-user-doc -->
1597 * <!-- end-user-doc -->
1598 * @return the meta object for the containment reference list '<em>Statements</em>'.
1599 * @see org.eclipse.viatra.solver.language.model.problem.Problem#getStatements()
1600 * @see #getProblem()
1601 * @generated
1602 */
1603 EReference getProblem_Statements();
1604
1605 /**
1606 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Relation <em>Relation</em>}'.
1607 * <!-- begin-user-doc -->
1608 * <!-- end-user-doc -->
1609 * @return the meta object for class '<em>Relation</em>'.
1610 * @see org.eclipse.viatra.solver.language.model.problem.Relation
1611 * @generated
1612 */
1613 EClass getRelation();
1614
1615 /**
1616 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration <em>Class Declaration</em>}'.
1617 * <!-- begin-user-doc -->
1618 * <!-- end-user-doc -->
1619 * @return the meta object for class '<em>Class Declaration</em>'.
1620 * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration
1621 * @generated
1622 */
1623 EClass getClassDeclaration();
1624
1625 /**
1626 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#isAbstract <em>Abstract</em>}'.
1627 * <!-- begin-user-doc -->
1628 * <!-- end-user-doc -->
1629 * @return the meta object for the attribute '<em>Abstract</em>'.
1630 * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#isAbstract()
1631 * @see #getClassDeclaration()
1632 * @generated
1633 */
1634 EAttribute getClassDeclaration_Abstract();
1635
1636 /**
1637 * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getSuperTypes <em>Super Types</em>}'.
1638 * <!-- begin-user-doc -->
1639 * <!-- end-user-doc -->
1640 * @return the meta object for the reference list '<em>Super Types</em>'.
1641 * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getSuperTypes()
1642 * @see #getClassDeclaration()
1643 * @generated
1644 */
1645 EReference getClassDeclaration_SuperTypes();
1646
1647 /**
1648 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getReferenceDeclarations <em>Reference Declarations</em>}'.
1649 * <!-- begin-user-doc -->
1650 * <!-- end-user-doc -->
1651 * @return the meta object for the containment reference list '<em>Reference Declarations</em>'.
1652 * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getReferenceDeclarations()
1653 * @see #getClassDeclaration()
1654 * @generated
1655 */
1656 EReference getClassDeclaration_ReferenceDeclarations();
1657
1658 /**
1659 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode <em>New Node</em>}'.
1660 * <!-- begin-user-doc -->
1661 * <!-- end-user-doc -->
1662 * @return the meta object for the containment reference '<em>New Node</em>'.
1663 * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode()
1664 * @see #getClassDeclaration()
1665 * @generated
1666 */
1667 EReference getClassDeclaration_NewNode();
1668
1669 /**
1670 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration <em>Reference Declaration</em>}'.
1671 * <!-- begin-user-doc -->
1672 * <!-- end-user-doc -->
1673 * @return the meta object for class '<em>Reference Declaration</em>'.
1674 * @see org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration
1675 * @generated
1676 */
1677 EClass getReferenceDeclaration();
1678
1679 /**
1680 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType <em>Reference Type</em>}'.
1681 * <!-- begin-user-doc -->
1682 * <!-- end-user-doc -->
1683 * @return the meta object for the reference '<em>Reference Type</em>'.
1684 * @see org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType()
1685 * @see #getReferenceDeclaration()
1686 * @generated
1687 */
1688 EReference getReferenceDeclaration_ReferenceType();
1689
1690 /**
1691 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getOpposite <em>Opposite</em>}'.
1692 * <!-- begin-user-doc -->
1693 * <!-- end-user-doc -->
1694 * @return the meta object for the reference '<em>Opposite</em>'.
1695 * @see org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getOpposite()
1696 * @see #getReferenceDeclaration()
1697 * @generated
1698 */
1699 EReference getReferenceDeclaration_Opposite();
1700
1701 /**
1702 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#isContainment <em>Containment</em>}'.
1703 * <!-- begin-user-doc -->
1704 * <!-- end-user-doc -->
1705 * @return the meta object for the attribute '<em>Containment</em>'.
1706 * @see org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#isContainment()
1707 * @see #getReferenceDeclaration()
1708 * @generated
1709 */
1710 EAttribute getReferenceDeclaration_Containment();
1711
1712 /**
1713 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getMultiplicity <em>Multiplicity</em>}'.
1714 * <!-- begin-user-doc -->
1715 * <!-- end-user-doc -->
1716 * @return the meta object for the containment reference '<em>Multiplicity</em>'.
1717 * @see org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getMultiplicity()
1718 * @see #getReferenceDeclaration()
1719 * @generated
1720 */
1721 EReference getReferenceDeclaration_Multiplicity();
1722
1723 /**
1724 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.NamedElement <em>Named Element</em>}'.
1725 * <!-- begin-user-doc -->
1726 * <!-- end-user-doc -->
1727 * @return the meta object for class '<em>Named Element</em>'.
1728 * @see org.eclipse.viatra.solver.language.model.problem.NamedElement
1729 * @generated
1730 */
1731 EClass getNamedElement();
1732
1733 /**
1734 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.NamedElement#getName <em>Name</em>}'.
1735 * <!-- begin-user-doc -->
1736 * <!-- end-user-doc -->
1737 * @return the meta object for the attribute '<em>Name</em>'.
1738 * @see org.eclipse.viatra.solver.language.model.problem.NamedElement#getName()
1739 * @see #getNamedElement()
1740 * @generated
1741 */
1742 EAttribute getNamedElement_Name();
1743
1744 /**
1745 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition <em>Predicate Definition</em>}'.
1746 * <!-- begin-user-doc -->
1747 * <!-- end-user-doc -->
1748 * @return the meta object for class '<em>Predicate Definition</em>'.
1749 * @see org.eclipse.viatra.solver.language.model.problem.PredicateDefinition
1750 * @generated
1751 */
1752 EClass getPredicateDefinition();
1753
1754 /**
1755 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#isError <em>Error</em>}'.
1756 * <!-- begin-user-doc -->
1757 * <!-- end-user-doc -->
1758 * @return the meta object for the attribute '<em>Error</em>'.
1759 * @see org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#isError()
1760 * @see #getPredicateDefinition()
1761 * @generated
1762 */
1763 EAttribute getPredicateDefinition_Error();
1764
1765 /**
1766 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#getParameters <em>Parameters</em>}'.
1767 * <!-- begin-user-doc -->
1768 * <!-- end-user-doc -->
1769 * @return the meta object for the containment reference list '<em>Parameters</em>'.
1770 * @see org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#getParameters()
1771 * @see #getPredicateDefinition()
1772 * @generated
1773 */
1774 EReference getPredicateDefinition_Parameters();
1775
1776 /**
1777 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#getBodies <em>Bodies</em>}'.
1778 * <!-- begin-user-doc -->
1779 * <!-- end-user-doc -->
1780 * @return the meta object for the containment reference list '<em>Bodies</em>'.
1781 * @see org.eclipse.viatra.solver.language.model.problem.PredicateDefinition#getBodies()
1782 * @see #getPredicateDefinition()
1783 * @generated
1784 */
1785 EReference getPredicateDefinition_Bodies();
1786
1787 /**
1788 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Parameter <em>Parameter</em>}'.
1789 * <!-- begin-user-doc -->
1790 * <!-- end-user-doc -->
1791 * @return the meta object for class '<em>Parameter</em>'.
1792 * @see org.eclipse.viatra.solver.language.model.problem.Parameter
1793 * @generated
1794 */
1795 EClass getParameter();
1796
1797 /**
1798 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.Parameter#getParameterType <em>Parameter Type</em>}'.
1799 * <!-- begin-user-doc -->
1800 * <!-- end-user-doc -->
1801 * @return the meta object for the reference '<em>Parameter Type</em>'.
1802 * @see org.eclipse.viatra.solver.language.model.problem.Parameter#getParameterType()
1803 * @see #getParameter()
1804 * @generated
1805 */
1806 EReference getParameter_ParameterType();
1807
1808 /**
1809 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Variable <em>Variable</em>}'.
1810 * <!-- begin-user-doc -->
1811 * <!-- end-user-doc -->
1812 * @return the meta object for class '<em>Variable</em>'.
1813 * @see org.eclipse.viatra.solver.language.model.problem.Variable
1814 * @generated
1815 */
1816 EClass getVariable();
1817
1818 /**
1819 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Conjunction <em>Conjunction</em>}'.
1820 * <!-- begin-user-doc -->
1821 * <!-- end-user-doc -->
1822 * @return the meta object for class '<em>Conjunction</em>'.
1823 * @see org.eclipse.viatra.solver.language.model.problem.Conjunction
1824 * @generated
1825 */
1826 EClass getConjunction();
1827
1828 /**
1829 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.Conjunction#getLiterals <em>Literals</em>}'.
1830 * <!-- begin-user-doc -->
1831 * <!-- end-user-doc -->
1832 * @return the meta object for the containment reference list '<em>Literals</em>'.
1833 * @see org.eclipse.viatra.solver.language.model.problem.Conjunction#getLiterals()
1834 * @see #getConjunction()
1835 * @generated
1836 */
1837 EReference getConjunction_Literals();
1838
1839 /**
1840 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Literal <em>Literal</em>}'.
1841 * <!-- begin-user-doc -->
1842 * <!-- end-user-doc -->
1843 * @return the meta object for class '<em>Literal</em>'.
1844 * @see org.eclipse.viatra.solver.language.model.problem.Literal
1845 * @generated
1846 */
1847 EClass getLiteral();
1848
1849 /**
1850 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Atom <em>Atom</em>}'.
1851 * <!-- begin-user-doc -->
1852 * <!-- end-user-doc -->
1853 * @return the meta object for class '<em>Atom</em>'.
1854 * @see org.eclipse.viatra.solver.language.model.problem.Atom
1855 * @generated
1856 */
1857 EClass getAtom();
1858
1859 /**
1860 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.Atom#getRelation <em>Relation</em>}'.
1861 * <!-- begin-user-doc -->
1862 * <!-- end-user-doc -->
1863 * @return the meta object for the reference '<em>Relation</em>'.
1864 * @see org.eclipse.viatra.solver.language.model.problem.Atom#getRelation()
1865 * @see #getAtom()
1866 * @generated
1867 */
1868 EReference getAtom_Relation();
1869
1870 /**
1871 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.Atom#getArguments <em>Arguments</em>}'.
1872 * <!-- begin-user-doc -->
1873 * <!-- end-user-doc -->
1874 * @return the meta object for the containment reference list '<em>Arguments</em>'.
1875 * @see org.eclipse.viatra.solver.language.model.problem.Atom#getArguments()
1876 * @see #getAtom()
1877 * @generated
1878 */
1879 EReference getAtom_Arguments();
1880
1881 /**
1882 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.Atom#isTransitiveClosure <em>Transitive Closure</em>}'.
1883 * <!-- begin-user-doc -->
1884 * <!-- end-user-doc -->
1885 * @return the meta object for the attribute '<em>Transitive Closure</em>'.
1886 * @see org.eclipse.viatra.solver.language.model.problem.Atom#isTransitiveClosure()
1887 * @see #getAtom()
1888 * @generated
1889 */
1890 EAttribute getAtom_TransitiveClosure();
1891
1892 /**
1893 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ImplicitVariable <em>Implicit Variable</em>}'.
1894 * <!-- begin-user-doc -->
1895 * <!-- end-user-doc -->
1896 * @return the meta object for class '<em>Implicit Variable</em>'.
1897 * @see org.eclipse.viatra.solver.language.model.problem.ImplicitVariable
1898 * @generated
1899 */
1900 EClass getImplicitVariable();
1901
1902 /**
1903 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.NegativeLiteral <em>Negative Literal</em>}'.
1904 * <!-- begin-user-doc -->
1905 * <!-- end-user-doc -->
1906 * @return the meta object for class '<em>Negative Literal</em>'.
1907 * @see org.eclipse.viatra.solver.language.model.problem.NegativeLiteral
1908 * @generated
1909 */
1910 EClass getNegativeLiteral();
1911
1912 /**
1913 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.NegativeLiteral#getAtom <em>Atom</em>}'.
1914 * <!-- begin-user-doc -->
1915 * <!-- end-user-doc -->
1916 * @return the meta object for the containment reference '<em>Atom</em>'.
1917 * @see org.eclipse.viatra.solver.language.model.problem.NegativeLiteral#getAtom()
1918 * @see #getNegativeLiteral()
1919 * @generated
1920 */
1921 EReference getNegativeLiteral_Atom();
1922
1923 /**
1924 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier <em>Existential Quantifier</em>}'.
1925 * <!-- begin-user-doc -->
1926 * <!-- end-user-doc -->
1927 * @return the meta object for class '<em>Existential Quantifier</em>'.
1928 * @see org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier
1929 * @generated
1930 */
1931 EClass getExistentialQuantifier();
1932
1933 /**
1934 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier#getImplicitVariables <em>Implicit Variables</em>}'.
1935 * <!-- begin-user-doc -->
1936 * <!-- end-user-doc -->
1937 * @return the meta object for the containment reference list '<em>Implicit Variables</em>'.
1938 * @see org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier#getImplicitVariables()
1939 * @see #getExistentialQuantifier()
1940 * @generated
1941 */
1942 EReference getExistentialQuantifier_ImplicitVariables();
1943
1944 /**
1945 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Assertion <em>Assertion</em>}'.
1946 * <!-- begin-user-doc -->
1947 * <!-- end-user-doc -->
1948 * @return the meta object for class '<em>Assertion</em>'.
1949 * @see org.eclipse.viatra.solver.language.model.problem.Assertion
1950 * @generated
1951 */
1952 EClass getAssertion();
1953
1954 /**
1955 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getRelation <em>Relation</em>}'.
1956 * <!-- begin-user-doc -->
1957 * <!-- end-user-doc -->
1958 * @return the meta object for the reference '<em>Relation</em>'.
1959 * @see org.eclipse.viatra.solver.language.model.problem.Assertion#getRelation()
1960 * @see #getAssertion()
1961 * @generated
1962 */
1963 EReference getAssertion_Relation();
1964
1965 /**
1966 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getArguments <em>Arguments</em>}'.
1967 * <!-- begin-user-doc -->
1968 * <!-- end-user-doc -->
1969 * @return the meta object for the containment reference list '<em>Arguments</em>'.
1970 * @see org.eclipse.viatra.solver.language.model.problem.Assertion#getArguments()
1971 * @see #getAssertion()
1972 * @generated
1973 */
1974 EReference getAssertion_Arguments();
1975
1976 /**
1977 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.Assertion#getValue <em>Value</em>}'.
1978 * <!-- begin-user-doc -->
1979 * <!-- end-user-doc -->
1980 * @return the meta object for the attribute '<em>Value</em>'.
1981 * @see org.eclipse.viatra.solver.language.model.problem.Assertion#getValue()
1982 * @see #getAssertion()
1983 * @generated
1984 */
1985 EAttribute getAssertion_Value();
1986
1987 /**
1988 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Node <em>Node</em>}'.
1989 * <!-- begin-user-doc -->
1990 * <!-- end-user-doc -->
1991 * @return the meta object for class '<em>Node</em>'.
1992 * @see org.eclipse.viatra.solver.language.model.problem.Node
1993 * @generated
1994 */
1995 EClass getNode();
1996
1997 /**
1998 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration <em>Scope Declaration</em>}'.
1999 * <!-- begin-user-doc -->
2000 * <!-- end-user-doc -->
2001 * @return the meta object for class '<em>Scope Declaration</em>'.
2002 * @see org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration
2003 * @generated
2004 */
2005 EClass getScopeDeclaration();
2006
2007 /**
2008 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration#getTypeScopes <em>Type Scopes</em>}'.
2009 * <!-- begin-user-doc -->
2010 * <!-- end-user-doc -->
2011 * @return the meta object for the containment reference list '<em>Type Scopes</em>'.
2012 * @see org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration#getTypeScopes()
2013 * @see #getScopeDeclaration()
2014 * @generated
2015 */
2016 EReference getScopeDeclaration_TypeScopes();
2017
2018 /**
2019 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Statement <em>Statement</em>}'.
2020 * <!-- begin-user-doc -->
2021 * <!-- end-user-doc -->
2022 * @return the meta object for class '<em>Statement</em>'.
2023 * @see org.eclipse.viatra.solver.language.model.problem.Statement
2024 * @generated
2025 */
2026 EClass getStatement();
2027
2028 /**
2029 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope <em>Type Scope</em>}'.
2030 * <!-- begin-user-doc -->
2031 * <!-- end-user-doc -->
2032 * @return the meta object for class '<em>Type Scope</em>'.
2033 * @see org.eclipse.viatra.solver.language.model.problem.TypeScope
2034 * @generated
2035 */
2036 EClass getTypeScope();
2037
2038 /**
2039 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#getTargetType <em>Target Type</em>}'.
2040 * <!-- begin-user-doc -->
2041 * <!-- end-user-doc -->
2042 * @return the meta object for the reference '<em>Target Type</em>'.
2043 * @see org.eclipse.viatra.solver.language.model.problem.TypeScope#getTargetType()
2044 * @see #getTypeScope()
2045 * @generated
2046 */
2047 EReference getTypeScope_TargetType();
2048
2049 /**
2050 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#isIncrement <em>Increment</em>}'.
2051 * <!-- begin-user-doc -->
2052 * <!-- end-user-doc -->
2053 * @return the meta object for the attribute '<em>Increment</em>'.
2054 * @see org.eclipse.viatra.solver.language.model.problem.TypeScope#isIncrement()
2055 * @see #getTypeScope()
2056 * @generated
2057 */
2058 EAttribute getTypeScope_Increment();
2059
2060 /**
2061 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#getMultiplicity <em>Multiplicity</em>}'.
2062 * <!-- begin-user-doc -->
2063 * <!-- end-user-doc -->
2064 * @return the meta object for the containment reference '<em>Multiplicity</em>'.
2065 * @see org.eclipse.viatra.solver.language.model.problem.TypeScope#getMultiplicity()
2066 * @see #getTypeScope()
2067 * @generated
2068 */
2069 EReference getTypeScope_Multiplicity();
2070
2071 /**
2072 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Multiplicity <em>Multiplicity</em>}'.
2073 * <!-- begin-user-doc -->
2074 * <!-- end-user-doc -->
2075 * @return the meta object for class '<em>Multiplicity</em>'.
2076 * @see org.eclipse.viatra.solver.language.model.problem.Multiplicity
2077 * @generated
2078 */
2079 EClass getMultiplicity();
2080
2081 /**
2082 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity <em>Range Multiplicity</em>}'.
2083 * <!-- begin-user-doc -->
2084 * <!-- end-user-doc -->
2085 * @return the meta object for class '<em>Range Multiplicity</em>'.
2086 * @see org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity
2087 * @generated
2088 */
2089 EClass getRangeMultiplicity();
2090
2091 /**
2092 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getLowerBound <em>Lower Bound</em>}'.
2093 * <!-- begin-user-doc -->
2094 * <!-- end-user-doc -->
2095 * @return the meta object for the attribute '<em>Lower Bound</em>'.
2096 * @see org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getLowerBound()
2097 * @see #getRangeMultiplicity()
2098 * @generated
2099 */
2100 EAttribute getRangeMultiplicity_LowerBound();
2101
2102 /**
2103 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getUpperBound <em>Upper Bound</em>}'.
2104 * <!-- begin-user-doc -->
2105 * <!-- end-user-doc -->
2106 * @return the meta object for the attribute '<em>Upper Bound</em>'.
2107 * @see org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getUpperBound()
2108 * @see #getRangeMultiplicity()
2109 * @generated
2110 */
2111 EAttribute getRangeMultiplicity_UpperBound();
2112
2113 /**
2114 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity <em>Exact Multiplicity</em>}'.
2115 * <!-- begin-user-doc -->
2116 * <!-- end-user-doc -->
2117 * @return the meta object for class '<em>Exact Multiplicity</em>'.
2118 * @see org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity
2119 * @generated
2120 */
2121 EClass getExactMultiplicity();
2122
2123 /**
2124 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity#getExactValue <em>Exact Value</em>}'.
2125 * <!-- begin-user-doc -->
2126 * <!-- end-user-doc -->
2127 * @return the meta object for the attribute '<em>Exact Value</em>'.
2128 * @see org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity#getExactValue()
2129 * @see #getExactMultiplicity()
2130 * @generated
2131 */
2132 EAttribute getExactMultiplicity_ExactValue();
2133
2134 /**
2135 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity <em>Unbounded Multiplicity</em>}'.
2136 * <!-- begin-user-doc -->
2137 * <!-- end-user-doc -->
2138 * @return the meta object for class '<em>Unbounded Multiplicity</em>'.
2139 * @see org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity
2140 * @generated
2141 */
2142 EClass getUnboundedMultiplicity();
2143
2144 /**
2145 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument <em>Variable Or Node Argument</em>}'.
2146 * <!-- begin-user-doc -->
2147 * <!-- end-user-doc -->
2148 * @return the meta object for class '<em>Variable Or Node Argument</em>'.
2149 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument
2150 * @generated
2151 */
2152 EClass getVariableOrNodeArgument();
2153
2154 /**
2155 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getVariableOrNode <em>Variable Or Node</em>}'.
2156 * <!-- begin-user-doc -->
2157 * <!-- end-user-doc -->
2158 * @return the meta object for the reference '<em>Variable Or Node</em>'.
2159 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getVariableOrNode()
2160 * @see #getVariableOrNodeArgument()
2161 * @generated
2162 */
2163 EReference getVariableOrNodeArgument_VariableOrNode();
2164
2165 /**
2166 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getSingletonVariable <em>Singleton Variable</em>}'.
2167 * <!-- begin-user-doc -->
2168 * <!-- end-user-doc -->
2169 * @return the meta object for the containment reference '<em>Singleton Variable</em>'.
2170 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getSingletonVariable()
2171 * @see #getVariableOrNodeArgument()
2172 * @generated
2173 */
2174 EReference getVariableOrNodeArgument_SingletonVariable();
2175
2176 /**
2177 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Argument <em>Argument</em>}'.
2178 * <!-- begin-user-doc -->
2179 * <!-- end-user-doc -->
2180 * @return the meta object for class '<em>Argument</em>'.
2181 * @see org.eclipse.viatra.solver.language.model.problem.Argument
2182 * @generated
2183 */
2184 EClass getArgument();
2185
2186 /**
2187 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument <em>Node Assertion Argument</em>}'.
2188 * <!-- begin-user-doc -->
2189 * <!-- end-user-doc -->
2190 * @return the meta object for class '<em>Node Assertion Argument</em>'.
2191 * @see org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument
2192 * @generated
2193 */
2194 EClass getNodeAssertionArgument();
2195
2196 /**
2197 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument#getNode <em>Node</em>}'.
2198 * <!-- begin-user-doc -->
2199 * <!-- end-user-doc -->
2200 * @return the meta object for the reference '<em>Node</em>'.
2201 * @see org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument#getNode()
2202 * @see #getNodeAssertionArgument()
2203 * @generated
2204 */
2205 EReference getNodeAssertionArgument_Node();
2206
2207 /**
2208 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.AssertionArgument <em>Assertion Argument</em>}'.
2209 * <!-- begin-user-doc -->
2210 * <!-- end-user-doc -->
2211 * @return the meta object for class '<em>Assertion Argument</em>'.
2212 * @see org.eclipse.viatra.solver.language.model.problem.AssertionArgument
2213 * @generated
2214 */
2215 EClass getAssertionArgument();
2216
2217 /**
2218 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument <em>Constant Assertion Argument</em>}'.
2219 * <!-- begin-user-doc -->
2220 * <!-- end-user-doc -->
2221 * @return the meta object for class '<em>Constant Assertion Argument</em>'.
2222 * @see org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument
2223 * @generated
2224 */
2225 EClass getConstantAssertionArgument();
2226
2227 /**
2228 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument#getConstant <em>Constant</em>}'.
2229 * <!-- begin-user-doc -->
2230 * <!-- end-user-doc -->
2231 * @return the meta object for the containment reference '<em>Constant</em>'.
2232 * @see org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument#getConstant()
2233 * @see #getConstantAssertionArgument()
2234 * @generated
2235 */
2236 EReference getConstantAssertionArgument_Constant();
2237
2238 /**
2239 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion <em>Node Value Assertion</em>}'.
2240 * <!-- begin-user-doc -->
2241 * <!-- end-user-doc -->
2242 * @return the meta object for class '<em>Node Value Assertion</em>'.
2243 * @see org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion
2244 * @generated
2245 */
2246 EClass getNodeValueAssertion();
2247
2248 /**
2249 * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getNode <em>Node</em>}'.
2250 * <!-- begin-user-doc -->
2251 * <!-- end-user-doc -->
2252 * @return the meta object for the reference '<em>Node</em>'.
2253 * @see org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getNode()
2254 * @see #getNodeValueAssertion()
2255 * @generated
2256 */
2257 EReference getNodeValueAssertion_Node();
2258
2259 /**
2260 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getValue <em>Value</em>}'.
2261 * <!-- begin-user-doc -->
2262 * <!-- end-user-doc -->
2263 * @return the meta object for the containment reference '<em>Value</em>'.
2264 * @see org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion#getValue()
2265 * @see #getNodeValueAssertion()
2266 * @generated
2267 */
2268 EReference getNodeValueAssertion_Value();
2269
2270 /**
2271 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration <em>Enum Declaration</em>}'.
2272 * <!-- begin-user-doc -->
2273 * <!-- end-user-doc -->
2274 * @return the meta object for class '<em>Enum Declaration</em>'.
2275 * @see org.eclipse.viatra.solver.language.model.problem.EnumDeclaration
2276 * @generated
2277 */
2278 EClass getEnumDeclaration();
2279
2280 /**
2281 * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration#getLiterals <em>Literals</em>}'.
2282 * <!-- begin-user-doc -->
2283 * <!-- end-user-doc -->
2284 * @return the meta object for the containment reference list '<em>Literals</em>'.
2285 * @see org.eclipse.viatra.solver.language.model.problem.EnumDeclaration#getLiterals()
2286 * @see #getEnumDeclaration()
2287 * @generated
2288 */
2289 EReference getEnumDeclaration_Literals();
2290
2291 /**
2292 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNode <em>Variable Or Node</em>}'.
2293 * <!-- begin-user-doc -->
2294 * <!-- end-user-doc -->
2295 * @return the meta object for class '<em>Variable Or Node</em>'.
2296 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNode
2297 * @generated
2298 */
2299 EClass getVariableOrNode();
2300
2301 /**
2302 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Constant <em>Constant</em>}'.
2303 * <!-- begin-user-doc -->
2304 * <!-- end-user-doc -->
2305 * @return the meta object for class '<em>Constant</em>'.
2306 * @see org.eclipse.viatra.solver.language.model.problem.Constant
2307 * @generated
2308 */
2309 EClass getConstant();
2310
2311 /**
2312 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.IntConstant <em>Int Constant</em>}'.
2313 * <!-- begin-user-doc -->
2314 * <!-- end-user-doc -->
2315 * @return the meta object for class '<em>Int Constant</em>'.
2316 * @see org.eclipse.viatra.solver.language.model.problem.IntConstant
2317 * @generated
2318 */
2319 EClass getIntConstant();
2320
2321 /**
2322 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.IntConstant#getIntValue <em>Int Value</em>}'.
2323 * <!-- begin-user-doc -->
2324 * <!-- end-user-doc -->
2325 * @return the meta object for the attribute '<em>Int Value</em>'.
2326 * @see org.eclipse.viatra.solver.language.model.problem.IntConstant#getIntValue()
2327 * @see #getIntConstant()
2328 * @generated
2329 */
2330 EAttribute getIntConstant_IntValue();
2331
2332 /**
2333 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.RealConstant <em>Real Constant</em>}'.
2334 * <!-- begin-user-doc -->
2335 * <!-- end-user-doc -->
2336 * @return the meta object for class '<em>Real Constant</em>'.
2337 * @see org.eclipse.viatra.solver.language.model.problem.RealConstant
2338 * @generated
2339 */
2340 EClass getRealConstant();
2341
2342 /**
2343 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.RealConstant#getRealValue <em>Real Value</em>}'.
2344 * <!-- begin-user-doc -->
2345 * <!-- end-user-doc -->
2346 * @return the meta object for the attribute '<em>Real Value</em>'.
2347 * @see org.eclipse.viatra.solver.language.model.problem.RealConstant#getRealValue()
2348 * @see #getRealConstant()
2349 * @generated
2350 */
2351 EAttribute getRealConstant_RealValue();
2352
2353 /**
2354 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.StringConstant <em>String Constant</em>}'.
2355 * <!-- begin-user-doc -->
2356 * <!-- end-user-doc -->
2357 * @return the meta object for class '<em>String Constant</em>'.
2358 * @see org.eclipse.viatra.solver.language.model.problem.StringConstant
2359 * @generated
2360 */
2361 EClass getStringConstant();
2362
2363 /**
2364 * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.model.problem.StringConstant#getStringValue <em>String Value</em>}'.
2365 * <!-- begin-user-doc -->
2366 * <!-- end-user-doc -->
2367 * @return the meta object for the attribute '<em>String Value</em>'.
2368 * @see org.eclipse.viatra.solver.language.model.problem.StringConstant#getStringValue()
2369 * @see #getStringConstant()
2370 * @generated
2371 */
2372 EAttribute getStringConstant_StringValue();
2373
2374 /**
2375 * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ConstantArgument <em>Constant Argument</em>}'.
2376 * <!-- begin-user-doc -->
2377 * <!-- end-user-doc -->
2378 * @return the meta object for class '<em>Constant Argument</em>'.
2379 * @see org.eclipse.viatra.solver.language.model.problem.ConstantArgument
2380 * @generated
2381 */
2382 EClass getConstantArgument();
2383
2384 /**
2385 * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.ConstantArgument#getConstant <em>Constant</em>}'.
2386 * <!-- begin-user-doc -->
2387 * <!-- end-user-doc -->
2388 * @return the meta object for the containment reference '<em>Constant</em>'.
2389 * @see org.eclipse.viatra.solver.language.model.problem.ConstantArgument#getConstant()
2390 * @see #getConstantArgument()
2391 * @generated
2392 */
2393 EReference getConstantArgument_Constant();
2394
2395 /**
2396 * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}'.
2397 * <!-- begin-user-doc -->
2398 * <!-- end-user-doc -->
2399 * @return the meta object for enum '<em>Logic Value</em>'.
2400 * @see org.eclipse.viatra.solver.language.model.problem.LogicValue
2401 * @generated
2402 */
2403 EEnum getLogicValue();
2404
2405 /**
2406 * Returns the factory that creates the instances of the model.
2407 * <!-- begin-user-doc -->
2408 * <!-- end-user-doc -->
2409 * @return the factory that creates the instances of the model.
2410 * @generated
2411 */
2412 ProblemFactory getProblemFactory();
2413
2414 /**
2415 * <!-- begin-user-doc -->
2416 * Defines literals for the meta objects that represent
2417 * <ul>
2418 * <li>each class,</li>
2419 * <li>each feature of each class,</li>
2420 * <li>each operation of each class,</li>
2421 * <li>each enum,</li>
2422 * <li>and each data type</li>
2423 * </ul>
2424 * <!-- end-user-doc -->
2425 * @generated
2426 */
2427 interface Literals {
2428 /**
2429 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl <em>Problem</em>}' class.
2430 * <!-- begin-user-doc -->
2431 * <!-- end-user-doc -->
2432 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl
2433 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getProblem()
2434 * @generated
2435 */
2436 EClass PROBLEM = eINSTANCE.getProblem();
2437
2438 /**
2439 * The meta object literal for the '<em><b>Nodes</b></em>' containment reference list feature.
2440 * <!-- begin-user-doc -->
2441 * <!-- end-user-doc -->
2442 * @generated
2443 */
2444 EReference PROBLEM__NODES = eINSTANCE.getProblem_Nodes();
2445
2446 /**
2447 * The meta object literal for the '<em><b>Statements</b></em>' containment reference list feature.
2448 * <!-- begin-user-doc -->
2449 * <!-- end-user-doc -->
2450 * @generated
2451 */
2452 EReference PROBLEM__STATEMENTS = eINSTANCE.getProblem_Statements();
2453
2454 /**
2455 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RelationImpl <em>Relation</em>}' class.
2456 * <!-- begin-user-doc -->
2457 * <!-- end-user-doc -->
2458 * @see org.eclipse.viatra.solver.language.model.problem.impl.RelationImpl
2459 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getRelation()
2460 * @generated
2461 */
2462 EClass RELATION = eINSTANCE.getRelation();
2463
2464 /**
2465 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl <em>Class Declaration</em>}' class.
2466 * <!-- begin-user-doc -->
2467 * <!-- end-user-doc -->
2468 * @see org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl
2469 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getClassDeclaration()
2470 * @generated
2471 */
2472 EClass CLASS_DECLARATION = eINSTANCE.getClassDeclaration();
2473
2474 /**
2475 * The meta object literal for the '<em><b>Abstract</b></em>' attribute feature.
2476 * <!-- begin-user-doc -->
2477 * <!-- end-user-doc -->
2478 * @generated
2479 */
2480 EAttribute CLASS_DECLARATION__ABSTRACT = eINSTANCE.getClassDeclaration_Abstract();
2481
2482 /**
2483 * The meta object literal for the '<em><b>Super Types</b></em>' reference list feature.
2484 * <!-- begin-user-doc -->
2485 * <!-- end-user-doc -->
2486 * @generated
2487 */
2488 EReference CLASS_DECLARATION__SUPER_TYPES = eINSTANCE.getClassDeclaration_SuperTypes();
2489
2490 /**
2491 * The meta object literal for the '<em><b>Reference Declarations</b></em>' containment reference list feature.
2492 * <!-- begin-user-doc -->
2493 * <!-- end-user-doc -->
2494 * @generated
2495 */
2496 EReference CLASS_DECLARATION__REFERENCE_DECLARATIONS = eINSTANCE.getClassDeclaration_ReferenceDeclarations();
2497
2498 /**
2499 * The meta object literal for the '<em><b>New Node</b></em>' containment reference feature.
2500 * <!-- begin-user-doc -->
2501 * <!-- end-user-doc -->
2502 * @generated
2503 */
2504 EReference CLASS_DECLARATION__NEW_NODE = eINSTANCE.getClassDeclaration_NewNode();
2505
2506 /**
2507 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl <em>Reference Declaration</em>}' class.
2508 * <!-- begin-user-doc -->
2509 * <!-- end-user-doc -->
2510 * @see org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl
2511 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getReferenceDeclaration()
2512 * @generated
2513 */
2514 EClass REFERENCE_DECLARATION = eINSTANCE.getReferenceDeclaration();
2515
2516 /**
2517 * The meta object literal for the '<em><b>Reference Type</b></em>' reference feature.
2518 * <!-- begin-user-doc -->
2519 * <!-- end-user-doc -->
2520 * @generated
2521 */
2522 EReference REFERENCE_DECLARATION__REFERENCE_TYPE = eINSTANCE.getReferenceDeclaration_ReferenceType();
2523
2524 /**
2525 * The meta object literal for the '<em><b>Opposite</b></em>' reference feature.
2526 * <!-- begin-user-doc -->
2527 * <!-- end-user-doc -->
2528 * @generated
2529 */
2530 EReference REFERENCE_DECLARATION__OPPOSITE = eINSTANCE.getReferenceDeclaration_Opposite();
2531
2532 /**
2533 * The meta object literal for the '<em><b>Containment</b></em>' attribute feature.
2534 * <!-- begin-user-doc -->
2535 * <!-- end-user-doc -->
2536 * @generated
2537 */
2538 EAttribute REFERENCE_DECLARATION__CONTAINMENT = eINSTANCE.getReferenceDeclaration_Containment();
2539
2540 /**
2541 * The meta object literal for the '<em><b>Multiplicity</b></em>' containment reference feature.
2542 * <!-- begin-user-doc -->
2543 * <!-- end-user-doc -->
2544 * @generated
2545 */
2546 EReference REFERENCE_DECLARATION__MULTIPLICITY = eINSTANCE.getReferenceDeclaration_Multiplicity();
2547
2548 /**
2549 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl <em>Named Element</em>}' class.
2550 * <!-- begin-user-doc -->
2551 * <!-- end-user-doc -->
2552 * @see org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl
2553 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNamedElement()
2554 * @generated
2555 */
2556 EClass NAMED_ELEMENT = eINSTANCE.getNamedElement();
2557
2558 /**
2559 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
2560 * <!-- begin-user-doc -->
2561 * <!-- end-user-doc -->
2562 * @generated
2563 */
2564 EAttribute NAMED_ELEMENT__NAME = eINSTANCE.getNamedElement_Name();
2565
2566 /**
2567 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.PredicateDefinitionImpl <em>Predicate Definition</em>}' class.
2568 * <!-- begin-user-doc -->
2569 * <!-- end-user-doc -->
2570 * @see org.eclipse.viatra.solver.language.model.problem.impl.PredicateDefinitionImpl
2571 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getPredicateDefinition()
2572 * @generated
2573 */
2574 EClass PREDICATE_DEFINITION = eINSTANCE.getPredicateDefinition();
2575
2576 /**
2577 * The meta object literal for the '<em><b>Error</b></em>' attribute feature.
2578 * <!-- begin-user-doc -->
2579 * <!-- end-user-doc -->
2580 * @generated
2581 */
2582 EAttribute PREDICATE_DEFINITION__ERROR = eINSTANCE.getPredicateDefinition_Error();
2583
2584 /**
2585 * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
2586 * <!-- begin-user-doc -->
2587 * <!-- end-user-doc -->
2588 * @generated
2589 */
2590 EReference PREDICATE_DEFINITION__PARAMETERS = eINSTANCE.getPredicateDefinition_Parameters();
2591
2592 /**
2593 * The meta object literal for the '<em><b>Bodies</b></em>' containment reference list feature.
2594 * <!-- begin-user-doc -->
2595 * <!-- end-user-doc -->
2596 * @generated
2597 */
2598 EReference PREDICATE_DEFINITION__BODIES = eINSTANCE.getPredicateDefinition_Bodies();
2599
2600 /**
2601 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ParameterImpl <em>Parameter</em>}' class.
2602 * <!-- begin-user-doc -->
2603 * <!-- end-user-doc -->
2604 * @see org.eclipse.viatra.solver.language.model.problem.impl.ParameterImpl
2605 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getParameter()
2606 * @generated
2607 */
2608 EClass PARAMETER = eINSTANCE.getParameter();
2609
2610 /**
2611 * The meta object literal for the '<em><b>Parameter Type</b></em>' reference feature.
2612 * <!-- begin-user-doc -->
2613 * <!-- end-user-doc -->
2614 * @generated
2615 */
2616 EReference PARAMETER__PARAMETER_TYPE = eINSTANCE.getParameter_ParameterType();
2617
2618 /**
2619 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableImpl <em>Variable</em>}' class.
2620 * <!-- begin-user-doc -->
2621 * <!-- end-user-doc -->
2622 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableImpl
2623 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariable()
2624 * @generated
2625 */
2626 EClass VARIABLE = eINSTANCE.getVariable();
2627
2628 /**
2629 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConjunctionImpl <em>Conjunction</em>}' class.
2630 * <!-- begin-user-doc -->
2631 * <!-- end-user-doc -->
2632 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConjunctionImpl
2633 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConjunction()
2634 * @generated
2635 */
2636 EClass CONJUNCTION = eINSTANCE.getConjunction();
2637
2638 /**
2639 * The meta object literal for the '<em><b>Literals</b></em>' containment reference list feature.
2640 * <!-- begin-user-doc -->
2641 * <!-- end-user-doc -->
2642 * @generated
2643 */
2644 EReference CONJUNCTION__LITERALS = eINSTANCE.getConjunction_Literals();
2645
2646 /**
2647 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.LiteralImpl <em>Literal</em>}' class.
2648 * <!-- begin-user-doc -->
2649 * <!-- end-user-doc -->
2650 * @see org.eclipse.viatra.solver.language.model.problem.impl.LiteralImpl
2651 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLiteral()
2652 * @generated
2653 */
2654 EClass LITERAL = eINSTANCE.getLiteral();
2655
2656 /**
2657 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl <em>Atom</em>}' class.
2658 * <!-- begin-user-doc -->
2659 * <!-- end-user-doc -->
2660 * @see org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl
2661 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getAtom()
2662 * @generated
2663 */
2664 EClass ATOM = eINSTANCE.getAtom();
2665
2666 /**
2667 * The meta object literal for the '<em><b>Relation</b></em>' reference feature.
2668 * <!-- begin-user-doc -->
2669 * <!-- end-user-doc -->
2670 * @generated
2671 */
2672 EReference ATOM__RELATION = eINSTANCE.getAtom_Relation();
2673
2674 /**
2675 * The meta object literal for the '<em><b>Arguments</b></em>' containment reference list feature.
2676 * <!-- begin-user-doc -->
2677 * <!-- end-user-doc -->
2678 * @generated
2679 */
2680 EReference ATOM__ARGUMENTS = eINSTANCE.getAtom_Arguments();
2681
2682 /**
2683 * The meta object literal for the '<em><b>Transitive Closure</b></em>' attribute feature.
2684 * <!-- begin-user-doc -->
2685 * <!-- end-user-doc -->
2686 * @generated
2687 */
2688 EAttribute ATOM__TRANSITIVE_CLOSURE = eINSTANCE.getAtom_TransitiveClosure();
2689
2690 /**
2691 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ImplicitVariableImpl <em>Implicit Variable</em>}' class.
2692 * <!-- begin-user-doc -->
2693 * <!-- end-user-doc -->
2694 * @see org.eclipse.viatra.solver.language.model.problem.impl.ImplicitVariableImpl
2695 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getImplicitVariable()
2696 * @generated
2697 */
2698 EClass IMPLICIT_VARIABLE = eINSTANCE.getImplicitVariable();
2699
2700 /**
2701 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NegativeLiteralImpl <em>Negative Literal</em>}' class.
2702 * <!-- begin-user-doc -->
2703 * <!-- end-user-doc -->
2704 * @see org.eclipse.viatra.solver.language.model.problem.impl.NegativeLiteralImpl
2705 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNegativeLiteral()
2706 * @generated
2707 */
2708 EClass NEGATIVE_LITERAL = eINSTANCE.getNegativeLiteral();
2709
2710 /**
2711 * The meta object literal for the '<em><b>Atom</b></em>' containment reference feature.
2712 * <!-- begin-user-doc -->
2713 * <!-- end-user-doc -->
2714 * @generated
2715 */
2716 EReference NEGATIVE_LITERAL__ATOM = eINSTANCE.getNegativeLiteral_Atom();
2717
2718 /**
2719 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier <em>Existential Quantifier</em>}' class.
2720 * <!-- begin-user-doc -->
2721 * <!-- end-user-doc -->
2722 * @see org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier
2723 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getExistentialQuantifier()
2724 * @generated
2725 */
2726 EClass EXISTENTIAL_QUANTIFIER = eINSTANCE.getExistentialQuantifier();
2727
2728 /**
2729 * The meta object literal for the '<em><b>Implicit Variables</b></em>' containment reference list feature.
2730 * <!-- begin-user-doc -->
2731 * <!-- end-user-doc -->
2732 * @generated
2733 */
2734 EReference EXISTENTIAL_QUANTIFIER__IMPLICIT_VARIABLES = eINSTANCE.getExistentialQuantifier_ImplicitVariables();
2735
2736 /**
2737 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.AssertionImpl <em>Assertion</em>}' class.
2738 * <!-- begin-user-doc -->
2739 * <!-- end-user-doc -->
2740 * @see org.eclipse.viatra.solver.language.model.problem.impl.AssertionImpl
2741 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getAssertion()
2742 * @generated
2743 */
2744 EClass ASSERTION = eINSTANCE.getAssertion();
2745
2746 /**
2747 * The meta object literal for the '<em><b>Relation</b></em>' reference feature.
2748 * <!-- begin-user-doc -->
2749 * <!-- end-user-doc -->
2750 * @generated
2751 */
2752 EReference ASSERTION__RELATION = eINSTANCE.getAssertion_Relation();
2753
2754 /**
2755 * The meta object literal for the '<em><b>Arguments</b></em>' containment reference list feature.
2756 * <!-- begin-user-doc -->
2757 * <!-- end-user-doc -->
2758 * @generated
2759 */
2760 EReference ASSERTION__ARGUMENTS = eINSTANCE.getAssertion_Arguments();
2761
2762 /**
2763 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
2764 * <!-- begin-user-doc -->
2765 * <!-- end-user-doc -->
2766 * @generated
2767 */
2768 EAttribute ASSERTION__VALUE = eINSTANCE.getAssertion_Value();
2769
2770 /**
2771 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeImpl <em>Node</em>}' class.
2772 * <!-- begin-user-doc -->
2773 * <!-- end-user-doc -->
2774 * @see org.eclipse.viatra.solver.language.model.problem.impl.NodeImpl
2775 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNode()
2776 * @generated
2777 */
2778 EClass NODE = eINSTANCE.getNode();
2779
2780 /**
2781 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ScopeDeclarationImpl <em>Scope Declaration</em>}' class.
2782 * <!-- begin-user-doc -->
2783 * <!-- end-user-doc -->
2784 * @see org.eclipse.viatra.solver.language.model.problem.impl.ScopeDeclarationImpl
2785 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getScopeDeclaration()
2786 * @generated
2787 */
2788 EClass SCOPE_DECLARATION = eINSTANCE.getScopeDeclaration();
2789
2790 /**
2791 * The meta object literal for the '<em><b>Type Scopes</b></em>' containment reference list feature.
2792 * <!-- begin-user-doc -->
2793 * <!-- end-user-doc -->
2794 * @generated
2795 */
2796 EReference SCOPE_DECLARATION__TYPE_SCOPES = eINSTANCE.getScopeDeclaration_TypeScopes();
2797
2798 /**
2799 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.Statement <em>Statement</em>}' class.
2800 * <!-- begin-user-doc -->
2801 * <!-- end-user-doc -->
2802 * @see org.eclipse.viatra.solver.language.model.problem.Statement
2803 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getStatement()
2804 * @generated
2805 */
2806 EClass STATEMENT = eINSTANCE.getStatement();
2807
2808 /**
2809 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.TypeScopeImpl <em>Type Scope</em>}' class.
2810 * <!-- begin-user-doc -->
2811 * <!-- end-user-doc -->
2812 * @see org.eclipse.viatra.solver.language.model.problem.impl.TypeScopeImpl
2813 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getTypeScope()
2814 * @generated
2815 */
2816 EClass TYPE_SCOPE = eINSTANCE.getTypeScope();
2817
2818 /**
2819 * The meta object literal for the '<em><b>Target Type</b></em>' reference feature.
2820 * <!-- begin-user-doc -->
2821 * <!-- end-user-doc -->
2822 * @generated
2823 */
2824 EReference TYPE_SCOPE__TARGET_TYPE = eINSTANCE.getTypeScope_TargetType();
2825
2826 /**
2827 * The meta object literal for the '<em><b>Increment</b></em>' attribute feature.
2828 * <!-- begin-user-doc -->
2829 * <!-- end-user-doc -->
2830 * @generated
2831 */
2832 EAttribute TYPE_SCOPE__INCREMENT = eINSTANCE.getTypeScope_Increment();
2833
2834 /**
2835 * The meta object literal for the '<em><b>Multiplicity</b></em>' containment reference feature.
2836 * <!-- begin-user-doc -->
2837 * <!-- end-user-doc -->
2838 * @generated
2839 */
2840 EReference TYPE_SCOPE__MULTIPLICITY = eINSTANCE.getTypeScope_Multiplicity();
2841
2842 /**
2843 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.MultiplicityImpl <em>Multiplicity</em>}' class.
2844 * <!-- begin-user-doc -->
2845 * <!-- end-user-doc -->
2846 * @see org.eclipse.viatra.solver.language.model.problem.impl.MultiplicityImpl
2847 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getMultiplicity()
2848 * @generated
2849 */
2850 EClass MULTIPLICITY = eINSTANCE.getMultiplicity();
2851
2852 /**
2853 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RangeMultiplicityImpl <em>Range Multiplicity</em>}' class.
2854 * <!-- begin-user-doc -->
2855 * <!-- end-user-doc -->
2856 * @see org.eclipse.viatra.solver.language.model.problem.impl.RangeMultiplicityImpl
2857 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getRangeMultiplicity()
2858 * @generated
2859 */
2860 EClass RANGE_MULTIPLICITY = eINSTANCE.getRangeMultiplicity();
2861
2862 /**
2863 * The meta object literal for the '<em><b>Lower Bound</b></em>' attribute feature.
2864 * <!-- begin-user-doc -->
2865 * <!-- end-user-doc -->
2866 * @generated
2867 */
2868 EAttribute RANGE_MULTIPLICITY__LOWER_BOUND = eINSTANCE.getRangeMultiplicity_LowerBound();
2869
2870 /**
2871 * The meta object literal for the '<em><b>Upper Bound</b></em>' attribute feature.
2872 * <!-- begin-user-doc -->
2873 * <!-- end-user-doc -->
2874 * @generated
2875 */
2876 EAttribute RANGE_MULTIPLICITY__UPPER_BOUND = eINSTANCE.getRangeMultiplicity_UpperBound();
2877
2878 /**
2879 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ExactMultiplicityImpl <em>Exact Multiplicity</em>}' class.
2880 * <!-- begin-user-doc -->
2881 * <!-- end-user-doc -->
2882 * @see org.eclipse.viatra.solver.language.model.problem.impl.ExactMultiplicityImpl
2883 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getExactMultiplicity()
2884 * @generated
2885 */
2886 EClass EXACT_MULTIPLICITY = eINSTANCE.getExactMultiplicity();
2887
2888 /**
2889 * The meta object literal for the '<em><b>Exact Value</b></em>' attribute feature.
2890 * <!-- begin-user-doc -->
2891 * <!-- end-user-doc -->
2892 * @generated
2893 */
2894 EAttribute EXACT_MULTIPLICITY__EXACT_VALUE = eINSTANCE.getExactMultiplicity_ExactValue();
2895
2896 /**
2897 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl <em>Unbounded Multiplicity</em>}' class.
2898 * <!-- begin-user-doc -->
2899 * <!-- end-user-doc -->
2900 * @see org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl
2901 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getUnboundedMultiplicity()
2902 * @generated
2903 */
2904 EClass UNBOUNDED_MULTIPLICITY = eINSTANCE.getUnboundedMultiplicity();
2905
2906 /**
2907 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeArgumentImpl <em>Variable Or Node Argument</em>}' class.
2908 * <!-- begin-user-doc -->
2909 * <!-- end-user-doc -->
2910 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeArgumentImpl
2911 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariableOrNodeArgument()
2912 * @generated
2913 */
2914 EClass VARIABLE_OR_NODE_ARGUMENT = eINSTANCE.getVariableOrNodeArgument();
2915
2916 /**
2917 * The meta object literal for the '<em><b>Variable Or Node</b></em>' reference feature.
2918 * <!-- begin-user-doc -->
2919 * <!-- end-user-doc -->
2920 * @generated
2921 */
2922 EReference VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE = eINSTANCE.getVariableOrNodeArgument_VariableOrNode();
2923
2924 /**
2925 * The meta object literal for the '<em><b>Singleton Variable</b></em>' containment reference feature.
2926 * <!-- begin-user-doc -->
2927 * <!-- end-user-doc -->
2928 * @generated
2929 */
2930 EReference VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE = eINSTANCE
2931 .getVariableOrNodeArgument_SingletonVariable();
2932
2933 /**
2934 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl <em>Argument</em>}' class.
2935 * <!-- begin-user-doc -->
2936 * <!-- end-user-doc -->
2937 * @see org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl
2938 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getArgument()
2939 * @generated
2940 */
2941 EClass ARGUMENT = eINSTANCE.getArgument();
2942
2943 /**
2944 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeAssertionArgumentImpl <em>Node Assertion Argument</em>}' class.
2945 * <!-- begin-user-doc -->
2946 * <!-- end-user-doc -->
2947 * @see org.eclipse.viatra.solver.language.model.problem.impl.NodeAssertionArgumentImpl
2948 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNodeAssertionArgument()
2949 * @generated
2950 */
2951 EClass NODE_ASSERTION_ARGUMENT = eINSTANCE.getNodeAssertionArgument();
2952
2953 /**
2954 * The meta object literal for the '<em><b>Node</b></em>' reference feature.
2955 * <!-- begin-user-doc -->
2956 * <!-- end-user-doc -->
2957 * @generated
2958 */
2959 EReference NODE_ASSERTION_ARGUMENT__NODE = eINSTANCE.getNodeAssertionArgument_Node();
2960
2961 /**
2962 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.AssertionArgumentImpl <em>Assertion Argument</em>}' class.
2963 * <!-- begin-user-doc -->
2964 * <!-- end-user-doc -->
2965 * @see org.eclipse.viatra.solver.language.model.problem.impl.AssertionArgumentImpl
2966 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getAssertionArgument()
2967 * @generated
2968 */
2969 EClass ASSERTION_ARGUMENT = eINSTANCE.getAssertionArgument();
2970
2971 /**
2972 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConstantAssertionArgumentImpl <em>Constant Assertion Argument</em>}' class.
2973 * <!-- begin-user-doc -->
2974 * <!-- end-user-doc -->
2975 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConstantAssertionArgumentImpl
2976 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConstantAssertionArgument()
2977 * @generated
2978 */
2979 EClass CONSTANT_ASSERTION_ARGUMENT = eINSTANCE.getConstantAssertionArgument();
2980
2981 /**
2982 * The meta object literal for the '<em><b>Constant</b></em>' containment reference feature.
2983 * <!-- begin-user-doc -->
2984 * <!-- end-user-doc -->
2985 * @generated
2986 */
2987 EReference CONSTANT_ASSERTION_ARGUMENT__CONSTANT = eINSTANCE.getConstantAssertionArgument_Constant();
2988
2989 /**
2990 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeValueAssertionImpl <em>Node Value Assertion</em>}' class.
2991 * <!-- begin-user-doc -->
2992 * <!-- end-user-doc -->
2993 * @see org.eclipse.viatra.solver.language.model.problem.impl.NodeValueAssertionImpl
2994 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNodeValueAssertion()
2995 * @generated
2996 */
2997 EClass NODE_VALUE_ASSERTION = eINSTANCE.getNodeValueAssertion();
2998
2999 /**
3000 * The meta object literal for the '<em><b>Node</b></em>' reference feature.
3001 * <!-- begin-user-doc -->
3002 * <!-- end-user-doc -->
3003 * @generated
3004 */
3005 EReference NODE_VALUE_ASSERTION__NODE = eINSTANCE.getNodeValueAssertion_Node();
3006
3007 /**
3008 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
3009 * <!-- begin-user-doc -->
3010 * <!-- end-user-doc -->
3011 * @generated
3012 */
3013 EReference NODE_VALUE_ASSERTION__VALUE = eINSTANCE.getNodeValueAssertion_Value();
3014
3015 /**
3016 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl <em>Enum Declaration</em>}' class.
3017 * <!-- begin-user-doc -->
3018 * <!-- end-user-doc -->
3019 * @see org.eclipse.viatra.solver.language.model.problem.impl.EnumDeclarationImpl
3020 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getEnumDeclaration()
3021 * @generated
3022 */
3023 EClass ENUM_DECLARATION = eINSTANCE.getEnumDeclaration();
3024
3025 /**
3026 * The meta object literal for the '<em><b>Literals</b></em>' containment reference list feature.
3027 * <!-- begin-user-doc -->
3028 * <!-- end-user-doc -->
3029 * @generated
3030 */
3031 EReference ENUM_DECLARATION__LITERALS = eINSTANCE.getEnumDeclaration_Literals();
3032
3033 /**
3034 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl <em>Variable Or Node</em>}' class.
3035 * <!-- begin-user-doc -->
3036 * <!-- end-user-doc -->
3037 * @see org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeImpl
3038 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getVariableOrNode()
3039 * @generated
3040 */
3041 EClass VARIABLE_OR_NODE = eINSTANCE.getVariableOrNode();
3042
3043 /**
3044 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConstantImpl <em>Constant</em>}' class.
3045 * <!-- begin-user-doc -->
3046 * <!-- end-user-doc -->
3047 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConstantImpl
3048 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConstant()
3049 * @generated
3050 */
3051 EClass CONSTANT = eINSTANCE.getConstant();
3052
3053 /**
3054 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.IntConstantImpl <em>Int Constant</em>}' class.
3055 * <!-- begin-user-doc -->
3056 * <!-- end-user-doc -->
3057 * @see org.eclipse.viatra.solver.language.model.problem.impl.IntConstantImpl
3058 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getIntConstant()
3059 * @generated
3060 */
3061 EClass INT_CONSTANT = eINSTANCE.getIntConstant();
3062
3063 /**
3064 * The meta object literal for the '<em><b>Int Value</b></em>' attribute feature.
3065 * <!-- begin-user-doc -->
3066 * <!-- end-user-doc -->
3067 * @generated
3068 */
3069 EAttribute INT_CONSTANT__INT_VALUE = eINSTANCE.getIntConstant_IntValue();
3070
3071 /**
3072 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RealConstantImpl <em>Real Constant</em>}' class.
3073 * <!-- begin-user-doc -->
3074 * <!-- end-user-doc -->
3075 * @see org.eclipse.viatra.solver.language.model.problem.impl.RealConstantImpl
3076 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getRealConstant()
3077 * @generated
3078 */
3079 EClass REAL_CONSTANT = eINSTANCE.getRealConstant();
3080
3081 /**
3082 * The meta object literal for the '<em><b>Real Value</b></em>' attribute feature.
3083 * <!-- begin-user-doc -->
3084 * <!-- end-user-doc -->
3085 * @generated
3086 */
3087 EAttribute REAL_CONSTANT__REAL_VALUE = eINSTANCE.getRealConstant_RealValue();
3088
3089 /**
3090 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.StringConstantImpl <em>String Constant</em>}' class.
3091 * <!-- begin-user-doc -->
3092 * <!-- end-user-doc -->
3093 * @see org.eclipse.viatra.solver.language.model.problem.impl.StringConstantImpl
3094 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getStringConstant()
3095 * @generated
3096 */
3097 EClass STRING_CONSTANT = eINSTANCE.getStringConstant();
3098
3099 /**
3100 * The meta object literal for the '<em><b>String Value</b></em>' attribute feature.
3101 * <!-- begin-user-doc -->
3102 * <!-- end-user-doc -->
3103 * @generated
3104 */
3105 EAttribute STRING_CONSTANT__STRING_VALUE = eINSTANCE.getStringConstant_StringValue();
3106
3107 /**
3108 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ConstantArgumentImpl <em>Constant Argument</em>}' class.
3109 * <!-- begin-user-doc -->
3110 * <!-- end-user-doc -->
3111 * @see org.eclipse.viatra.solver.language.model.problem.impl.ConstantArgumentImpl
3112 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getConstantArgument()
3113 * @generated
3114 */
3115 EClass CONSTANT_ARGUMENT = eINSTANCE.getConstantArgument();
3116
3117 /**
3118 * The meta object literal for the '<em><b>Constant</b></em>' containment reference feature.
3119 * <!-- begin-user-doc -->
3120 * <!-- end-user-doc -->
3121 * @generated
3122 */
3123 EReference CONSTANT_ARGUMENT__CONSTANT = eINSTANCE.getConstantArgument_Constant();
3124
3125 /**
3126 * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum.
3127 * <!-- begin-user-doc -->
3128 * <!-- end-user-doc -->
3129 * @see org.eclipse.viatra.solver.language.model.problem.LogicValue
3130 * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLogicValue()
3131 * @generated
3132 */
3133 EEnum LOGIC_VALUE = eINSTANCE.getLogicValue();
3134
3135 }
3136
3137} //ProblemPackage
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RangeMultiplicity.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RangeMultiplicity.java
deleted file mode 100644
index 65bcc440..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RangeMultiplicity.java
+++ /dev/null
@@ -1,69 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Range 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.model.problem.RangeMultiplicity#getLowerBound <em>Lower Bound</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getUpperBound <em>Upper Bound</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getRangeMultiplicity()
19 * @model
20 * @generated
21 */
22public interface RangeMultiplicity extends Multiplicity {
23 /**
24 * Returns the value of the '<em><b>Lower Bound</b></em>' attribute.
25 * The default value is <code>"0"</code>.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return the value of the '<em>Lower Bound</em>' attribute.
29 * @see #setLowerBound(int)
30 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getRangeMultiplicity_LowerBound()
31 * @model default="0"
32 * @generated
33 */
34 int getLowerBound();
35
36 /**
37 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getLowerBound <em>Lower Bound</em>}' attribute.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @param value the new value of the '<em>Lower Bound</em>' attribute.
41 * @see #getLowerBound()
42 * @generated
43 */
44 void setLowerBound(int value);
45
46 /**
47 * Returns the value of the '<em><b>Upper Bound</b></em>' attribute.
48 * The default value is <code>"-1"</code>.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @return the value of the '<em>Upper Bound</em>' attribute.
52 * @see #setUpperBound(int)
53 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getRangeMultiplicity_UpperBound()
54 * @model default="-1"
55 * @generated
56 */
57 int getUpperBound();
58
59 /**
60 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity#getUpperBound <em>Upper Bound</em>}' attribute.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @param value the new value of the '<em>Upper Bound</em>' attribute.
64 * @see #getUpperBound()
65 * @generated
66 */
67 void setUpperBound(int value);
68
69} // RangeMultiplicity
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RealConstant.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RealConstant.java
deleted file mode 100644
index 7ece8fb9..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/RealConstant.java
+++ /dev/null
@@ -1,45 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Real Constant</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.model.problem.RealConstant#getRealValue <em>Real Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getRealConstant()
18 * @model
19 * @generated
20 */
21public interface RealConstant extends Constant {
22 /**
23 * Returns the value of the '<em><b>Real Value</b></em>' attribute.
24 * The default value is <code>"0.0"</code>.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Real Value</em>' attribute.
28 * @see #setRealValue(double)
29 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getRealConstant_RealValue()
30 * @model default="0.0"
31 * @generated
32 */
33 double getRealValue();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.RealConstant#getRealValue <em>Real Value</em>}' attribute.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Real Value</em>' attribute.
40 * @see #getRealValue()
41 * @generated
42 */
43 void setRealValue(double value);
44
45} // RealConstant
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java
deleted file mode 100644
index 38650d66..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ReferenceDeclaration.java
+++ /dev/null
@@ -1,113 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Reference 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.model.problem.ReferenceDeclaration#getReferenceType <em>Reference Type</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getOpposite <em>Opposite</em>}</li>
16 * <li>{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#isContainment <em>Containment</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getMultiplicity <em>Multiplicity</em>}</li>
18 * </ul>
19 *
20 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration()
21 * @model
22 * @generated
23 */
24public interface ReferenceDeclaration extends Relation {
25 /**
26 * Returns the value of the '<em><b>Reference Type</b></em>' reference.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Reference Type</em>' reference.
30 * @see #setReferenceType(Relation)
31 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_ReferenceType()
32 * @model
33 * @generated
34 */
35 Relation getReferenceType();
36
37 /**
38 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getReferenceType <em>Reference Type</em>}' reference.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @param value the new value of the '<em>Reference Type</em>' reference.
42 * @see #getReferenceType()
43 * @generated
44 */
45 void setReferenceType(Relation value);
46
47 /**
48 * Returns the value of the '<em><b>Opposite</b></em>' reference.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @return the value of the '<em>Opposite</em>' reference.
52 * @see #setOpposite(ReferenceDeclaration)
53 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_Opposite()
54 * @model
55 * @generated
56 */
57 ReferenceDeclaration getOpposite();
58
59 /**
60 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getOpposite <em>Opposite</em>}' reference.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @param value the new value of the '<em>Opposite</em>' reference.
64 * @see #getOpposite()
65 * @generated
66 */
67 void setOpposite(ReferenceDeclaration value);
68
69 /**
70 * Returns the value of the '<em><b>Containment</b></em>' attribute.
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @return the value of the '<em>Containment</em>' attribute.
74 * @see #setContainment(boolean)
75 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_Containment()
76 * @model
77 * @generated
78 */
79 boolean isContainment();
80
81 /**
82 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#isContainment <em>Containment</em>}' attribute.
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @param value the new value of the '<em>Containment</em>' attribute.
86 * @see #isContainment()
87 * @generated
88 */
89 void setContainment(boolean value);
90
91 /**
92 * Returns the value of the '<em><b>Multiplicity</b></em>' containment reference.
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @return the value of the '<em>Multiplicity</em>' containment reference.
96 * @see #setMultiplicity(Multiplicity)
97 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getReferenceDeclaration_Multiplicity()
98 * @model containment="true"
99 * @generated
100 */
101 Multiplicity getMultiplicity();
102
103 /**
104 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration#getMultiplicity <em>Multiplicity</em>}' containment reference.
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @param value the new value of the '<em>Multiplicity</em>' containment reference.
108 * @see #getMultiplicity()
109 * @generated
110 */
111 void setMultiplicity(Multiplicity value);
112
113} // ReferenceDeclaration
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Relation.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Relation.java
deleted file mode 100644
index 2754e9d0..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Relation.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage#getRelation()
12 * @model abstract="true"
13 * @generated
14 */
15public interface Relation extends NamedElement {
16} // Relation
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ScopeDeclaration.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ScopeDeclaration.java
deleted file mode 100644
index f728589d..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ScopeDeclaration.java
+++ /dev/null
@@ -1,36 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Scope 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.model.problem.ScopeDeclaration#getTypeScopes <em>Type Scopes</em>}</li>
17 * </ul>
18 *
19 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getScopeDeclaration()
20 * @model
21 * @generated
22 */
23public interface ScopeDeclaration extends Statement {
24 /**
25 * Returns the value of the '<em><b>Type Scopes</b></em>' containment reference list.
26 * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.TypeScope}.
27 * <!-- begin-user-doc -->
28 * <!-- end-user-doc -->
29 * @return the value of the '<em>Type Scopes</em>' containment reference list.
30 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getScopeDeclaration_TypeScopes()
31 * @model containment="true"
32 * @generated
33 */
34 EList<TypeScope> getTypeScopes();
35
36} // ScopeDeclaration
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Statement.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Statement.java
deleted file mode 100644
index 90303639..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Statement.java
+++ /dev/null
@@ -1,18 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage#getStatement()
14 * @model interface="true" abstract="true"
15 * @generated
16 */
17public interface Statement extends EObject {
18} // Statement
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/StringConstant.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/StringConstant.java
deleted file mode 100644
index 5a6c6ec8..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/StringConstant.java
+++ /dev/null
@@ -1,44 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>String Constant</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.model.problem.StringConstant#getStringValue <em>String Value</em>}</li>
15 * </ul>
16 *
17 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getStringConstant()
18 * @model
19 * @generated
20 */
21public interface StringConstant extends Constant {
22 /**
23 * Returns the value of the '<em><b>String Value</b></em>' attribute.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @return the value of the '<em>String Value</em>' attribute.
27 * @see #setStringValue(String)
28 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getStringConstant_StringValue()
29 * @model
30 * @generated
31 */
32 String getStringValue();
33
34 /**
35 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.StringConstant#getStringValue <em>String Value</em>}' attribute.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @param value the new value of the '<em>String Value</em>' attribute.
39 * @see #getStringValue()
40 * @generated
41 */
42 void setStringValue(String value);
43
44} // StringConstant
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/TypeScope.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/TypeScope.java
deleted file mode 100644
index 76a95dd5..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/TypeScope.java
+++ /dev/null
@@ -1,92 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Type Scope</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.model.problem.TypeScope#getTargetType <em>Target Type</em>}</li>
17 * <li>{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#isIncrement <em>Increment</em>}</li>
18 * <li>{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#getMultiplicity <em>Multiplicity</em>}</li>
19 * </ul>
20 *
21 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getTypeScope()
22 * @model
23 * @generated
24 */
25public interface TypeScope extends EObject {
26 /**
27 * Returns the value of the '<em><b>Target Type</b></em>' reference.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @return the value of the '<em>Target Type</em>' reference.
31 * @see #setTargetType(ClassDeclaration)
32 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getTypeScope_TargetType()
33 * @model
34 * @generated
35 */
36 ClassDeclaration getTargetType();
37
38 /**
39 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#getTargetType <em>Target Type</em>}' reference.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @param value the new value of the '<em>Target Type</em>' reference.
43 * @see #getTargetType()
44 * @generated
45 */
46 void setTargetType(ClassDeclaration value);
47
48 /**
49 * Returns the value of the '<em><b>Increment</b></em>' attribute.
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @return the value of the '<em>Increment</em>' attribute.
53 * @see #setIncrement(boolean)
54 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getTypeScope_Increment()
55 * @model
56 * @generated
57 */
58 boolean isIncrement();
59
60 /**
61 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#isIncrement <em>Increment</em>}' attribute.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @param value the new value of the '<em>Increment</em>' attribute.
65 * @see #isIncrement()
66 * @generated
67 */
68 void setIncrement(boolean value);
69
70 /**
71 * Returns the value of the '<em><b>Multiplicity</b></em>' containment reference.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @return the value of the '<em>Multiplicity</em>' containment reference.
75 * @see #setMultiplicity(Multiplicity)
76 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getTypeScope_Multiplicity()
77 * @model containment="true"
78 * @generated
79 */
80 Multiplicity getMultiplicity();
81
82 /**
83 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope#getMultiplicity <em>Multiplicity</em>}' containment reference.
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @param value the new value of the '<em>Multiplicity</em>' containment reference.
87 * @see #getMultiplicity()
88 * @generated
89 */
90 void setMultiplicity(Multiplicity value);
91
92} // TypeScope
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java
deleted file mode 100644
index 725311a4..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
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.model.problem.ProblemPackage#getUnboundedMultiplicity()
12 * @model
13 * @generated
14 */
15public interface UnboundedMultiplicity extends Multiplicity {
16} // UnboundedMultiplicity
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java
deleted file mode 100644
index cba5740c..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Variable.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Variable</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getVariable()
12 * @model abstract="true"
13 * @generated
14 */
15public interface Variable extends VariableOrNode {
16} // Variable
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java
deleted file mode 100644
index 65c315e2..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNode.java
+++ /dev/null
@@ -1,16 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Variable Or Node</b></em>'.
8 * <!-- end-user-doc -->
9 *
10 *
11 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getVariableOrNode()
12 * @model abstract="true"
13 * @generated
14 */
15public interface VariableOrNode extends NamedElement {
16} // VariableOrNode
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNodeArgument.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNodeArgument.java
deleted file mode 100644
index 02032585..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/VariableOrNodeArgument.java
+++ /dev/null
@@ -1,67 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem;
4
5/**
6 * <!-- begin-user-doc -->
7 * A representation of the model object '<em><b>Variable Or Node 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.model.problem.VariableOrNodeArgument#getVariableOrNode <em>Variable Or Node</em>}</li>
15 * <li>{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getSingletonVariable <em>Singleton Variable</em>}</li>
16 * </ul>
17 *
18 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getVariableOrNodeArgument()
19 * @model
20 * @generated
21 */
22public interface VariableOrNodeArgument extends Argument {
23 /**
24 * Returns the value of the '<em><b>Variable Or Node</b></em>' reference.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @return the value of the '<em>Variable Or Node</em>' reference.
28 * @see #setVariableOrNode(VariableOrNode)
29 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getVariableOrNodeArgument_VariableOrNode()
30 * @model
31 * @generated
32 */
33 VariableOrNode getVariableOrNode();
34
35 /**
36 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getVariableOrNode <em>Variable Or Node</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @param value the new value of the '<em>Variable Or Node</em>' reference.
40 * @see #getVariableOrNode()
41 * @generated
42 */
43 void setVariableOrNode(VariableOrNode value);
44
45 /**
46 * Returns the value of the '<em><b>Singleton Variable</b></em>' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @return the value of the '<em>Singleton Variable</em>' containment reference.
50 * @see #setSingletonVariable(ImplicitVariable)
51 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getVariableOrNodeArgument_SingletonVariable()
52 * @model containment="true"
53 * @generated
54 */
55 ImplicitVariable getSingletonVariable();
56
57 /**
58 * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument#getSingletonVariable <em>Singleton Variable</em>}' containment reference.
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @param value the new value of the '<em>Singleton Variable</em>' containment reference.
62 * @see #getSingletonVariable()
63 * @generated
64 */
65 void setSingletonVariable(ImplicitVariable value);
66
67} // VariableOrNodeArgument
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java
deleted file mode 100644
index 68b23c09..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java
+++ /dev/null
@@ -1,38 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
7
8import org.eclipse.viatra.solver.language.model.problem.Argument;
9import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
10
11/**
12 * <!-- begin-user-doc -->
13 * An implementation of the model object '<em><b>Argument</b></em>'.
14 * <!-- end-user-doc -->
15 *
16 * @generated
17 */
18public abstract class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument {
19 /**
20 * <!-- begin-user-doc -->
21 * <!-- end-user-doc -->
22 * @generated
23 */
24 protected ArgumentImpl() {
25 super();
26 }
27
28 /**
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @generated
32 */
33 @Override
34 protected EClass eStaticClass() {
35 return ProblemPackage.Literals.ARGUMENT;
36 }
37
38} //ArgumentImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionArgumentImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionArgumentImpl.java
deleted file mode 100644
index af41b241..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionArgumentImpl.java
+++ /dev/null
@@ -1,39 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.model.problem.AssertionArgument;
10import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
11
12/**
13 * <!-- begin-user-doc -->
14 * An implementation of the model object '<em><b>Assertion Argument</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * @generated
18 */
19public abstract class AssertionArgumentImpl extends MinimalEObjectImpl.Container implements AssertionArgument {
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected AssertionArgumentImpl() {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass() {
36 return ProblemPackage.Literals.ASSERTION_ARGUMENT;
37 }
38
39} //AssertionArgumentImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionImpl.java
deleted file mode 100644
index 2567d57b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AssertionImpl.java
+++ /dev/null
@@ -1,288 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8
9import org.eclipse.emf.common.notify.NotificationChain;
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;
20import org.eclipse.viatra.solver.language.model.problem.Assertion;
21import org.eclipse.viatra.solver.language.model.problem.AssertionArgument;
22import org.eclipse.viatra.solver.language.model.problem.LogicValue;
23import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
24import org.eclipse.viatra.solver.language.model.problem.Relation;
25
26/**
27 * <!-- begin-user-doc -->
28 * An implementation of the model object '<em><b>Assertion</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.model.problem.impl.AssertionImpl#getRelation <em>Relation</em>}</li>
35 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AssertionImpl#getValue <em>Value</em>}</li>
36 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AssertionImpl#getArguments <em>Arguments</em>}</li>
37 * </ul>
38 *
39 * @generated
40 */
41public class AssertionImpl extends MinimalEObjectImpl.Container implements Assertion {
42 /**
43 * The cached value of the '{@link #getRelation() <em>Relation</em>}' reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getRelation()
47 * @generated
48 * @ordered
49 */
50 protected Relation relation;
51
52 /**
53 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @see #getValue()
57 * @generated
58 * @ordered
59 */
60 protected static final LogicValue VALUE_EDEFAULT = LogicValue.TRUE;
61
62 /**
63 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @see #getValue()
67 * @generated
68 * @ordered
69 */
70 protected LogicValue value = VALUE_EDEFAULT;
71
72 /**
73 * The cached value of the '{@link #getArguments() <em>Arguments</em>}' containment reference list.
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @see #getArguments()
77 * @generated
78 * @ordered
79 */
80 protected EList<AssertionArgument> arguments;
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 protected AssertionImpl() {
88 super();
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 protected EClass eStaticClass() {
98 return ProblemPackage.Literals.ASSERTION;
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 public Relation getRelation() {
107 if (relation != null && relation.eIsProxy()) {
108 InternalEObject oldRelation = (InternalEObject) relation;
109 relation = (Relation) eResolveProxy(oldRelation);
110 if (relation != oldRelation) {
111 if (eNotificationRequired())
112 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.ASSERTION__RELATION,
113 oldRelation, relation));
114 }
115 }
116 return relation;
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 public Relation basicGetRelation() {
125 return relation;
126 }
127
128 /**
129 * <!-- begin-user-doc -->
130 * <!-- end-user-doc -->
131 * @generated
132 */
133 public void setRelation(Relation newRelation) {
134 Relation oldRelation = relation;
135 relation = newRelation;
136 if (eNotificationRequired())
137 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ASSERTION__RELATION, oldRelation,
138 relation));
139 }
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 public EList<AssertionArgument> getArguments() {
147 if (arguments == null) {
148 arguments = new EObjectContainmentEList<AssertionArgument>(AssertionArgument.class, this,
149 ProblemPackage.ASSERTION__ARGUMENTS);
150 }
151 return arguments;
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 ProblemPackage.ASSERTION__ARGUMENTS:
163 return ((InternalEList<?>) getArguments()).basicRemove(otherEnd, msgs);
164 }
165 return super.eInverseRemove(otherEnd, featureID, msgs);
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 public LogicValue getValue() {
174 return value;
175 }
176
177 /**
178 * <!-- begin-user-doc -->
179 * <!-- end-user-doc -->
180 * @generated
181 */
182 public void setValue(LogicValue newValue) {
183 LogicValue oldValue = value;
184 value = newValue == null ? VALUE_EDEFAULT : newValue;
185 if (eNotificationRequired())
186 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ASSERTION__VALUE, oldValue, value));
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 ProblemPackage.ASSERTION__RELATION:
198 if (resolve)
199 return getRelation();
200 return basicGetRelation();
201 case ProblemPackage.ASSERTION__VALUE:
202 return getValue();
203 case ProblemPackage.ASSERTION__ARGUMENTS:
204 return getArguments();
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 ProblemPackage.ASSERTION__RELATION:
219 setRelation((Relation) newValue);
220 return;
221 case ProblemPackage.ASSERTION__VALUE:
222 setValue((LogicValue) newValue);
223 return;
224 case ProblemPackage.ASSERTION__ARGUMENTS:
225 getArguments().clear();
226 getArguments().addAll((Collection<? extends AssertionArgument>) newValue);
227 return;
228 }
229 super.eSet(featureID, newValue);
230 }
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
237 @Override
238 public void eUnset(int featureID) {
239 switch (featureID) {
240 case ProblemPackage.ASSERTION__RELATION:
241 setRelation((Relation) null);
242 return;
243 case ProblemPackage.ASSERTION__VALUE:
244 setValue(VALUE_EDEFAULT);
245 return;
246 case ProblemPackage.ASSERTION__ARGUMENTS:
247 getArguments().clear();
248 return;
249 }
250 super.eUnset(featureID);
251 }
252
253 /**
254 * <!-- begin-user-doc -->
255 * <!-- end-user-doc -->
256 * @generated
257 */
258 @Override
259 public boolean eIsSet(int featureID) {
260 switch (featureID) {
261 case ProblemPackage.ASSERTION__RELATION:
262 return relation != null;
263 case ProblemPackage.ASSERTION__VALUE:
264 return value != VALUE_EDEFAULT;
265 case ProblemPackage.ASSERTION__ARGUMENTS:
266 return arguments != null && !arguments.isEmpty();
267 }
268 return super.eIsSet(featureID);
269 }
270
271 /**
272 * <!-- begin-user-doc -->
273 * <!-- end-user-doc -->
274 * @generated
275 */
276 @Override
277 public String toString() {
278 if (eIsProxy())
279 return super.toString();
280
281 StringBuilder result = new StringBuilder(super.toString());
282 result.append(" (value: ");
283 result.append(value);
284 result.append(')');
285 return result.toString();
286 }
287
288} //AssertionImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java
deleted file mode 100644
index d70fe90b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java
+++ /dev/null
@@ -1,286 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import java.util.Collection;
6
7import org.eclipse.emf.common.notify.Notification;
8
9import org.eclipse.emf.common.notify.NotificationChain;
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;
19import org.eclipse.viatra.solver.language.model.problem.Argument;
20import org.eclipse.viatra.solver.language.model.problem.Atom;
21import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
22import org.eclipse.viatra.solver.language.model.problem.Relation;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Atom</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.model.problem.impl.AtomImpl#getRelation <em>Relation</em>}</li>
33 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#isTransitiveClosure <em>Transitive Closure</em>}</li>
34 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#getArguments <em>Arguments</em>}</li>
35 * </ul>
36 *
37 * @generated
38 */
39public class AtomImpl extends LiteralImpl implements Atom {
40 /**
41 * The cached value of the '{@link #getRelation() <em>Relation</em>}' reference.
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @see #getRelation()
45 * @generated
46 * @ordered
47 */
48 protected Relation relation;
49
50 /**
51 * The default value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @see #isTransitiveClosure()
55 * @generated
56 * @ordered
57 */
58 protected static final boolean TRANSITIVE_CLOSURE_EDEFAULT = false;
59
60 /**
61 * The cached value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see #isTransitiveClosure()
65 * @generated
66 * @ordered
67 */
68 protected boolean transitiveClosure = TRANSITIVE_CLOSURE_EDEFAULT;
69
70 /**
71 * The cached value of the '{@link #getArguments() <em>Arguments</em>}' containment reference list.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @see #getArguments()
75 * @generated
76 * @ordered
77 */
78 protected EList<Argument> arguments;
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 protected AtomImpl() {
86 super();
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 @Override
95 protected EClass eStaticClass() {
96 return ProblemPackage.Literals.ATOM;
97 }
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 public Relation getRelation() {
105 if (relation != null && relation.eIsProxy()) {
106 InternalEObject oldRelation = (InternalEObject) relation;
107 relation = (Relation) eResolveProxy(oldRelation);
108 if (relation != oldRelation) {
109 if (eNotificationRequired())
110 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.ATOM__RELATION,
111 oldRelation, relation));
112 }
113 }
114 return relation;
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 public Relation basicGetRelation() {
123 return relation;
124 }
125
126 /**
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @generated
130 */
131 public void setRelation(Relation newRelation) {
132 Relation oldRelation = relation;
133 relation = newRelation;
134 if (eNotificationRequired())
135 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ATOM__RELATION, oldRelation,
136 relation));
137 }
138
139 /**
140 * <!-- begin-user-doc -->
141 * <!-- end-user-doc -->
142 * @generated
143 */
144 public EList<Argument> getArguments() {
145 if (arguments == null) {
146 arguments = new EObjectContainmentEList<Argument>(Argument.class, this, ProblemPackage.ATOM__ARGUMENTS);
147 }
148 return arguments;
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 public boolean isTransitiveClosure() {
157 return transitiveClosure;
158 }
159
160 /**
161 * <!-- begin-user-doc -->
162 * <!-- end-user-doc -->
163 * @generated
164 */
165 public void setTransitiveClosure(boolean newTransitiveClosure) {
166 boolean oldTransitiveClosure = transitiveClosure;
167 transitiveClosure = newTransitiveClosure;
168 if (eNotificationRequired())
169 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ATOM__TRANSITIVE_CLOSURE,
170 oldTransitiveClosure, transitiveClosure));
171 }
172
173 /**
174 * <!-- begin-user-doc -->
175 * <!-- end-user-doc -->
176 * @generated
177 */
178 @Override
179 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
180 switch (featureID) {
181 case ProblemPackage.ATOM__ARGUMENTS:
182 return ((InternalEList<?>) getArguments()).basicRemove(otherEnd, 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 ProblemPackage.ATOM__RELATION:
196 if (resolve)
197 return getRelation();
198 return basicGetRelation();
199 case ProblemPackage.ATOM__TRANSITIVE_CLOSURE:
200 return isTransitiveClosure();
201 case ProblemPackage.ATOM__ARGUMENTS:
202 return getArguments();
203 }
204 return super.eGet(featureID, resolve, coreType);
205 }
206
207 /**
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 */
212 @SuppressWarnings("unchecked")
213 @Override
214 public void eSet(int featureID, Object newValue) {
215 switch (featureID) {
216 case ProblemPackage.ATOM__RELATION:
217 setRelation((Relation) newValue);
218 return;
219 case ProblemPackage.ATOM__TRANSITIVE_CLOSURE:
220 setTransitiveClosure((Boolean) newValue);
221 return;
222 case ProblemPackage.ATOM__ARGUMENTS:
223 getArguments().clear();
224 getArguments().addAll((Collection<? extends Argument>) newValue);
225 return;
226 }
227 super.eSet(featureID, newValue);
228 }
229
230 /**
231 * <!-- begin-user-doc -->
232 * <!-- end-user-doc -->
233 * @generated
234 */
235 @Override
236 public void eUnset(int featureID) {
237 switch (featureID) {
238 case ProblemPackage.ATOM__RELATION:
239 setRelation((Relation) null);
240 return;
241 case ProblemPackage.ATOM__TRANSITIVE_CLOSURE:
242 setTransitiveClosure(TRANSITIVE_CLOSURE_EDEFAULT);
243 return;
244 case ProblemPackage.ATOM__ARGUMENTS:
245 getArguments().clear();
246 return;
247 }
248 super.eUnset(featureID);
249 }
250
251 /**
252 * <!-- begin-user-doc -->
253 * <!-- end-user-doc -->
254 * @generated
255 */
256 @Override
257 public boolean eIsSet(int featureID) {
258 switch (featureID) {
259 case ProblemPackage.ATOM__RELATION:
260 return relation != null;
261 case ProblemPackage.ATOM__TRANSITIVE_CLOSURE:
262 return transitiveClosure != TRANSITIVE_CLOSURE_EDEFAULT;
263 case ProblemPackage.ATOM__ARGUMENTS:
264 return arguments != null && !arguments.isEmpty();
265 }
266 return super.eIsSet(featureID);
267 }
268
269 /**
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @generated
273 */
274 @Override
275 public String toString() {
276 if (eIsProxy())
277 return super.toString();
278
279 StringBuilder result = new StringBuilder(super.toString());
280 result.append(" (transitiveClosure: ");
281 result.append(transitiveClosure);
282 result.append(')');
283 return result.toString();
284 }
285
286} //AtomImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java
deleted file mode 100644
index 774a6e33..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java
+++ /dev/null
@@ -1,335 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ClassDeclaration;
22import org.eclipse.viatra.solver.language.model.problem.Node;
23import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
24import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
25import org.eclipse.viatra.solver.language.model.problem.Relation;
26
27/**
28 * <!-- begin-user-doc -->
29 * An implementation of the model object '<em><b>Class Declaration</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.model.problem.impl.ClassDeclarationImpl#isAbstract <em>Abstract</em>}</li>
36 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getSuperTypes <em>Super Types</em>}</li>
37 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getReferenceDeclarations <em>Reference Declarations</em>}</li>
38 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getNewNode <em>New Node</em>}</li>
39 * </ul>
40 *
41 * @generated
42 */
43public class ClassDeclarationImpl extends RelationImpl implements ClassDeclaration {
44 /**
45 * The default value of the '{@link #isAbstract() <em>Abstract</em>}' attribute.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #isAbstract()
49 * @generated
50 * @ordered
51 */
52 protected static final boolean ABSTRACT_EDEFAULT = false;
53
54 /**
55 * The cached value of the '{@link #isAbstract() <em>Abstract</em>}' attribute.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #isAbstract()
59 * @generated
60 * @ordered
61 */
62 protected boolean abstract_ = ABSTRACT_EDEFAULT;
63
64 /**
65 * The cached value of the '{@link #getSuperTypes() <em>Super Types</em>}' reference list.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #getSuperTypes()
69 * @generated
70 * @ordered
71 */
72 protected EList<Relation> superTypes;
73
74 /**
75 * The cached value of the '{@link #getReferenceDeclarations() <em>Reference Declarations</em>}' containment reference list.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @see #getReferenceDeclarations()
79 * @generated
80 * @ordered
81 */
82 protected EList<ReferenceDeclaration> referenceDeclarations;
83
84 /**
85 * The cached value of the '{@link #getNewNode() <em>New Node</em>}' containment reference.
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @see #getNewNode()
89 * @generated
90 * @ordered
91 */
92 protected Node newNode;
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 protected ClassDeclarationImpl() {
100 super();
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 protected EClass eStaticClass() {
110 return ProblemPackage.Literals.CLASS_DECLARATION;
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public boolean isAbstract() {
119 return abstract_;
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public void setAbstract(boolean newAbstract) {
128 boolean oldAbstract = abstract_;
129 abstract_ = newAbstract;
130 if (eNotificationRequired())
131 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.CLASS_DECLARATION__ABSTRACT,
132 oldAbstract, abstract_));
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 public EList<Relation> getSuperTypes() {
141 if (superTypes == null) {
142 superTypes = new EObjectResolvingEList<Relation>(Relation.class, this,
143 ProblemPackage.CLASS_DECLARATION__SUPER_TYPES);
144 }
145 return superTypes;
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 public EList<ReferenceDeclaration> getReferenceDeclarations() {
154 if (referenceDeclarations == null) {
155 referenceDeclarations = new EObjectContainmentEList<ReferenceDeclaration>(ReferenceDeclaration.class, this,
156 ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS);
157 }
158 return referenceDeclarations;
159 }
160
161 /**
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 */
166 public Node getNewNode() {
167 return newNode;
168 }
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 public NotificationChain basicSetNewNode(Node newNewNode, NotificationChain msgs) {
176 Node oldNewNode = newNode;
177 newNode = newNewNode;
178 if (eNotificationRequired()) {
179 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
180 ProblemPackage.CLASS_DECLARATION__NEW_NODE, oldNewNode, newNewNode);
181 if (msgs == null)
182 msgs = notification;
183 else
184 msgs.add(notification);
185 }
186 return msgs;
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 public void setNewNode(Node newNewNode) {
195 if (newNewNode != newNode) {
196 NotificationChain msgs = null;
197 if (newNode != null)
198 msgs = ((InternalEObject) newNode).eInverseRemove(this,
199 EOPPOSITE_FEATURE_BASE - ProblemPackage.CLASS_DECLARATION__NEW_NODE, null, msgs);
200 if (newNewNode != null)
201 msgs = ((InternalEObject) newNewNode).eInverseAdd(this,
202 EOPPOSITE_FEATURE_BASE - ProblemPackage.CLASS_DECLARATION__NEW_NODE, null, msgs);
203 msgs = basicSetNewNode(newNewNode, msgs);
204 if (msgs != null)
205 msgs.dispatch();
206 } else if (eNotificationRequired())
207 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.CLASS_DECLARATION__NEW_NODE,
208 newNewNode, newNewNode));
209 }
210
211 /**
212 * <!-- begin-user-doc -->
213 * <!-- end-user-doc -->
214 * @generated
215 */
216 @Override
217 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
218 switch (featureID) {
219 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS:
220 return ((InternalEList<?>) getReferenceDeclarations()).basicRemove(otherEnd, msgs);
221 case ProblemPackage.CLASS_DECLARATION__NEW_NODE:
222 return basicSetNewNode(null, msgs);
223 }
224 return super.eInverseRemove(otherEnd, featureID, msgs);
225 }
226
227 /**
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 */
232 @Override
233 public Object eGet(int featureID, boolean resolve, boolean coreType) {
234 switch (featureID) {
235 case ProblemPackage.CLASS_DECLARATION__ABSTRACT:
236 return isAbstract();
237 case ProblemPackage.CLASS_DECLARATION__SUPER_TYPES:
238 return getSuperTypes();
239 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS:
240 return getReferenceDeclarations();
241 case ProblemPackage.CLASS_DECLARATION__NEW_NODE:
242 return getNewNode();
243 }
244 return super.eGet(featureID, resolve, coreType);
245 }
246
247 /**
248 * <!-- begin-user-doc -->
249 * <!-- end-user-doc -->
250 * @generated
251 */
252 @SuppressWarnings("unchecked")
253 @Override
254 public void eSet(int featureID, Object newValue) {
255 switch (featureID) {
256 case ProblemPackage.CLASS_DECLARATION__ABSTRACT:
257 setAbstract((Boolean) newValue);
258 return;
259 case ProblemPackage.CLASS_DECLARATION__SUPER_TYPES:
260 getSuperTypes().clear();
261 getSuperTypes().addAll((Collection<? extends Relation>) newValue);
262 return;
263 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS:
264 getReferenceDeclarations().clear();
265 getReferenceDeclarations().addAll((Collection<? extends ReferenceDeclaration>) newValue);
266 return;
267 case ProblemPackage.CLASS_DECLARATION__NEW_NODE:
268 setNewNode((Node) newValue);
269 return;
270 }
271 super.eSet(featureID, newValue);
272 }
273
274 /**
275 * <!-- begin-user-doc -->
276 * <!-- end-user-doc -->
277 * @generated
278 */
279 @Override
280 public void eUnset(int featureID) {
281 switch (featureID) {
282 case ProblemPackage.CLASS_DECLARATION__ABSTRACT:
283 setAbstract(ABSTRACT_EDEFAULT);
284 return;
285 case ProblemPackage.CLASS_DECLARATION__SUPER_TYPES:
286 getSuperTypes().clear();
287 return;
288 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS:
289 getReferenceDeclarations().clear();
290 return;
291 case ProblemPackage.CLASS_DECLARATION__NEW_NODE:
292 setNewNode((Node) null);
293 return;
294 }
295 super.eUnset(featureID);
296 }
297
298 /**
299 * <!-- begin-user-doc -->
300 * <!-- end-user-doc -->
301 * @generated
302 */
303 @Override
304 public boolean eIsSet(int featureID) {
305 switch (featureID) {
306 case ProblemPackage.CLASS_DECLARATION__ABSTRACT:
307 return abstract_ != ABSTRACT_EDEFAULT;
308 case ProblemPackage.CLASS_DECLARATION__SUPER_TYPES:
309 return superTypes != null && !superTypes.isEmpty();
310 case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS:
311 return referenceDeclarations != null && !referenceDeclarations.isEmpty();
312 case ProblemPackage.CLASS_DECLARATION__NEW_NODE:
313 return newNode != null;
314 }
315 return super.eIsSet(featureID);
316 }
317
318 /**
319 * <!-- begin-user-doc -->
320 * <!-- end-user-doc -->
321 * @generated
322 */
323 @Override
324 public String toString() {
325 if (eIsProxy())
326 return super.toString();
327
328 StringBuilder result = new StringBuilder(super.toString());
329 result.append(" (abstract: ");
330 result.append(abstract_);
331 result.append(')');
332 return result.toString();
333 }
334
335} //ClassDeclarationImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java
deleted file mode 100644
index 72258cc1..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java
+++ /dev/null
@@ -1,190 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Conjunction;
20import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
21import org.eclipse.viatra.solver.language.model.problem.Literal;
22import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Conjunction</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.model.problem.impl.ConjunctionImpl#getImplicitVariables <em>Implicit Variables</em>}</li>
33 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ConjunctionImpl#getLiterals <em>Literals</em>}</li>
34 * </ul>
35 *
36 * @generated
37 */
38public class ConjunctionImpl extends MinimalEObjectImpl.Container implements Conjunction {
39 /**
40 * The cached value of the '{@link #getImplicitVariables() <em>Implicit Variables</em>}' containment reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getImplicitVariables()
44 * @generated
45 * @ordered
46 */
47 protected EList<ImplicitVariable> implicitVariables;
48
49 /**
50 * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getLiterals()
54 * @generated
55 * @ordered
56 */
57 protected EList<Literal> literals;
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 protected ConjunctionImpl() {
65 super();
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 @Override
74 protected EClass eStaticClass() {
75 return ProblemPackage.Literals.CONJUNCTION;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 public EList<ImplicitVariable> getImplicitVariables() {
84 if (implicitVariables == null) {
85 implicitVariables = new EObjectContainmentEList<ImplicitVariable>(ImplicitVariable.class, this,
86 ProblemPackage.CONJUNCTION__IMPLICIT_VARIABLES);
87 }
88 return implicitVariables;
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 public EList<Literal> getLiterals() {
97 if (literals == null) {
98 literals = new EObjectContainmentEList<Literal>(Literal.class, this, ProblemPackage.CONJUNCTION__LITERALS);
99 }
100 return literals;
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 @Override
109 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
110 switch (featureID) {
111 case ProblemPackage.CONJUNCTION__IMPLICIT_VARIABLES:
112 return ((InternalEList<?>) getImplicitVariables()).basicRemove(otherEnd, msgs);
113 case ProblemPackage.CONJUNCTION__LITERALS:
114 return ((InternalEList<?>) getLiterals()).basicRemove(otherEnd, msgs);
115 }
116 return super.eInverseRemove(otherEnd, featureID, msgs);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public Object eGet(int featureID, boolean resolve, boolean coreType) {
126 switch (featureID) {
127 case ProblemPackage.CONJUNCTION__IMPLICIT_VARIABLES:
128 return getImplicitVariables();
129 case ProblemPackage.CONJUNCTION__LITERALS:
130 return getLiterals();
131 }
132 return super.eGet(featureID, resolve, coreType);
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 @SuppressWarnings("unchecked")
141 @Override
142 public void eSet(int featureID, Object newValue) {
143 switch (featureID) {
144 case ProblemPackage.CONJUNCTION__IMPLICIT_VARIABLES:
145 getImplicitVariables().clear();
146 getImplicitVariables().addAll((Collection<? extends ImplicitVariable>) newValue);
147 return;
148 case ProblemPackage.CONJUNCTION__LITERALS:
149 getLiterals().clear();
150 getLiterals().addAll((Collection<? extends Literal>) newValue);
151 return;
152 }
153 super.eSet(featureID, newValue);
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 @Override
162 public void eUnset(int featureID) {
163 switch (featureID) {
164 case ProblemPackage.CONJUNCTION__IMPLICIT_VARIABLES:
165 getImplicitVariables().clear();
166 return;
167 case ProblemPackage.CONJUNCTION__LITERALS:
168 getLiterals().clear();
169 return;
170 }
171 super.eUnset(featureID);
172 }
173
174 /**
175 * <!-- begin-user-doc -->
176 * <!-- end-user-doc -->
177 * @generated
178 */
179 @Override
180 public boolean eIsSet(int featureID) {
181 switch (featureID) {
182 case ProblemPackage.CONJUNCTION__IMPLICIT_VARIABLES:
183 return implicitVariables != null && !implicitVariables.isEmpty();
184 case ProblemPackage.CONJUNCTION__LITERALS:
185 return literals != null && !literals.isEmpty();
186 }
187 return super.eIsSet(featureID);
188 }
189
190} //ConjunctionImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantArgumentImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantArgumentImpl.java
deleted file mode 100644
index 10798200..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantArgumentImpl.java
+++ /dev/null
@@ -1,182 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Constant;
14import org.eclipse.viatra.solver.language.model.problem.ConstantArgument;
15import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Constant 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.model.problem.impl.ConstantArgumentImpl#getConstant <em>Constant</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class ConstantArgumentImpl extends ArgumentImpl implements ConstantArgument {
31 /**
32 * The cached value of the '{@link #getConstant() <em>Constant</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getConstant()
36 * @generated
37 * @ordered
38 */
39 protected Constant constant;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected ConstantArgumentImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return ProblemPackage.Literals.CONSTANT_ARGUMENT;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public Constant getConstant() {
66 return constant;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetConstant(Constant newConstant, NotificationChain msgs) {
75 Constant oldConstant = constant;
76 constant = newConstant;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 ProblemPackage.CONSTANT_ARGUMENT__CONSTANT, oldConstant, newConstant);
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 setConstant(Constant newConstant) {
94 if (newConstant != constant) {
95 NotificationChain msgs = null;
96 if (constant != null)
97 msgs = ((InternalEObject) constant).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - ProblemPackage.CONSTANT_ARGUMENT__CONSTANT, null, msgs);
99 if (newConstant != null)
100 msgs = ((InternalEObject) newConstant).eInverseAdd(this,
101 EOPPOSITE_FEATURE_BASE - ProblemPackage.CONSTANT_ARGUMENT__CONSTANT, null, msgs);
102 msgs = basicSetConstant(newConstant, msgs);
103 if (msgs != null)
104 msgs.dispatch();
105 } else if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.CONSTANT_ARGUMENT__CONSTANT,
107 newConstant, newConstant));
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 ProblemPackage.CONSTANT_ARGUMENT__CONSTANT:
119 return basicSetConstant(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 ProblemPackage.CONSTANT_ARGUMENT__CONSTANT:
133 return getConstant();
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 ProblemPackage.CONSTANT_ARGUMENT__CONSTANT:
147 setConstant((Constant) 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 ProblemPackage.CONSTANT_ARGUMENT__CONSTANT:
162 setConstant((Constant) 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 ProblemPackage.CONSTANT_ARGUMENT__CONSTANT:
177 return constant != null;
178 }
179 return super.eIsSet(featureID);
180 }
181
182} //ConstantArgumentImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantAssertionArgumentImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantAssertionArgumentImpl.java
deleted file mode 100644
index 6b5b3ed2..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantAssertionArgumentImpl.java
+++ /dev/null
@@ -1,182 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Constant;
14import org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument;
15import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Constant Assertion 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.model.problem.impl.ConstantAssertionArgumentImpl#getConstant <em>Constant</em>}</li>
26 * </ul>
27 *
28 * @generated
29 */
30public class ConstantAssertionArgumentImpl extends AssertionArgumentImpl implements ConstantAssertionArgument {
31 /**
32 * The cached value of the '{@link #getConstant() <em>Constant</em>}' containment reference.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #getConstant()
36 * @generated
37 * @ordered
38 */
39 protected Constant constant;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 protected ConstantAssertionArgumentImpl() {
47 super();
48 }
49
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 @Override
56 protected EClass eStaticClass() {
57 return ProblemPackage.Literals.CONSTANT_ASSERTION_ARGUMENT;
58 }
59
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 public Constant getConstant() {
66 return constant;
67 }
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 public NotificationChain basicSetConstant(Constant newConstant, NotificationChain msgs) {
75 Constant oldConstant = constant;
76 constant = newConstant;
77 if (eNotificationRequired()) {
78 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
79 ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT, oldConstant, newConstant);
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 setConstant(Constant newConstant) {
94 if (newConstant != constant) {
95 NotificationChain msgs = null;
96 if (constant != null)
97 msgs = ((InternalEObject) constant).eInverseRemove(this,
98 EOPPOSITE_FEATURE_BASE - ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT, null, msgs);
99 if (newConstant != null)
100 msgs = ((InternalEObject) newConstant).eInverseAdd(this,
101 EOPPOSITE_FEATURE_BASE - ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT, null, msgs);
102 msgs = basicSetConstant(newConstant, msgs);
103 if (msgs != null)
104 msgs.dispatch();
105 } else if (eNotificationRequired())
106 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT,
107 newConstant, newConstant));
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 ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT:
119 return basicSetConstant(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 ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT:
133 return getConstant();
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 ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT:
147 setConstant((Constant) 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 ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT:
162 setConstant((Constant) 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 ProblemPackage.CONSTANT_ASSERTION_ARGUMENT__CONSTANT:
177 return constant != null;
178 }
179 return super.eIsSet(featureID);
180 }
181
182} //ConstantAssertionArgumentImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantImpl.java
deleted file mode 100644
index 14be4fb4..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConstantImpl.java
+++ /dev/null
@@ -1,39 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.model.problem.Constant;
10import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
11
12/**
13 * <!-- begin-user-doc -->
14 * An implementation of the model object '<em><b>Constant</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * @generated
18 */
19public abstract class ConstantImpl extends MinimalEObjectImpl.Container implements Constant {
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected ConstantImpl() {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass() {
36 return ProblemPackage.Literals.CONSTANT;
37 }
38
39} //ConstantImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java
deleted file mode 100644
index aac00423..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/EnumDeclarationImpl.java
+++ /dev/null
@@ -1,150 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.EnumDeclaration;
18import org.eclipse.viatra.solver.language.model.problem.Node;
19import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Enum Declaration</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.model.problem.impl.EnumDeclarationImpl#getLiterals <em>Literals</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class EnumDeclarationImpl extends RelationImpl implements EnumDeclaration {
35 /**
36 * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getLiterals()
40 * @generated
41 * @ordered
42 */
43 protected EList<Node> literals;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected EnumDeclarationImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return ProblemPackage.Literals.ENUM_DECLARATION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<Node> getLiterals() {
70 if (literals == null) {
71 literals = new EObjectContainmentEList<Node>(Node.class, this, ProblemPackage.ENUM_DECLARATION__LITERALS);
72 }
73 return literals;
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 ProblemPackage.ENUM_DECLARATION__LITERALS:
85 return ((InternalEList<?>) getLiterals()).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 ProblemPackage.ENUM_DECLARATION__LITERALS:
99 return getLiterals();
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 ProblemPackage.ENUM_DECLARATION__LITERALS:
114 getLiterals().clear();
115 getLiterals().addAll((Collection<? extends Node>) 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 ProblemPackage.ENUM_DECLARATION__LITERALS:
130 getLiterals().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 ProblemPackage.ENUM_DECLARATION__LITERALS:
145 return literals != null && !literals.isEmpty();
146 }
147 return super.eIsSet(featureID);
148 }
149
150} //EnumDeclarationImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ExactMultiplicityImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ExactMultiplicityImpl.java
deleted file mode 100644
index b3896ac2..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ExactMultiplicityImpl.java
+++ /dev/null
@@ -1,164 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ExactMultiplicity;
12import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
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.model.problem.impl.ExactMultiplicityImpl#getExactValue <em>Exact Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class ExactMultiplicityImpl extends MultiplicityImpl implements ExactMultiplicity {
28 /**
29 * The default value of the '{@link #getExactValue() <em>Exact Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getExactValue()
33 * @generated
34 * @ordered
35 */
36 protected static final int EXACT_VALUE_EDEFAULT = 1;
37
38 /**
39 * The cached value of the '{@link #getExactValue() <em>Exact Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getExactValue()
43 * @generated
44 * @ordered
45 */
46 protected int exactValue = EXACT_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 ProblemPackage.Literals.EXACT_MULTIPLICITY;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public int getExactValue() {
73 return exactValue;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setExactValue(int newExactValue) {
82 int oldExactValue = exactValue;
83 exactValue = newExactValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.EXACT_MULTIPLICITY__EXACT_VALUE,
86 oldExactValue, exactValue));
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 ProblemPackage.EXACT_MULTIPLICITY__EXACT_VALUE:
98 return getExactValue();
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 ProblemPackage.EXACT_MULTIPLICITY__EXACT_VALUE:
112 setExactValue((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 ProblemPackage.EXACT_MULTIPLICITY__EXACT_VALUE:
127 setExactValue(EXACT_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 ProblemPackage.EXACT_MULTIPLICITY__EXACT_VALUE:
142 return exactValue != EXACT_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(" (exactValue: ");
159 result.append(exactValue);
160 result.append(')');
161 return result.toString();
162 }
163
164} //ExactMultiplicityImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ImplicitVariableImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ImplicitVariableImpl.java
deleted file mode 100644
index 03a31a16..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ImplicitVariableImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
8import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Implicit Variable</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ImplicitVariableImpl extends VariableImpl implements ImplicitVariable {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected ImplicitVariableImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return ProblemPackage.Literals.IMPLICIT_VARIABLE;
35 }
36
37} //ImplicitVariableImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/IntConstantImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/IntConstantImpl.java
deleted file mode 100644
index 1a0da417..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/IntConstantImpl.java
+++ /dev/null
@@ -1,164 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.IntConstant;
12import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Int Constant</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.model.problem.impl.IntConstantImpl#getIntValue <em>Int Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class IntConstantImpl extends ConstantImpl implements IntConstant {
28 /**
29 * The default value of the '{@link #getIntValue() <em>Int Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getIntValue()
33 * @generated
34 * @ordered
35 */
36 protected static final int INT_VALUE_EDEFAULT = 0;
37
38 /**
39 * The cached value of the '{@link #getIntValue() <em>Int Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getIntValue()
43 * @generated
44 * @ordered
45 */
46 protected int intValue = INT_VALUE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected IntConstantImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return ProblemPackage.Literals.INT_CONSTANT;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public int getIntValue() {
73 return intValue;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setIntValue(int newIntValue) {
82 int oldIntValue = intValue;
83 intValue = newIntValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.INT_CONSTANT__INT_VALUE, oldIntValue,
86 intValue));
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 ProblemPackage.INT_CONSTANT__INT_VALUE:
98 return getIntValue();
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 ProblemPackage.INT_CONSTANT__INT_VALUE:
112 setIntValue((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 ProblemPackage.INT_CONSTANT__INT_VALUE:
127 setIntValue(INT_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 ProblemPackage.INT_CONSTANT__INT_VALUE:
142 return intValue != INT_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(" (intValue: ");
159 result.append(intValue);
160 result.append(')');
161 return result.toString();
162 }
163
164} //IntConstantImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/LiteralImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/LiteralImpl.java
deleted file mode 100644
index c48bdb0b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/LiteralImpl.java
+++ /dev/null
@@ -1,39 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.model.problem.Literal;
10import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
11
12/**
13 * <!-- begin-user-doc -->
14 * An implementation of the model object '<em><b>Literal</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * @generated
18 */
19public abstract class LiteralImpl extends MinimalEObjectImpl.Container implements Literal {
20 /**
21 * <!-- begin-user-doc -->
22 * <!-- end-user-doc -->
23 * @generated
24 */
25 protected LiteralImpl() {
26 super();
27 }
28
29 /**
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 @Override
35 protected EClass eStaticClass() {
36 return ProblemPackage.Literals.LITERAL;
37 }
38
39} //LiteralImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/MultiplicityImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/MultiplicityImpl.java
deleted file mode 100644
index 8d769eb0..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/MultiplicityImpl.java
+++ /dev/null
@@ -1,39 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
8
9import org.eclipse.viatra.solver.language.model.problem.Multiplicity;
10import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
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 ProblemPackage.Literals.MULTIPLICITY;
37 }
38
39} //MultiplicityImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NamedElementImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NamedElementImpl.java
deleted file mode 100644
index b414013b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NamedElementImpl.java
+++ /dev/null
@@ -1,164 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.NamedElement;
13import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Named Element</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.model.problem.impl.NamedElementImpl#getName <em>Name</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public abstract class NamedElementImpl extends MinimalEObjectImpl.Container implements NamedElement {
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 NamedElementImpl() {
55 super();
56 }
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 @Override
64 protected EClass eStaticClass() {
65 return ProblemPackage.Literals.NAMED_ELEMENT;
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, ProblemPackage.NAMED_ELEMENT__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 ProblemPackage.NAMED_ELEMENT__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 ProblemPackage.NAMED_ELEMENT__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 ProblemPackage.NAMED_ELEMENT__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 ProblemPackage.NAMED_ELEMENT__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} //NamedElementImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java
deleted file mode 100644
index 857a779d..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java
+++ /dev/null
@@ -1,229 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Atom;
22import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
23import org.eclipse.viatra.solver.language.model.problem.NegativeLiteral;
24import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
25
26/**
27 * <!-- begin-user-doc -->
28 * An implementation of the model object '<em><b>Negative Literal</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.model.problem.impl.NegativeLiteralImpl#getImplicitVariables <em>Implicit Variables</em>}</li>
35 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.NegativeLiteralImpl#getAtom <em>Atom</em>}</li>
36 * </ul>
37 *
38 * @generated
39 */
40public class NegativeLiteralImpl extends MinimalEObjectImpl.Container implements NegativeLiteral {
41 /**
42 * The cached value of the '{@link #getImplicitVariables() <em>Implicit Variables</em>}' containment reference list.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #getImplicitVariables()
46 * @generated
47 * @ordered
48 */
49 protected EList<ImplicitVariable> implicitVariables;
50
51 /**
52 * The cached value of the '{@link #getAtom() <em>Atom</em>}' containment reference.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #getAtom()
56 * @generated
57 * @ordered
58 */
59 protected Atom atom;
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 protected NegativeLiteralImpl() {
67 super();
68 }
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 @Override
76 protected EClass eStaticClass() {
77 return ProblemPackage.Literals.NEGATIVE_LITERAL;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public EList<ImplicitVariable> getImplicitVariables() {
86 if (implicitVariables == null) {
87 implicitVariables = new EObjectContainmentEList<ImplicitVariable>(ImplicitVariable.class, this,
88 ProblemPackage.NEGATIVE_LITERAL__IMPLICIT_VARIABLES);
89 }
90 return implicitVariables;
91 }
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 public Atom getAtom() {
99 return atom;
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 public NotificationChain basicSetAtom(Atom newAtom, NotificationChain msgs) {
108 Atom oldAtom = atom;
109 atom = newAtom;
110 if (eNotificationRequired()) {
111 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
112 ProblemPackage.NEGATIVE_LITERAL__ATOM, oldAtom, newAtom);
113 if (msgs == null)
114 msgs = notification;
115 else
116 msgs.add(notification);
117 }
118 return msgs;
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public void setAtom(Atom newAtom) {
127 if (newAtom != atom) {
128 NotificationChain msgs = null;
129 if (atom != null)
130 msgs = ((InternalEObject) atom).eInverseRemove(this,
131 EOPPOSITE_FEATURE_BASE - ProblemPackage.NEGATIVE_LITERAL__ATOM, null, msgs);
132 if (newAtom != null)
133 msgs = ((InternalEObject) newAtom).eInverseAdd(this,
134 EOPPOSITE_FEATURE_BASE - ProblemPackage.NEGATIVE_LITERAL__ATOM, null, msgs);
135 msgs = basicSetAtom(newAtom, msgs);
136 if (msgs != null)
137 msgs.dispatch();
138 } else if (eNotificationRequired())
139 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.NEGATIVE_LITERAL__ATOM, newAtom,
140 newAtom));
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 @Override
149 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
150 switch (featureID) {
151 case ProblemPackage.NEGATIVE_LITERAL__IMPLICIT_VARIABLES:
152 return ((InternalEList<?>) getImplicitVariables()).basicRemove(otherEnd, msgs);
153 case ProblemPackage.NEGATIVE_LITERAL__ATOM:
154 return basicSetAtom(null, msgs);
155 }
156 return super.eInverseRemove(otherEnd, featureID, msgs);
157 }
158
159 /**
160 * <!-- begin-user-doc -->
161 * <!-- end-user-doc -->
162 * @generated
163 */
164 @Override
165 public Object eGet(int featureID, boolean resolve, boolean coreType) {
166 switch (featureID) {
167 case ProblemPackage.NEGATIVE_LITERAL__IMPLICIT_VARIABLES:
168 return getImplicitVariables();
169 case ProblemPackage.NEGATIVE_LITERAL__ATOM:
170 return getAtom();
171 }
172 return super.eGet(featureID, resolve, coreType);
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 @SuppressWarnings("unchecked")
181 @Override
182 public void eSet(int featureID, Object newValue) {
183 switch (featureID) {
184 case ProblemPackage.NEGATIVE_LITERAL__IMPLICIT_VARIABLES:
185 getImplicitVariables().clear();
186 getImplicitVariables().addAll((Collection<? extends ImplicitVariable>) newValue);
187 return;
188 case ProblemPackage.NEGATIVE_LITERAL__ATOM:
189 setAtom((Atom) newValue);
190 return;
191 }
192 super.eSet(featureID, newValue);
193 }
194
195 /**
196 * <!-- begin-user-doc -->
197 * <!-- end-user-doc -->
198 * @generated
199 */
200 @Override
201 public void eUnset(int featureID) {
202 switch (featureID) {
203 case ProblemPackage.NEGATIVE_LITERAL__IMPLICIT_VARIABLES:
204 getImplicitVariables().clear();
205 return;
206 case ProblemPackage.NEGATIVE_LITERAL__ATOM:
207 setAtom((Atom) null);
208 return;
209 }
210 super.eUnset(featureID);
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 @Override
219 public boolean eIsSet(int featureID) {
220 switch (featureID) {
221 case ProblemPackage.NEGATIVE_LITERAL__IMPLICIT_VARIABLES:
222 return implicitVariables != null && !implicitVariables.isEmpty();
223 case ProblemPackage.NEGATIVE_LITERAL__ATOM:
224 return atom != null;
225 }
226 return super.eIsSet(featureID);
227 }
228
229} //NegativeLiteralImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeAssertionArgumentImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeAssertionArgumentImpl.java
deleted file mode 100644
index 27a702fd..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeAssertionArgumentImpl.java
+++ /dev/null
@@ -1,159 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Node;
13import org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument;
14import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model object '<em><b>Node Assertion Argument</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.model.problem.impl.NodeAssertionArgumentImpl#getNode <em>Node</em>}</li>
25 * </ul>
26 *
27 * @generated
28 */
29public class NodeAssertionArgumentImpl extends AssertionArgumentImpl implements NodeAssertionArgument {
30 /**
31 * The cached value of the '{@link #getNode() <em>Node</em>}' reference.
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @see #getNode()
35 * @generated
36 * @ordered
37 */
38 protected Node node;
39
40 /**
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @generated
44 */
45 protected NodeAssertionArgumentImpl() {
46 super();
47 }
48
49 /**
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @generated
53 */
54 @Override
55 protected EClass eStaticClass() {
56 return ProblemPackage.Literals.NODE_ASSERTION_ARGUMENT;
57 }
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 public Node getNode() {
65 if (node != null && node.eIsProxy()) {
66 InternalEObject oldNode = (InternalEObject) node;
67 node = (Node) eResolveProxy(oldNode);
68 if (node != oldNode) {
69 if (eNotificationRequired())
70 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
71 ProblemPackage.NODE_ASSERTION_ARGUMENT__NODE, oldNode, node));
72 }
73 }
74 return node;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public Node basicGetNode() {
83 return node;
84 }
85
86 /**
87 * <!-- begin-user-doc -->
88 * <!-- end-user-doc -->
89 * @generated
90 */
91 public void setNode(Node newNode) {
92 Node oldNode = node;
93 node = newNode;
94 if (eNotificationRequired())
95 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.NODE_ASSERTION_ARGUMENT__NODE, oldNode,
96 node));
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 ProblemPackage.NODE_ASSERTION_ARGUMENT__NODE:
108 if (resolve)
109 return getNode();
110 return basicGetNode();
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 ProblemPackage.NODE_ASSERTION_ARGUMENT__NODE:
124 setNode((Node) 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 ProblemPackage.NODE_ASSERTION_ARGUMENT__NODE:
139 setNode((Node) 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 ProblemPackage.NODE_ASSERTION_ARGUMENT__NODE:
154 return node != null;
155 }
156 return super.eIsSet(featureID);
157 }
158
159} //NodeAssertionArgumentImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java
deleted file mode 100644
index 0c08bb1b..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.Node;
8import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Node</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class NodeImpl extends VariableOrNodeImpl implements Node {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected NodeImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return ProblemPackage.Literals.NODE;
35 }
36
37} //NodeImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeValueAssertionImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeValueAssertionImpl.java
deleted file mode 100644
index 0078b35e..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NodeValueAssertionImpl.java
+++ /dev/null
@@ -1,247 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Constant;
15import org.eclipse.viatra.solver.language.model.problem.Node;
16import org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion;
17import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
18
19/**
20 * <!-- begin-user-doc -->
21 * An implementation of the model object '<em><b>Node Value Assertion</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.model.problem.impl.NodeValueAssertionImpl#getNode <em>Node</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.NodeValueAssertionImpl#getValue <em>Value</em>}</li>
29 * </ul>
30 *
31 * @generated
32 */
33public class NodeValueAssertionImpl extends MinimalEObjectImpl.Container implements NodeValueAssertion {
34 /**
35 * The cached value of the '{@link #getNode() <em>Node</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @see #getNode()
39 * @generated
40 * @ordered
41 */
42 protected Node node;
43
44 /**
45 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #getValue()
49 * @generated
50 * @ordered
51 */
52 protected Constant value;
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 protected NodeValueAssertionImpl() {
60 super();
61 }
62
63 /**
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 @Override
69 protected EClass eStaticClass() {
70 return ProblemPackage.Literals.NODE_VALUE_ASSERTION;
71 }
72
73 /**
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @generated
77 */
78 public Node getNode() {
79 if (node != null && node.eIsProxy()) {
80 InternalEObject oldNode = (InternalEObject) node;
81 node = (Node) eResolveProxy(oldNode);
82 if (node != oldNode) {
83 if (eNotificationRequired())
84 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.NODE_VALUE_ASSERTION__NODE,
85 oldNode, node));
86 }
87 }
88 return node;
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 public Node basicGetNode() {
97 return node;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public void setNode(Node newNode) {
106 Node oldNode = node;
107 node = newNode;
108 if (eNotificationRequired())
109 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.NODE_VALUE_ASSERTION__NODE, oldNode,
110 node));
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public Constant getValue() {
119 return value;
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public NotificationChain basicSetValue(Constant newValue, NotificationChain msgs) {
128 Constant oldValue = value;
129 value = newValue;
130 if (eNotificationRequired()) {
131 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
132 ProblemPackage.NODE_VALUE_ASSERTION__VALUE, oldValue, newValue);
133 if (msgs == null)
134 msgs = notification;
135 else
136 msgs.add(notification);
137 }
138 return msgs;
139 }
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 public void setValue(Constant newValue) {
147 if (newValue != value) {
148 NotificationChain msgs = null;
149 if (value != null)
150 msgs = ((InternalEObject) value).eInverseRemove(this,
151 EOPPOSITE_FEATURE_BASE - ProblemPackage.NODE_VALUE_ASSERTION__VALUE, null, msgs);
152 if (newValue != null)
153 msgs = ((InternalEObject) newValue).eInverseAdd(this,
154 EOPPOSITE_FEATURE_BASE - ProblemPackage.NODE_VALUE_ASSERTION__VALUE, null, msgs);
155 msgs = basicSetValue(newValue, msgs);
156 if (msgs != null)
157 msgs.dispatch();
158 } else if (eNotificationRequired())
159 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.NODE_VALUE_ASSERTION__VALUE, newValue,
160 newValue));
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 @Override
169 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
170 switch (featureID) {
171 case ProblemPackage.NODE_VALUE_ASSERTION__VALUE:
172 return basicSetValue(null, msgs);
173 }
174 return super.eInverseRemove(otherEnd, featureID, msgs);
175 }
176
177 /**
178 * <!-- begin-user-doc -->
179 * <!-- end-user-doc -->
180 * @generated
181 */
182 @Override
183 public Object eGet(int featureID, boolean resolve, boolean coreType) {
184 switch (featureID) {
185 case ProblemPackage.NODE_VALUE_ASSERTION__NODE:
186 if (resolve)
187 return getNode();
188 return basicGetNode();
189 case ProblemPackage.NODE_VALUE_ASSERTION__VALUE:
190 return getValue();
191 }
192 return super.eGet(featureID, resolve, coreType);
193 }
194
195 /**
196 * <!-- begin-user-doc -->
197 * <!-- end-user-doc -->
198 * @generated
199 */
200 @Override
201 public void eSet(int featureID, Object newValue) {
202 switch (featureID) {
203 case ProblemPackage.NODE_VALUE_ASSERTION__NODE:
204 setNode((Node) newValue);
205 return;
206 case ProblemPackage.NODE_VALUE_ASSERTION__VALUE:
207 setValue((Constant) newValue);
208 return;
209 }
210 super.eSet(featureID, newValue);
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 @Override
219 public void eUnset(int featureID) {
220 switch (featureID) {
221 case ProblemPackage.NODE_VALUE_ASSERTION__NODE:
222 setNode((Node) null);
223 return;
224 case ProblemPackage.NODE_VALUE_ASSERTION__VALUE:
225 setValue((Constant) null);
226 return;
227 }
228 super.eUnset(featureID);
229 }
230
231 /**
232 * <!-- begin-user-doc -->
233 * <!-- end-user-doc -->
234 * @generated
235 */
236 @Override
237 public boolean eIsSet(int featureID) {
238 switch (featureID) {
239 case ProblemPackage.NODE_VALUE_ASSERTION__NODE:
240 return node != null;
241 case ProblemPackage.NODE_VALUE_ASSERTION__VALUE:
242 return value != null;
243 }
244 return super.eIsSet(featureID);
245 }
246
247} //NodeValueAssertionImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java
deleted file mode 100644
index 06eea3f3..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ParameterImpl.java
+++ /dev/null
@@ -1,158 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.viatra.solver.language.model.problem.Parameter;
12import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
13import org.eclipse.viatra.solver.language.model.problem.Relation;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model object '<em><b>Parameter</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.model.problem.impl.ParameterImpl#getParameterType <em>Parameter Type</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class ParameterImpl extends VariableImpl implements Parameter {
29 /**
30 * The cached value of the '{@link #getParameterType() <em>Parameter Type</em>}' reference.
31 * <!-- begin-user-doc -->
32 * <!-- end-user-doc -->
33 * @see #getParameterType()
34 * @generated
35 * @ordered
36 */
37 protected Relation parameterType;
38
39 /**
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @generated
43 */
44 protected ParameterImpl() {
45 super();
46 }
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 @Override
54 protected EClass eStaticClass() {
55 return ProblemPackage.Literals.PARAMETER;
56 }
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 public Relation getParameterType() {
64 if (parameterType != null && parameterType.eIsProxy()) {
65 InternalEObject oldParameterType = (InternalEObject) parameterType;
66 parameterType = (Relation) eResolveProxy(oldParameterType);
67 if (parameterType != oldParameterType) {
68 if (eNotificationRequired())
69 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.PARAMETER__PARAMETER_TYPE,
70 oldParameterType, parameterType));
71 }
72 }
73 return parameterType;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public Relation basicGetParameterType() {
82 return parameterType;
83 }
84
85 /**
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @generated
89 */
90 public void setParameterType(Relation newParameterType) {
91 Relation oldParameterType = parameterType;
92 parameterType = newParameterType;
93 if (eNotificationRequired())
94 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.PARAMETER__PARAMETER_TYPE,
95 oldParameterType, parameterType));
96 }
97
98 /**
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @generated
102 */
103 @Override
104 public Object eGet(int featureID, boolean resolve, boolean coreType) {
105 switch (featureID) {
106 case ProblemPackage.PARAMETER__PARAMETER_TYPE:
107 if (resolve)
108 return getParameterType();
109 return basicGetParameterType();
110 }
111 return super.eGet(featureID, resolve, coreType);
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 @Override
120 public void eSet(int featureID, Object newValue) {
121 switch (featureID) {
122 case ProblemPackage.PARAMETER__PARAMETER_TYPE:
123 setParameterType((Relation) newValue);
124 return;
125 }
126 super.eSet(featureID, newValue);
127 }
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 @Override
135 public void eUnset(int featureID) {
136 switch (featureID) {
137 case ProblemPackage.PARAMETER__PARAMETER_TYPE:
138 setParameterType((Relation) null);
139 return;
140 }
141 super.eUnset(featureID);
142 }
143
144 /**
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @generated
148 */
149 @Override
150 public boolean eIsSet(int featureID) {
151 switch (featureID) {
152 case ProblemPackage.PARAMETER__PARAMETER_TYPE:
153 return parameterType != null;
154 }
155 return super.eIsSet(featureID);
156 }
157
158} //ParameterImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/PredicateDefinitionImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/PredicateDefinitionImpl.java
deleted file mode 100644
index 968b6de1..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/PredicateDefinitionImpl.java
+++ /dev/null
@@ -1,262 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Conjunction;
21import org.eclipse.viatra.solver.language.model.problem.Parameter;
22import org.eclipse.viatra.solver.language.model.problem.PredicateDefinition;
23import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
24
25/**
26 * <!-- begin-user-doc -->
27 * An implementation of the model object '<em><b>Predicate Definition</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.model.problem.impl.PredicateDefinitionImpl#isError <em>Error</em>}</li>
34 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.PredicateDefinitionImpl#getParameters <em>Parameters</em>}</li>
35 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.PredicateDefinitionImpl#getBodies <em>Bodies</em>}</li>
36 * </ul>
37 *
38 * @generated
39 */
40public class PredicateDefinitionImpl extends RelationImpl implements PredicateDefinition {
41 /**
42 * The default value of the '{@link #isError() <em>Error</em>}' attribute.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #isError()
46 * @generated
47 * @ordered
48 */
49 protected static final boolean ERROR_EDEFAULT = false;
50
51 /**
52 * The cached value of the '{@link #isError() <em>Error</em>}' attribute.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @see #isError()
56 * @generated
57 * @ordered
58 */
59 protected boolean error = ERROR_EDEFAULT;
60
61 /**
62 * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @see #getParameters()
66 * @generated
67 * @ordered
68 */
69 protected EList<Parameter> parameters;
70
71 /**
72 * The cached value of the '{@link #getBodies() <em>Bodies</em>}' containment reference list.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @see #getBodies()
76 * @generated
77 * @ordered
78 */
79 protected EList<Conjunction> bodies;
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 protected PredicateDefinitionImpl() {
87 super();
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 @Override
96 protected EClass eStaticClass() {
97 return ProblemPackage.Literals.PREDICATE_DEFINITION;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public boolean isError() {
106 return error;
107 }
108
109 /**
110 * <!-- begin-user-doc -->
111 * <!-- end-user-doc -->
112 * @generated
113 */
114 public void setError(boolean newError) {
115 boolean oldError = error;
116 error = newError;
117 if (eNotificationRequired())
118 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.PREDICATE_DEFINITION__ERROR, oldError,
119 error));
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public EList<Parameter> getParameters() {
128 if (parameters == null) {
129 parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this,
130 ProblemPackage.PREDICATE_DEFINITION__PARAMETERS);
131 }
132 return parameters;
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 public EList<Conjunction> getBodies() {
141 if (bodies == null) {
142 bodies = new EObjectContainmentEList<Conjunction>(Conjunction.class, this,
143 ProblemPackage.PREDICATE_DEFINITION__BODIES);
144 }
145 return bodies;
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 @Override
154 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
155 switch (featureID) {
156 case ProblemPackage.PREDICATE_DEFINITION__PARAMETERS:
157 return ((InternalEList<?>) getParameters()).basicRemove(otherEnd, msgs);
158 case ProblemPackage.PREDICATE_DEFINITION__BODIES:
159 return ((InternalEList<?>) getBodies()).basicRemove(otherEnd, msgs);
160 }
161 return super.eInverseRemove(otherEnd, featureID, msgs);
162 }
163
164 /**
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @generated
168 */
169 @Override
170 public Object eGet(int featureID, boolean resolve, boolean coreType) {
171 switch (featureID) {
172 case ProblemPackage.PREDICATE_DEFINITION__ERROR:
173 return isError();
174 case ProblemPackage.PREDICATE_DEFINITION__PARAMETERS:
175 return getParameters();
176 case ProblemPackage.PREDICATE_DEFINITION__BODIES:
177 return getBodies();
178 }
179 return super.eGet(featureID, resolve, coreType);
180 }
181
182 /**
183 * <!-- begin-user-doc -->
184 * <!-- end-user-doc -->
185 * @generated
186 */
187 @SuppressWarnings("unchecked")
188 @Override
189 public void eSet(int featureID, Object newValue) {
190 switch (featureID) {
191 case ProblemPackage.PREDICATE_DEFINITION__ERROR:
192 setError((Boolean) newValue);
193 return;
194 case ProblemPackage.PREDICATE_DEFINITION__PARAMETERS:
195 getParameters().clear();
196 getParameters().addAll((Collection<? extends Parameter>) newValue);
197 return;
198 case ProblemPackage.PREDICATE_DEFINITION__BODIES:
199 getBodies().clear();
200 getBodies().addAll((Collection<? extends Conjunction>) newValue);
201 return;
202 }
203 super.eSet(featureID, newValue);
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 @Override
212 public void eUnset(int featureID) {
213 switch (featureID) {
214 case ProblemPackage.PREDICATE_DEFINITION__ERROR:
215 setError(ERROR_EDEFAULT);
216 return;
217 case ProblemPackage.PREDICATE_DEFINITION__PARAMETERS:
218 getParameters().clear();
219 return;
220 case ProblemPackage.PREDICATE_DEFINITION__BODIES:
221 getBodies().clear();
222 return;
223 }
224 super.eUnset(featureID);
225 }
226
227 /**
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 */
232 @Override
233 public boolean eIsSet(int featureID) {
234 switch (featureID) {
235 case ProblemPackage.PREDICATE_DEFINITION__ERROR:
236 return error != ERROR_EDEFAULT;
237 case ProblemPackage.PREDICATE_DEFINITION__PARAMETERS:
238 return parameters != null && !parameters.isEmpty();
239 case ProblemPackage.PREDICATE_DEFINITION__BODIES:
240 return bodies != null && !bodies.isEmpty();
241 }
242 return super.eIsSet(featureID);
243 }
244
245 /**
246 * <!-- begin-user-doc -->
247 * <!-- end-user-doc -->
248 * @generated
249 */
250 @Override
251 public String toString() {
252 if (eIsProxy())
253 return super.toString();
254
255 StringBuilder result = new StringBuilder(super.toString());
256 result.append(" (error: ");
257 result.append(error);
258 result.append(')');
259 return result.toString();
260 }
261
262} //PredicateDefinitionImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java
deleted file mode 100644
index 27da13e2..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java
+++ /dev/null
@@ -1,437 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.*;
15
16/**
17 * <!-- begin-user-doc -->
18 * An implementation of the model <b>Factory</b>.
19 * <!-- end-user-doc -->
20 * @generated
21 */
22public class ProblemFactoryImpl extends EFactoryImpl implements ProblemFactory {
23 /**
24 * Creates the default factory implementation.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @generated
28 */
29 public static ProblemFactory init() {
30 try {
31 ProblemFactory theProblemFactory = (ProblemFactory) EPackage.Registry.INSTANCE
32 .getEFactory(ProblemPackage.eNS_URI);
33 if (theProblemFactory != null) {
34 return theProblemFactory;
35 }
36 } catch (Exception exception) {
37 EcorePlugin.INSTANCE.log(exception);
38 }
39 return new ProblemFactoryImpl();
40 }
41
42 /**
43 * Creates an instance of the factory.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 public ProblemFactoryImpl() {
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 ProblemPackage.PROBLEM:
61 return createProblem();
62 case ProblemPackage.CLASS_DECLARATION:
63 return createClassDeclaration();
64 case ProblemPackage.REFERENCE_DECLARATION:
65 return createReferenceDeclaration();
66 case ProblemPackage.PREDICATE_DEFINITION:
67 return createPredicateDefinition();
68 case ProblemPackage.PARAMETER:
69 return createParameter();
70 case ProblemPackage.CONJUNCTION:
71 return createConjunction();
72 case ProblemPackage.ATOM:
73 return createAtom();
74 case ProblemPackage.IMPLICIT_VARIABLE:
75 return createImplicitVariable();
76 case ProblemPackage.NEGATIVE_LITERAL:
77 return createNegativeLiteral();
78 case ProblemPackage.ASSERTION:
79 return createAssertion();
80 case ProblemPackage.NODE:
81 return createNode();
82 case ProblemPackage.SCOPE_DECLARATION:
83 return createScopeDeclaration();
84 case ProblemPackage.TYPE_SCOPE:
85 return createTypeScope();
86 case ProblemPackage.RANGE_MULTIPLICITY:
87 return createRangeMultiplicity();
88 case ProblemPackage.EXACT_MULTIPLICITY:
89 return createExactMultiplicity();
90 case ProblemPackage.UNBOUNDED_MULTIPLICITY:
91 return createUnboundedMultiplicity();
92 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT:
93 return createVariableOrNodeArgument();
94 case ProblemPackage.ENUM_DECLARATION:
95 return createEnumDeclaration();
96 case ProblemPackage.INT_CONSTANT:
97 return createIntConstant();
98 case ProblemPackage.REAL_CONSTANT:
99 return createRealConstant();
100 case ProblemPackage.STRING_CONSTANT:
101 return createStringConstant();
102 case ProblemPackage.CONSTANT_ARGUMENT:
103 return createConstantArgument();
104 case ProblemPackage.NODE_ASSERTION_ARGUMENT:
105 return createNodeAssertionArgument();
106 case ProblemPackage.CONSTANT_ASSERTION_ARGUMENT:
107 return createConstantAssertionArgument();
108 case ProblemPackage.NODE_VALUE_ASSERTION:
109 return createNodeValueAssertion();
110 default:
111 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
112 }
113 }
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 @Override
121 public Object createFromString(EDataType eDataType, String initialValue) {
122 switch (eDataType.getClassifierID()) {
123 case ProblemPackage.LOGIC_VALUE:
124 return createLogicValueFromString(eDataType, initialValue);
125 default:
126 throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
127 }
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 @Override
136 public String convertToString(EDataType eDataType, Object instanceValue) {
137 switch (eDataType.getClassifierID()) {
138 case ProblemPackage.LOGIC_VALUE:
139 return convertLogicValueToString(eDataType, instanceValue);
140 default:
141 throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
142 }
143 }
144
145 /**
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 */
150 public Problem createProblem() {
151 ProblemImpl problem = new ProblemImpl();
152 return problem;
153 }
154
155 /**
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 public ClassDeclaration createClassDeclaration() {
161 ClassDeclarationImpl classDeclaration = new ClassDeclarationImpl();
162 return classDeclaration;
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 public ReferenceDeclaration createReferenceDeclaration() {
171 ReferenceDeclarationImpl referenceDeclaration = new ReferenceDeclarationImpl();
172 return referenceDeclaration;
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 public PredicateDefinition createPredicateDefinition() {
181 PredicateDefinitionImpl predicateDefinition = new PredicateDefinitionImpl();
182 return predicateDefinition;
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 public Parameter createParameter() {
191 ParameterImpl parameter = new ParameterImpl();
192 return parameter;
193 }
194
195 /**
196 * <!-- begin-user-doc -->
197 * <!-- end-user-doc -->
198 * @generated
199 */
200 public Conjunction createConjunction() {
201 ConjunctionImpl conjunction = new ConjunctionImpl();
202 return conjunction;
203 }
204
205 /**
206 * <!-- begin-user-doc -->
207 * <!-- end-user-doc -->
208 * @generated
209 */
210 public Atom createAtom() {
211 AtomImpl atom = new AtomImpl();
212 return atom;
213 }
214
215 /**
216 * <!-- begin-user-doc -->
217 * <!-- end-user-doc -->
218 * @generated
219 */
220 public ImplicitVariable createImplicitVariable() {
221 ImplicitVariableImpl implicitVariable = new ImplicitVariableImpl();
222 return implicitVariable;
223 }
224
225 /**
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 */
230 public NegativeLiteral createNegativeLiteral() {
231 NegativeLiteralImpl negativeLiteral = new NegativeLiteralImpl();
232 return negativeLiteral;
233 }
234
235 /**
236 * <!-- begin-user-doc -->
237 * <!-- end-user-doc -->
238 * @generated
239 */
240 public Assertion createAssertion() {
241 AssertionImpl assertion = new AssertionImpl();
242 return assertion;
243 }
244
245 /**
246 * <!-- begin-user-doc -->
247 * <!-- end-user-doc -->
248 * @generated
249 */
250 public Node createNode() {
251 NodeImpl node = new NodeImpl();
252 return node;
253 }
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 public ScopeDeclaration createScopeDeclaration() {
261 ScopeDeclarationImpl scopeDeclaration = new ScopeDeclarationImpl();
262 return scopeDeclaration;
263 }
264
265 /**
266 * <!-- begin-user-doc -->
267 * <!-- end-user-doc -->
268 * @generated
269 */
270 public TypeScope createTypeScope() {
271 TypeScopeImpl typeScope = new TypeScopeImpl();
272 return typeScope;
273 }
274
275 /**
276 * <!-- begin-user-doc -->
277 * <!-- end-user-doc -->
278 * @generated
279 */
280 public RangeMultiplicity createRangeMultiplicity() {
281 RangeMultiplicityImpl rangeMultiplicity = new RangeMultiplicityImpl();
282 return rangeMultiplicity;
283 }
284
285 /**
286 * <!-- begin-user-doc -->
287 * <!-- end-user-doc -->
288 * @generated
289 */
290 public ExactMultiplicity createExactMultiplicity() {
291 ExactMultiplicityImpl exactMultiplicity = new ExactMultiplicityImpl();
292 return exactMultiplicity;
293 }
294
295 /**
296 * <!-- begin-user-doc -->
297 * <!-- end-user-doc -->
298 * @generated
299 */
300 public UnboundedMultiplicity createUnboundedMultiplicity() {
301 UnboundedMultiplicityImpl unboundedMultiplicity = new UnboundedMultiplicityImpl();
302 return unboundedMultiplicity;
303 }
304
305 /**
306 * <!-- begin-user-doc -->
307 * <!-- end-user-doc -->
308 * @generated
309 */
310 public VariableOrNodeArgument createVariableOrNodeArgument() {
311 VariableOrNodeArgumentImpl variableOrNodeArgument = new VariableOrNodeArgumentImpl();
312 return variableOrNodeArgument;
313 }
314
315 /**
316 * <!-- begin-user-doc -->
317 * <!-- end-user-doc -->
318 * @generated
319 */
320 public EnumDeclaration createEnumDeclaration() {
321 EnumDeclarationImpl enumDeclaration = new EnumDeclarationImpl();
322 return enumDeclaration;
323 }
324
325 /**
326 * <!-- begin-user-doc -->
327 * <!-- end-user-doc -->
328 * @generated
329 */
330 public IntConstant createIntConstant() {
331 IntConstantImpl intConstant = new IntConstantImpl();
332 return intConstant;
333 }
334
335 /**
336 * <!-- begin-user-doc -->
337 * <!-- end-user-doc -->
338 * @generated
339 */
340 public RealConstant createRealConstant() {
341 RealConstantImpl realConstant = new RealConstantImpl();
342 return realConstant;
343 }
344
345 /**
346 * <!-- begin-user-doc -->
347 * <!-- end-user-doc -->
348 * @generated
349 */
350 public StringConstant createStringConstant() {
351 StringConstantImpl stringConstant = new StringConstantImpl();
352 return stringConstant;
353 }
354
355 /**
356 * <!-- begin-user-doc -->
357 * <!-- end-user-doc -->
358 * @generated
359 */
360 public ConstantArgument createConstantArgument() {
361 ConstantArgumentImpl constantArgument = new ConstantArgumentImpl();
362 return constantArgument;
363 }
364
365 /**
366 * <!-- begin-user-doc -->
367 * <!-- end-user-doc -->
368 * @generated
369 */
370 public NodeAssertionArgument createNodeAssertionArgument() {
371 NodeAssertionArgumentImpl nodeAssertionArgument = new NodeAssertionArgumentImpl();
372 return nodeAssertionArgument;
373 }
374
375 /**
376 * <!-- begin-user-doc -->
377 * <!-- end-user-doc -->
378 * @generated
379 */
380 public ConstantAssertionArgument createConstantAssertionArgument() {
381 ConstantAssertionArgumentImpl constantAssertionArgument = new ConstantAssertionArgumentImpl();
382 return constantAssertionArgument;
383 }
384
385 /**
386 * <!-- begin-user-doc -->
387 * <!-- end-user-doc -->
388 * @generated
389 */
390 public NodeValueAssertion createNodeValueAssertion() {
391 NodeValueAssertionImpl nodeValueAssertion = new NodeValueAssertionImpl();
392 return nodeValueAssertion;
393 }
394
395 /**
396 * <!-- begin-user-doc -->
397 * <!-- end-user-doc -->
398 * @generated
399 */
400 public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) {
401 LogicValue result = LogicValue.get(initialValue);
402 if (result == null)
403 throw new IllegalArgumentException(
404 "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
405 return result;
406 }
407
408 /**
409 * <!-- begin-user-doc -->
410 * <!-- end-user-doc -->
411 * @generated
412 */
413 public String convertLogicValueToString(EDataType eDataType, Object instanceValue) {
414 return instanceValue == null ? null : instanceValue.toString();
415 }
416
417 /**
418 * <!-- begin-user-doc -->
419 * <!-- end-user-doc -->
420 * @generated
421 */
422 public ProblemPackage getProblemPackage() {
423 return (ProblemPackage) getEPackage();
424 }
425
426 /**
427 * <!-- begin-user-doc -->
428 * <!-- end-user-doc -->
429 * @deprecated
430 * @generated
431 */
432 @Deprecated
433 public static ProblemPackage getPackage() {
434 return ProblemPackage.eINSTANCE;
435 }
436
437} //ProblemFactoryImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java
deleted file mode 100644
index 191021c4..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java
+++ /dev/null
@@ -1,188 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Node;
18import org.eclipse.viatra.solver.language.model.problem.Problem;
19import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
20import org.eclipse.viatra.solver.language.model.problem.Statement;
21
22/**
23 * <!-- begin-user-doc -->
24 * An implementation of the model object '<em><b>Problem</b></em>'.
25 * <!-- end-user-doc -->
26 * <p>
27 * The following features are implemented:
28 * </p>
29 * <ul>
30 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl#getNodes <em>Nodes</em>}</li>
31 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl#getStatements <em>Statements</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class ProblemImpl extends NamedElementImpl implements Problem {
37 /**
38 * The cached value of the '{@link #getNodes() <em>Nodes</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getNodes()
42 * @generated
43 * @ordered
44 */
45 protected EList<Node> nodes;
46
47 /**
48 * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @see #getStatements()
52 * @generated
53 * @ordered
54 */
55 protected EList<Statement> statements;
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 protected ProblemImpl() {
63 super();
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 @Override
72 protected EClass eStaticClass() {
73 return ProblemPackage.Literals.PROBLEM;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public EList<Node> getNodes() {
82 if (nodes == null) {
83 nodes = new EObjectContainmentEList<Node>(Node.class, this, ProblemPackage.PROBLEM__NODES);
84 }
85 return nodes;
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 public EList<Statement> getStatements() {
94 if (statements == null) {
95 statements = new EObjectContainmentEList<Statement>(Statement.class, this,
96 ProblemPackage.PROBLEM__STATEMENTS);
97 }
98 return statements;
99 }
100
101 /**
102 * <!-- begin-user-doc -->
103 * <!-- end-user-doc -->
104 * @generated
105 */
106 @Override
107 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
108 switch (featureID) {
109 case ProblemPackage.PROBLEM__NODES:
110 return ((InternalEList<?>) getNodes()).basicRemove(otherEnd, msgs);
111 case ProblemPackage.PROBLEM__STATEMENTS:
112 return ((InternalEList<?>) getStatements()).basicRemove(otherEnd, msgs);
113 }
114 return super.eInverseRemove(otherEnd, featureID, msgs);
115 }
116
117 /**
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 */
122 @Override
123 public Object eGet(int featureID, boolean resolve, boolean coreType) {
124 switch (featureID) {
125 case ProblemPackage.PROBLEM__NODES:
126 return getNodes();
127 case ProblemPackage.PROBLEM__STATEMENTS:
128 return getStatements();
129 }
130 return super.eGet(featureID, resolve, coreType);
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 @SuppressWarnings("unchecked")
139 @Override
140 public void eSet(int featureID, Object newValue) {
141 switch (featureID) {
142 case ProblemPackage.PROBLEM__NODES:
143 getNodes().clear();
144 getNodes().addAll((Collection<? extends Node>) newValue);
145 return;
146 case ProblemPackage.PROBLEM__STATEMENTS:
147 getStatements().clear();
148 getStatements().addAll((Collection<? extends Statement>) newValue);
149 return;
150 }
151 super.eSet(featureID, newValue);
152 }
153
154 /**
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @generated
158 */
159 @Override
160 public void eUnset(int featureID) {
161 switch (featureID) {
162 case ProblemPackage.PROBLEM__NODES:
163 getNodes().clear();
164 return;
165 case ProblemPackage.PROBLEM__STATEMENTS:
166 getStatements().clear();
167 return;
168 }
169 super.eUnset(featureID);
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 @Override
178 public boolean eIsSet(int featureID) {
179 switch (featureID) {
180 case ProblemPackage.PROBLEM__NODES:
181 return nodes != null && !nodes.isEmpty();
182 case ProblemPackage.PROBLEM__STATEMENTS:
183 return statements != null && !statements.isEmpty();
184 }
185 return super.eIsSet(featureID);
186 }
187
188} //ProblemImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
deleted file mode 100644
index ee72c538..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
+++ /dev/null
@@ -1,1535 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Argument;
14import org.eclipse.viatra.solver.language.model.problem.Assertion;
15import org.eclipse.viatra.solver.language.model.problem.AssertionArgument;
16import org.eclipse.viatra.solver.language.model.problem.Atom;
17import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
18import org.eclipse.viatra.solver.language.model.problem.Conjunction;
19import org.eclipse.viatra.solver.language.model.problem.Constant;
20import org.eclipse.viatra.solver.language.model.problem.ConstantArgument;
21import org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument;
22import org.eclipse.viatra.solver.language.model.problem.EnumDeclaration;
23import org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity;
24import org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier;
25import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
26import org.eclipse.viatra.solver.language.model.problem.IntConstant;
27import org.eclipse.viatra.solver.language.model.problem.Literal;
28import org.eclipse.viatra.solver.language.model.problem.LogicValue;
29import org.eclipse.viatra.solver.language.model.problem.Multiplicity;
30import org.eclipse.viatra.solver.language.model.problem.NamedElement;
31import org.eclipse.viatra.solver.language.model.problem.NegativeLiteral;
32import org.eclipse.viatra.solver.language.model.problem.Node;
33import org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument;
34import org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion;
35import org.eclipse.viatra.solver.language.model.problem.Parameter;
36import org.eclipse.viatra.solver.language.model.problem.PredicateDefinition;
37import org.eclipse.viatra.solver.language.model.problem.Problem;
38import org.eclipse.viatra.solver.language.model.problem.ProblemFactory;
39import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
40import org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity;
41import org.eclipse.viatra.solver.language.model.problem.RealConstant;
42import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
43import org.eclipse.viatra.solver.language.model.problem.Relation;
44import org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration;
45import org.eclipse.viatra.solver.language.model.problem.Statement;
46import org.eclipse.viatra.solver.language.model.problem.StringConstant;
47import org.eclipse.viatra.solver.language.model.problem.TypeScope;
48import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity;
49import org.eclipse.viatra.solver.language.model.problem.Variable;
50import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
51import org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument;
52
53/**
54 * <!-- begin-user-doc -->
55 * An implementation of the model <b>Package</b>.
56 * <!-- end-user-doc -->
57 * @generated
58 */
59public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
60 /**
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @generated
64 */
65 private EClass problemEClass = null;
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 private EClass relationEClass = null;
73
74 /**
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @generated
78 */
79 private EClass classDeclarationEClass = null;
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 private EClass referenceDeclarationEClass = null;
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 private EClass namedElementEClass = null;
94
95 /**
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @generated
99 */
100 private EClass predicateDefinitionEClass = null;
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 private EClass parameterEClass = null;
108
109 /**
110 * <!-- begin-user-doc -->
111 * <!-- end-user-doc -->
112 * @generated
113 */
114 private EClass variableEClass = null;
115
116 /**
117 * <!-- begin-user-doc -->
118 * <!-- end-user-doc -->
119 * @generated
120 */
121 private EClass conjunctionEClass = null;
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 private EClass literalEClass = null;
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 private EClass atomEClass = null;
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 private EClass implicitVariableEClass = null;
143
144 /**
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @generated
148 */
149 private EClass negativeLiteralEClass = null;
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 private EClass existentialQuantifierEClass = null;
157
158 /**
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @generated
162 */
163 private EClass assertionEClass = null;
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 private EClass nodeEClass = null;
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 private EClass scopeDeclarationEClass = null;
178
179 /**
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 */
184 private EClass statementEClass = null;
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 private EClass typeScopeEClass = null;
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 private EClass multiplicityEClass = null;
199
200 /**
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @generated
204 */
205 private EClass rangeMultiplicityEClass = null;
206
207 /**
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 */
212 private EClass exactMultiplicityEClass = null;
213
214 /**
215 * <!-- begin-user-doc -->
216 * <!-- end-user-doc -->
217 * @generated
218 */
219 private EClass unboundedMultiplicityEClass = null;
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 private EClass variableOrNodeArgumentEClass = null;
227
228 /**
229 * <!-- begin-user-doc -->
230 * <!-- end-user-doc -->
231 * @generated
232 */
233 private EClass argumentEClass = null;
234
235 /**
236 * <!-- begin-user-doc -->
237 * <!-- end-user-doc -->
238 * @generated
239 */
240 private EClass nodeAssertionArgumentEClass = null;
241
242 /**
243 * <!-- begin-user-doc -->
244 * <!-- end-user-doc -->
245 * @generated
246 */
247 private EClass assertionArgumentEClass = null;
248
249 /**
250 * <!-- begin-user-doc -->
251 * <!-- end-user-doc -->
252 * @generated
253 */
254 private EClass constantAssertionArgumentEClass = null;
255
256 /**
257 * <!-- begin-user-doc -->
258 * <!-- end-user-doc -->
259 * @generated
260 */
261 private EClass nodeValueAssertionEClass = null;
262
263 /**
264 * <!-- begin-user-doc -->
265 * <!-- end-user-doc -->
266 * @generated
267 */
268 private EClass enumDeclarationEClass = null;
269
270 /**
271 * <!-- begin-user-doc -->
272 * <!-- end-user-doc -->
273 * @generated
274 */
275 private EClass variableOrNodeEClass = null;
276
277 /**
278 * <!-- begin-user-doc -->
279 * <!-- end-user-doc -->
280 * @generated
281 */
282 private EClass constantEClass = null;
283
284 /**
285 * <!-- begin-user-doc -->
286 * <!-- end-user-doc -->
287 * @generated
288 */
289 private EClass intConstantEClass = null;
290
291 /**
292 * <!-- begin-user-doc -->
293 * <!-- end-user-doc -->
294 * @generated
295 */
296 private EClass realConstantEClass = null;
297
298 /**
299 * <!-- begin-user-doc -->
300 * <!-- end-user-doc -->
301 * @generated
302 */
303 private EClass stringConstantEClass = null;
304
305 /**
306 * <!-- begin-user-doc -->
307 * <!-- end-user-doc -->
308 * @generated
309 */
310 private EClass constantArgumentEClass = null;
311
312 /**
313 * <!-- begin-user-doc -->
314 * <!-- end-user-doc -->
315 * @generated
316 */
317 private EEnum logicValueEEnum = null;
318
319 /**
320 * Creates an instance of the model <b>Package</b>, registered with
321 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
322 * package URI value.
323 * <p>Note: the correct way to create the package is via the static
324 * factory method {@link #init init()}, which also performs
325 * initialization of the package, or returns the registered package,
326 * if one already exists.
327 * <!-- begin-user-doc -->
328 * <!-- end-user-doc -->
329 * @see org.eclipse.emf.ecore.EPackage.Registry
330 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#eNS_URI
331 * @see #init()
332 * @generated
333 */
334 private ProblemPackageImpl() {
335 super(eNS_URI, ProblemFactory.eINSTANCE);
336 }
337
338 /**
339 * <!-- begin-user-doc -->
340 * <!-- end-user-doc -->
341 * @generated
342 */
343 private static boolean isInited = false;
344
345 /**
346 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
347 *
348 * <p>This method is used to initialize {@link ProblemPackage#eINSTANCE} when that field is accessed.
349 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
350 * <!-- begin-user-doc -->
351 * <!-- end-user-doc -->
352 * @see #eNS_URI
353 * @see #createPackageContents()
354 * @see #initializePackageContents()
355 * @generated
356 */
357 public static ProblemPackage init() {
358 if (isInited)
359 return (ProblemPackage) EPackage.Registry.INSTANCE.getEPackage(ProblemPackage.eNS_URI);
360
361 // Obtain or create and register package
362 Object registeredProblemPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
363 ProblemPackageImpl theProblemPackage = registeredProblemPackage instanceof ProblemPackageImpl
364 ? (ProblemPackageImpl) registeredProblemPackage
365 : new ProblemPackageImpl();
366
367 isInited = true;
368
369 // Create package meta-data objects
370 theProblemPackage.createPackageContents();
371
372 // Initialize created meta-data
373 theProblemPackage.initializePackageContents();
374
375 // Mark meta-data to indicate it can't be changed
376 theProblemPackage.freeze();
377
378 // Update the registry and return the package
379 EPackage.Registry.INSTANCE.put(ProblemPackage.eNS_URI, theProblemPackage);
380 return theProblemPackage;
381 }
382
383 /**
384 * <!-- begin-user-doc -->
385 * <!-- end-user-doc -->
386 * @generated
387 */
388 public EClass getProblem() {
389 return problemEClass;
390 }
391
392 /**
393 * <!-- begin-user-doc -->
394 * <!-- end-user-doc -->
395 * @generated
396 */
397 public EReference getProblem_Nodes() {
398 return (EReference) problemEClass.getEStructuralFeatures().get(0);
399 }
400
401 /**
402 * <!-- begin-user-doc -->
403 * <!-- end-user-doc -->
404 * @generated
405 */
406 public EReference getProblem_Statements() {
407 return (EReference) problemEClass.getEStructuralFeatures().get(1);
408 }
409
410 /**
411 * <!-- begin-user-doc -->
412 * <!-- end-user-doc -->
413 * @generated
414 */
415 public EClass getRelation() {
416 return relationEClass;
417 }
418
419 /**
420 * <!-- begin-user-doc -->
421 * <!-- end-user-doc -->
422 * @generated
423 */
424 public EClass getClassDeclaration() {
425 return classDeclarationEClass;
426 }
427
428 /**
429 * <!-- begin-user-doc -->
430 * <!-- end-user-doc -->
431 * @generated
432 */
433 public EAttribute getClassDeclaration_Abstract() {
434 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(0);
435 }
436
437 /**
438 * <!-- begin-user-doc -->
439 * <!-- end-user-doc -->
440 * @generated
441 */
442 public EReference getClassDeclaration_SuperTypes() {
443 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(1);
444 }
445
446 /**
447 * <!-- begin-user-doc -->
448 * <!-- end-user-doc -->
449 * @generated
450 */
451 public EReference getClassDeclaration_ReferenceDeclarations() {
452 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(2);
453 }
454
455 /**
456 * <!-- begin-user-doc -->
457 * <!-- end-user-doc -->
458 * @generated
459 */
460 public EReference getClassDeclaration_NewNode() {
461 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(3);
462 }
463
464 /**
465 * <!-- begin-user-doc -->
466 * <!-- end-user-doc -->
467 * @generated
468 */
469 public EClass getReferenceDeclaration() {
470 return referenceDeclarationEClass;
471 }
472
473 /**
474 * <!-- begin-user-doc -->
475 * <!-- end-user-doc -->
476 * @generated
477 */
478 public EReference getReferenceDeclaration_ReferenceType() {
479 return (EReference) referenceDeclarationEClass.getEStructuralFeatures().get(0);
480 }
481
482 /**
483 * <!-- begin-user-doc -->
484 * <!-- end-user-doc -->
485 * @generated
486 */
487 public EReference getReferenceDeclaration_Opposite() {
488 return (EReference) referenceDeclarationEClass.getEStructuralFeatures().get(1);
489 }
490
491 /**
492 * <!-- begin-user-doc -->
493 * <!-- end-user-doc -->
494 * @generated
495 */
496 public EAttribute getReferenceDeclaration_Containment() {
497 return (EAttribute) referenceDeclarationEClass.getEStructuralFeatures().get(2);
498 }
499
500 /**
501 * <!-- begin-user-doc -->
502 * <!-- end-user-doc -->
503 * @generated
504 */
505 public EReference getReferenceDeclaration_Multiplicity() {
506 return (EReference) referenceDeclarationEClass.getEStructuralFeatures().get(3);
507 }
508
509 /**
510 * <!-- begin-user-doc -->
511 * <!-- end-user-doc -->
512 * @generated
513 */
514 public EClass getNamedElement() {
515 return namedElementEClass;
516 }
517
518 /**
519 * <!-- begin-user-doc -->
520 * <!-- end-user-doc -->
521 * @generated
522 */
523 public EAttribute getNamedElement_Name() {
524 return (EAttribute) namedElementEClass.getEStructuralFeatures().get(0);
525 }
526
527 /**
528 * <!-- begin-user-doc -->
529 * <!-- end-user-doc -->
530 * @generated
531 */
532 public EClass getPredicateDefinition() {
533 return predicateDefinitionEClass;
534 }
535
536 /**
537 * <!-- begin-user-doc -->
538 * <!-- end-user-doc -->
539 * @generated
540 */
541 public EAttribute getPredicateDefinition_Error() {
542 return (EAttribute) predicateDefinitionEClass.getEStructuralFeatures().get(0);
543 }
544
545 /**
546 * <!-- begin-user-doc -->
547 * <!-- end-user-doc -->
548 * @generated
549 */
550 public EReference getPredicateDefinition_Parameters() {
551 return (EReference) predicateDefinitionEClass.getEStructuralFeatures().get(1);
552 }
553
554 /**
555 * <!-- begin-user-doc -->
556 * <!-- end-user-doc -->
557 * @generated
558 */
559 public EReference getPredicateDefinition_Bodies() {
560 return (EReference) predicateDefinitionEClass.getEStructuralFeatures().get(2);
561 }
562
563 /**
564 * <!-- begin-user-doc -->
565 * <!-- end-user-doc -->
566 * @generated
567 */
568 public EClass getParameter() {
569 return parameterEClass;
570 }
571
572 /**
573 * <!-- begin-user-doc -->
574 * <!-- end-user-doc -->
575 * @generated
576 */
577 public EReference getParameter_ParameterType() {
578 return (EReference) parameterEClass.getEStructuralFeatures().get(0);
579 }
580
581 /**
582 * <!-- begin-user-doc -->
583 * <!-- end-user-doc -->
584 * @generated
585 */
586 public EClass getVariable() {
587 return variableEClass;
588 }
589
590 /**
591 * <!-- begin-user-doc -->
592 * <!-- end-user-doc -->
593 * @generated
594 */
595 public EClass getConjunction() {
596 return conjunctionEClass;
597 }
598
599 /**
600 * <!-- begin-user-doc -->
601 * <!-- end-user-doc -->
602 * @generated
603 */
604 public EReference getConjunction_Literals() {
605 return (EReference) conjunctionEClass.getEStructuralFeatures().get(0);
606 }
607
608 /**
609 * <!-- begin-user-doc -->
610 * <!-- end-user-doc -->
611 * @generated
612 */
613 public EClass getLiteral() {
614 return literalEClass;
615 }
616
617 /**
618 * <!-- begin-user-doc -->
619 * <!-- end-user-doc -->
620 * @generated
621 */
622 public EClass getAtom() {
623 return atomEClass;
624 }
625
626 /**
627 * <!-- begin-user-doc -->
628 * <!-- end-user-doc -->
629 * @generated
630 */
631 public EReference getAtom_Relation() {
632 return (EReference) atomEClass.getEStructuralFeatures().get(0);
633 }
634
635 /**
636 * <!-- begin-user-doc -->
637 * <!-- end-user-doc -->
638 * @generated
639 */
640 public EReference getAtom_Arguments() {
641 return (EReference) atomEClass.getEStructuralFeatures().get(2);
642 }
643
644 /**
645 * <!-- begin-user-doc -->
646 * <!-- end-user-doc -->
647 * @generated
648 */
649 public EAttribute getAtom_TransitiveClosure() {
650 return (EAttribute) atomEClass.getEStructuralFeatures().get(1);
651 }
652
653 /**
654 * <!-- begin-user-doc -->
655 * <!-- end-user-doc -->
656 * @generated
657 */
658 public EClass getImplicitVariable() {
659 return implicitVariableEClass;
660 }
661
662 /**
663 * <!-- begin-user-doc -->
664 * <!-- end-user-doc -->
665 * @generated
666 */
667 public EClass getNegativeLiteral() {
668 return negativeLiteralEClass;
669 }
670
671 /**
672 * <!-- begin-user-doc -->
673 * <!-- end-user-doc -->
674 * @generated
675 */
676 public EReference getNegativeLiteral_Atom() {
677 return (EReference) negativeLiteralEClass.getEStructuralFeatures().get(0);
678 }
679
680 /**
681 * <!-- begin-user-doc -->
682 * <!-- end-user-doc -->
683 * @generated
684 */
685 public EClass getExistentialQuantifier() {
686 return existentialQuantifierEClass;
687 }
688
689 /**
690 * <!-- begin-user-doc -->
691 * <!-- end-user-doc -->
692 * @generated
693 */
694 public EReference getExistentialQuantifier_ImplicitVariables() {
695 return (EReference) existentialQuantifierEClass.getEStructuralFeatures().get(0);
696 }
697
698 /**
699 * <!-- begin-user-doc -->
700 * <!-- end-user-doc -->
701 * @generated
702 */
703 public EClass getAssertion() {
704 return assertionEClass;
705 }
706
707 /**
708 * <!-- begin-user-doc -->
709 * <!-- end-user-doc -->
710 * @generated
711 */
712 public EReference getAssertion_Relation() {
713 return (EReference) assertionEClass.getEStructuralFeatures().get(0);
714 }
715
716 /**
717 * <!-- begin-user-doc -->
718 * <!-- end-user-doc -->
719 * @generated
720 */
721 public EReference getAssertion_Arguments() {
722 return (EReference) assertionEClass.getEStructuralFeatures().get(2);
723 }
724
725 /**
726 * <!-- begin-user-doc -->
727 * <!-- end-user-doc -->
728 * @generated
729 */
730 public EAttribute getAssertion_Value() {
731 return (EAttribute) assertionEClass.getEStructuralFeatures().get(1);
732 }
733
734 /**
735 * <!-- begin-user-doc -->
736 * <!-- end-user-doc -->
737 * @generated
738 */
739 public EClass getNode() {
740 return nodeEClass;
741 }
742
743 /**
744 * <!-- begin-user-doc -->
745 * <!-- end-user-doc -->
746 * @generated
747 */
748 public EClass getScopeDeclaration() {
749 return scopeDeclarationEClass;
750 }
751
752 /**
753 * <!-- begin-user-doc -->
754 * <!-- end-user-doc -->
755 * @generated
756 */
757 public EReference getScopeDeclaration_TypeScopes() {
758 return (EReference) scopeDeclarationEClass.getEStructuralFeatures().get(0);
759 }
760
761 /**
762 * <!-- begin-user-doc -->
763 * <!-- end-user-doc -->
764 * @generated
765 */
766 public EClass getStatement() {
767 return statementEClass;
768 }
769
770 /**
771 * <!-- begin-user-doc -->
772 * <!-- end-user-doc -->
773 * @generated
774 */
775 public EClass getTypeScope() {
776 return typeScopeEClass;
777 }
778
779 /**
780 * <!-- begin-user-doc -->
781 * <!-- end-user-doc -->
782 * @generated
783 */
784 public EReference getTypeScope_TargetType() {
785 return (EReference) typeScopeEClass.getEStructuralFeatures().get(0);
786 }
787
788 /**
789 * <!-- begin-user-doc -->
790 * <!-- end-user-doc -->
791 * @generated
792 */
793 public EAttribute getTypeScope_Increment() {
794 return (EAttribute) typeScopeEClass.getEStructuralFeatures().get(1);
795 }
796
797 /**
798 * <!-- begin-user-doc -->
799 * <!-- end-user-doc -->
800 * @generated
801 */
802 public EReference getTypeScope_Multiplicity() {
803 return (EReference) typeScopeEClass.getEStructuralFeatures().get(2);
804 }
805
806 /**
807 * <!-- begin-user-doc -->
808 * <!-- end-user-doc -->
809 * @generated
810 */
811 public EClass getMultiplicity() {
812 return multiplicityEClass;
813 }
814
815 /**
816 * <!-- begin-user-doc -->
817 * <!-- end-user-doc -->
818 * @generated
819 */
820 public EClass getRangeMultiplicity() {
821 return rangeMultiplicityEClass;
822 }
823
824 /**
825 * <!-- begin-user-doc -->
826 * <!-- end-user-doc -->
827 * @generated
828 */
829 public EAttribute getRangeMultiplicity_LowerBound() {
830 return (EAttribute) rangeMultiplicityEClass.getEStructuralFeatures().get(0);
831 }
832
833 /**
834 * <!-- begin-user-doc -->
835 * <!-- end-user-doc -->
836 * @generated
837 */
838 public EAttribute getRangeMultiplicity_UpperBound() {
839 return (EAttribute) rangeMultiplicityEClass.getEStructuralFeatures().get(1);
840 }
841
842 /**
843 * <!-- begin-user-doc -->
844 * <!-- end-user-doc -->
845 * @generated
846 */
847 public EClass getExactMultiplicity() {
848 return exactMultiplicityEClass;
849 }
850
851 /**
852 * <!-- begin-user-doc -->
853 * <!-- end-user-doc -->
854 * @generated
855 */
856 public EAttribute getExactMultiplicity_ExactValue() {
857 return (EAttribute) exactMultiplicityEClass.getEStructuralFeatures().get(0);
858 }
859
860 /**
861 * <!-- begin-user-doc -->
862 * <!-- end-user-doc -->
863 * @generated
864 */
865 public EClass getUnboundedMultiplicity() {
866 return unboundedMultiplicityEClass;
867 }
868
869 /**
870 * <!-- begin-user-doc -->
871 * <!-- end-user-doc -->
872 * @generated
873 */
874 public EClass getVariableOrNodeArgument() {
875 return variableOrNodeArgumentEClass;
876 }
877
878 /**
879 * <!-- begin-user-doc -->
880 * <!-- end-user-doc -->
881 * @generated
882 */
883 public EReference getVariableOrNodeArgument_VariableOrNode() {
884 return (EReference) variableOrNodeArgumentEClass.getEStructuralFeatures().get(0);
885 }
886
887 /**
888 * <!-- begin-user-doc -->
889 * <!-- end-user-doc -->
890 * @generated
891 */
892 public EReference getVariableOrNodeArgument_SingletonVariable() {
893 return (EReference) variableOrNodeArgumentEClass.getEStructuralFeatures().get(1);
894 }
895
896 /**
897 * <!-- begin-user-doc -->
898 * <!-- end-user-doc -->
899 * @generated
900 */
901 public EClass getArgument() {
902 return argumentEClass;
903 }
904
905 /**
906 * <!-- begin-user-doc -->
907 * <!-- end-user-doc -->
908 * @generated
909 */
910 public EClass getNodeAssertionArgument() {
911 return nodeAssertionArgumentEClass;
912 }
913
914 /**
915 * <!-- begin-user-doc -->
916 * <!-- end-user-doc -->
917 * @generated
918 */
919 public EReference getNodeAssertionArgument_Node() {
920 return (EReference) nodeAssertionArgumentEClass.getEStructuralFeatures().get(0);
921 }
922
923 /**
924 * <!-- begin-user-doc -->
925 * <!-- end-user-doc -->
926 * @generated
927 */
928 public EClass getAssertionArgument() {
929 return assertionArgumentEClass;
930 }
931
932 /**
933 * <!-- begin-user-doc -->
934 * <!-- end-user-doc -->
935 * @generated
936 */
937 public EClass getConstantAssertionArgument() {
938 return constantAssertionArgumentEClass;
939 }
940
941 /**
942 * <!-- begin-user-doc -->
943 * <!-- end-user-doc -->
944 * @generated
945 */
946 public EReference getConstantAssertionArgument_Constant() {
947 return (EReference) constantAssertionArgumentEClass.getEStructuralFeatures().get(0);
948 }
949
950 /**
951 * <!-- begin-user-doc -->
952 * <!-- end-user-doc -->
953 * @generated
954 */
955 public EClass getNodeValueAssertion() {
956 return nodeValueAssertionEClass;
957 }
958
959 /**
960 * <!-- begin-user-doc -->
961 * <!-- end-user-doc -->
962 * @generated
963 */
964 public EReference getNodeValueAssertion_Node() {
965 return (EReference) nodeValueAssertionEClass.getEStructuralFeatures().get(0);
966 }
967
968 /**
969 * <!-- begin-user-doc -->
970 * <!-- end-user-doc -->
971 * @generated
972 */
973 public EReference getNodeValueAssertion_Value() {
974 return (EReference) nodeValueAssertionEClass.getEStructuralFeatures().get(1);
975 }
976
977 /**
978 * <!-- begin-user-doc -->
979 * <!-- end-user-doc -->
980 * @generated
981 */
982 public EClass getEnumDeclaration() {
983 return enumDeclarationEClass;
984 }
985
986 /**
987 * <!-- begin-user-doc -->
988 * <!-- end-user-doc -->
989 * @generated
990 */
991 public EReference getEnumDeclaration_Literals() {
992 return (EReference) enumDeclarationEClass.getEStructuralFeatures().get(0);
993 }
994
995 /**
996 * <!-- begin-user-doc -->
997 * <!-- end-user-doc -->
998 * @generated
999 */
1000 public EClass getVariableOrNode() {
1001 return variableOrNodeEClass;
1002 }
1003
1004 /**
1005 * <!-- begin-user-doc -->
1006 * <!-- end-user-doc -->
1007 * @generated
1008 */
1009 public EClass getConstant() {
1010 return constantEClass;
1011 }
1012
1013 /**
1014 * <!-- begin-user-doc -->
1015 * <!-- end-user-doc -->
1016 * @generated
1017 */
1018 public EClass getIntConstant() {
1019 return intConstantEClass;
1020 }
1021
1022 /**
1023 * <!-- begin-user-doc -->
1024 * <!-- end-user-doc -->
1025 * @generated
1026 */
1027 public EAttribute getIntConstant_IntValue() {
1028 return (EAttribute) intConstantEClass.getEStructuralFeatures().get(0);
1029 }
1030
1031 /**
1032 * <!-- begin-user-doc -->
1033 * <!-- end-user-doc -->
1034 * @generated
1035 */
1036 public EClass getRealConstant() {
1037 return realConstantEClass;
1038 }
1039
1040 /**
1041 * <!-- begin-user-doc -->
1042 * <!-- end-user-doc -->
1043 * @generated
1044 */
1045 public EAttribute getRealConstant_RealValue() {
1046 return (EAttribute) realConstantEClass.getEStructuralFeatures().get(0);
1047 }
1048
1049 /**
1050 * <!-- begin-user-doc -->
1051 * <!-- end-user-doc -->
1052 * @generated
1053 */
1054 public EClass getStringConstant() {
1055 return stringConstantEClass;
1056 }
1057
1058 /**
1059 * <!-- begin-user-doc -->
1060 * <!-- end-user-doc -->
1061 * @generated
1062 */
1063 public EAttribute getStringConstant_StringValue() {
1064 return (EAttribute) stringConstantEClass.getEStructuralFeatures().get(0);
1065 }
1066
1067 /**
1068 * <!-- begin-user-doc -->
1069 * <!-- end-user-doc -->
1070 * @generated
1071 */
1072 public EClass getConstantArgument() {
1073 return constantArgumentEClass;
1074 }
1075
1076 /**
1077 * <!-- begin-user-doc -->
1078 * <!-- end-user-doc -->
1079 * @generated
1080 */
1081 public EReference getConstantArgument_Constant() {
1082 return (EReference) constantArgumentEClass.getEStructuralFeatures().get(0);
1083 }
1084
1085 /**
1086 * <!-- begin-user-doc -->
1087 * <!-- end-user-doc -->
1088 * @generated
1089 */
1090 public EEnum getLogicValue() {
1091 return logicValueEEnum;
1092 }
1093
1094 /**
1095 * <!-- begin-user-doc -->
1096 * <!-- end-user-doc -->
1097 * @generated
1098 */
1099 public ProblemFactory getProblemFactory() {
1100 return (ProblemFactory) getEFactoryInstance();
1101 }
1102
1103 /**
1104 * <!-- begin-user-doc -->
1105 * <!-- end-user-doc -->
1106 * @generated
1107 */
1108 private boolean isCreated = false;
1109
1110 /**
1111 * Creates the meta-model objects for the package. This method is
1112 * guarded to have no affect on any invocation but its first.
1113 * <!-- begin-user-doc -->
1114 * <!-- end-user-doc -->
1115 * @generated
1116 */
1117 public void createPackageContents() {
1118 if (isCreated)
1119 return;
1120 isCreated = true;
1121
1122 // Create classes and their features
1123 problemEClass = createEClass(PROBLEM);
1124 createEReference(problemEClass, PROBLEM__NODES);
1125 createEReference(problemEClass, PROBLEM__STATEMENTS);
1126
1127 relationEClass = createEClass(RELATION);
1128
1129 classDeclarationEClass = createEClass(CLASS_DECLARATION);
1130 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT);
1131 createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPER_TYPES);
1132 createEReference(classDeclarationEClass, CLASS_DECLARATION__REFERENCE_DECLARATIONS);
1133 createEReference(classDeclarationEClass, CLASS_DECLARATION__NEW_NODE);
1134
1135 referenceDeclarationEClass = createEClass(REFERENCE_DECLARATION);
1136 createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__REFERENCE_TYPE);
1137 createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__OPPOSITE);
1138 createEAttribute(referenceDeclarationEClass, REFERENCE_DECLARATION__CONTAINMENT);
1139 createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__MULTIPLICITY);
1140
1141 namedElementEClass = createEClass(NAMED_ELEMENT);
1142 createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME);
1143
1144 predicateDefinitionEClass = createEClass(PREDICATE_DEFINITION);
1145 createEAttribute(predicateDefinitionEClass, PREDICATE_DEFINITION__ERROR);
1146 createEReference(predicateDefinitionEClass, PREDICATE_DEFINITION__PARAMETERS);
1147 createEReference(predicateDefinitionEClass, PREDICATE_DEFINITION__BODIES);
1148
1149 parameterEClass = createEClass(PARAMETER);
1150 createEReference(parameterEClass, PARAMETER__PARAMETER_TYPE);
1151
1152 variableEClass = createEClass(VARIABLE);
1153
1154 conjunctionEClass = createEClass(CONJUNCTION);
1155 createEReference(conjunctionEClass, CONJUNCTION__LITERALS);
1156
1157 literalEClass = createEClass(LITERAL);
1158
1159 atomEClass = createEClass(ATOM);
1160 createEReference(atomEClass, ATOM__RELATION);
1161 createEAttribute(atomEClass, ATOM__TRANSITIVE_CLOSURE);
1162 createEReference(atomEClass, ATOM__ARGUMENTS);
1163
1164 implicitVariableEClass = createEClass(IMPLICIT_VARIABLE);
1165
1166 negativeLiteralEClass = createEClass(NEGATIVE_LITERAL);
1167 createEReference(negativeLiteralEClass, NEGATIVE_LITERAL__ATOM);
1168
1169 existentialQuantifierEClass = createEClass(EXISTENTIAL_QUANTIFIER);
1170 createEReference(existentialQuantifierEClass, EXISTENTIAL_QUANTIFIER__IMPLICIT_VARIABLES);
1171
1172 assertionEClass = createEClass(ASSERTION);
1173 createEReference(assertionEClass, ASSERTION__RELATION);
1174 createEAttribute(assertionEClass, ASSERTION__VALUE);
1175 createEReference(assertionEClass, ASSERTION__ARGUMENTS);
1176
1177 nodeEClass = createEClass(NODE);
1178
1179 scopeDeclarationEClass = createEClass(SCOPE_DECLARATION);
1180 createEReference(scopeDeclarationEClass, SCOPE_DECLARATION__TYPE_SCOPES);
1181
1182 statementEClass = createEClass(STATEMENT);
1183
1184 typeScopeEClass = createEClass(TYPE_SCOPE);
1185 createEReference(typeScopeEClass, TYPE_SCOPE__TARGET_TYPE);
1186 createEAttribute(typeScopeEClass, TYPE_SCOPE__INCREMENT);
1187 createEReference(typeScopeEClass, TYPE_SCOPE__MULTIPLICITY);
1188
1189 multiplicityEClass = createEClass(MULTIPLICITY);
1190
1191 rangeMultiplicityEClass = createEClass(RANGE_MULTIPLICITY);
1192 createEAttribute(rangeMultiplicityEClass, RANGE_MULTIPLICITY__LOWER_BOUND);
1193 createEAttribute(rangeMultiplicityEClass, RANGE_MULTIPLICITY__UPPER_BOUND);
1194
1195 exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY);
1196 createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__EXACT_VALUE);
1197
1198 unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY);
1199
1200 variableOrNodeArgumentEClass = createEClass(VARIABLE_OR_NODE_ARGUMENT);
1201 createEReference(variableOrNodeArgumentEClass, VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE);
1202 createEReference(variableOrNodeArgumentEClass, VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE);
1203
1204 enumDeclarationEClass = createEClass(ENUM_DECLARATION);
1205 createEReference(enumDeclarationEClass, ENUM_DECLARATION__LITERALS);
1206
1207 variableOrNodeEClass = createEClass(VARIABLE_OR_NODE);
1208
1209 constantEClass = createEClass(CONSTANT);
1210
1211 intConstantEClass = createEClass(INT_CONSTANT);
1212 createEAttribute(intConstantEClass, INT_CONSTANT__INT_VALUE);
1213
1214 realConstantEClass = createEClass(REAL_CONSTANT);
1215 createEAttribute(realConstantEClass, REAL_CONSTANT__REAL_VALUE);
1216
1217 stringConstantEClass = createEClass(STRING_CONSTANT);
1218 createEAttribute(stringConstantEClass, STRING_CONSTANT__STRING_VALUE);
1219
1220 constantArgumentEClass = createEClass(CONSTANT_ARGUMENT);
1221 createEReference(constantArgumentEClass, CONSTANT_ARGUMENT__CONSTANT);
1222
1223 argumentEClass = createEClass(ARGUMENT);
1224
1225 nodeAssertionArgumentEClass = createEClass(NODE_ASSERTION_ARGUMENT);
1226 createEReference(nodeAssertionArgumentEClass, NODE_ASSERTION_ARGUMENT__NODE);
1227
1228 assertionArgumentEClass = createEClass(ASSERTION_ARGUMENT);
1229
1230 constantAssertionArgumentEClass = createEClass(CONSTANT_ASSERTION_ARGUMENT);
1231 createEReference(constantAssertionArgumentEClass, CONSTANT_ASSERTION_ARGUMENT__CONSTANT);
1232
1233 nodeValueAssertionEClass = createEClass(NODE_VALUE_ASSERTION);
1234 createEReference(nodeValueAssertionEClass, NODE_VALUE_ASSERTION__NODE);
1235 createEReference(nodeValueAssertionEClass, NODE_VALUE_ASSERTION__VALUE);
1236
1237 // Create enums
1238 logicValueEEnum = createEEnum(LOGIC_VALUE);
1239 }
1240
1241 /**
1242 * <!-- begin-user-doc -->
1243 * <!-- end-user-doc -->
1244 * @generated
1245 */
1246 private boolean isInitialized = false;
1247
1248 /**
1249 * Complete the initialization of the package and its meta-model. This
1250 * method is guarded to have no affect on any invocation but its first.
1251 * <!-- begin-user-doc -->
1252 * <!-- end-user-doc -->
1253 * @generated
1254 */
1255 public void initializePackageContents() {
1256 if (isInitialized)
1257 return;
1258 isInitialized = true;
1259
1260 // Initialize package
1261 setName(eNAME);
1262 setNsPrefix(eNS_PREFIX);
1263 setNsURI(eNS_URI);
1264
1265 // Create type parameters
1266
1267 // Set bounds for type parameters
1268
1269 // Add supertypes to classes
1270 problemEClass.getESuperTypes().add(this.getNamedElement());
1271 relationEClass.getESuperTypes().add(this.getNamedElement());
1272 classDeclarationEClass.getESuperTypes().add(this.getRelation());
1273 classDeclarationEClass.getESuperTypes().add(this.getStatement());
1274 referenceDeclarationEClass.getESuperTypes().add(this.getRelation());
1275 predicateDefinitionEClass.getESuperTypes().add(this.getRelation());
1276 predicateDefinitionEClass.getESuperTypes().add(this.getStatement());
1277 parameterEClass.getESuperTypes().add(this.getVariable());
1278 variableEClass.getESuperTypes().add(this.getVariableOrNode());
1279 conjunctionEClass.getESuperTypes().add(this.getExistentialQuantifier());
1280 atomEClass.getESuperTypes().add(this.getLiteral());
1281 implicitVariableEClass.getESuperTypes().add(this.getVariable());
1282 negativeLiteralEClass.getESuperTypes().add(this.getExistentialQuantifier());
1283 negativeLiteralEClass.getESuperTypes().add(this.getLiteral());
1284 assertionEClass.getESuperTypes().add(this.getStatement());
1285 nodeEClass.getESuperTypes().add(this.getVariableOrNode());
1286 scopeDeclarationEClass.getESuperTypes().add(this.getStatement());
1287 rangeMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1288 exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1289 unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1290 variableOrNodeArgumentEClass.getESuperTypes().add(this.getArgument());
1291 enumDeclarationEClass.getESuperTypes().add(this.getRelation());
1292 enumDeclarationEClass.getESuperTypes().add(this.getStatement());
1293 variableOrNodeEClass.getESuperTypes().add(this.getNamedElement());
1294 intConstantEClass.getESuperTypes().add(this.getConstant());
1295 realConstantEClass.getESuperTypes().add(this.getConstant());
1296 stringConstantEClass.getESuperTypes().add(this.getConstant());
1297 constantArgumentEClass.getESuperTypes().add(this.getArgument());
1298 nodeAssertionArgumentEClass.getESuperTypes().add(this.getAssertionArgument());
1299 constantAssertionArgumentEClass.getESuperTypes().add(this.getAssertionArgument());
1300 nodeValueAssertionEClass.getESuperTypes().add(this.getStatement());
1301
1302 // Initialize classes, features, and operations; add parameters
1303 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1304 initEReference(getProblem_Nodes(), this.getNode(), null, "nodes", null, 0, -1, Problem.class, !IS_TRANSIENT,
1305 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
1306 IS_ORDERED);
1307 initEReference(getProblem_Statements(), this.getStatement(), null, "statements", null, 0, -1, Problem.class,
1308 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1309 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1310
1311 initEClass(relationEClass, Relation.class, "Relation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1312
1313 initEClass(classDeclarationEClass, ClassDeclaration.class, "ClassDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1314 IS_GENERATED_INSTANCE_CLASS);
1315 initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1,
1316 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1317 !IS_DERIVED, IS_ORDERED);
1318 initEReference(getClassDeclaration_SuperTypes(), this.getRelation(), null, "superTypes", null, 0, -1,
1319 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1320 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1321 initEReference(getClassDeclaration_ReferenceDeclarations(), this.getReferenceDeclaration(), null,
1322 "referenceDeclarations", null, 0, -1, ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE,
1323 IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1324 initEReference(getClassDeclaration_NewNode(), this.getNode(), null, "newNode", null, 0, 1,
1325 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1326 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1327
1328 initEClass(referenceDeclarationEClass, ReferenceDeclaration.class, "ReferenceDeclaration", !IS_ABSTRACT,
1329 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1330 initEReference(getReferenceDeclaration_ReferenceType(), this.getRelation(), null, "referenceType", null, 0, 1,
1331 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1332 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1333 initEReference(getReferenceDeclaration_Opposite(), this.getReferenceDeclaration(), null, "opposite", null, 0, 1,
1334 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1335 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1336 initEAttribute(getReferenceDeclaration_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1,
1337 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
1338 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1339 initEReference(getReferenceDeclaration_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1,
1340 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1341 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1342
1343 initEClass(namedElementEClass, NamedElement.class, "NamedElement", IS_ABSTRACT, !IS_INTERFACE,
1344 IS_GENERATED_INSTANCE_CLASS);
1345 initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedElement.class,
1346 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1347
1348 initEClass(predicateDefinitionEClass, PredicateDefinition.class, "PredicateDefinition", !IS_ABSTRACT,
1349 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1350 initEAttribute(getPredicateDefinition_Error(), ecorePackage.getEBoolean(), "error", null, 0, 1,
1351 PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
1352 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1353 initEReference(getPredicateDefinition_Parameters(), this.getParameter(), null, "parameters", null, 0, -1,
1354 PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1355 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1356 initEReference(getPredicateDefinition_Bodies(), this.getConjunction(), null, "bodies", null, 0, -1,
1357 PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1358 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1359
1360 initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE,
1361 IS_GENERATED_INSTANCE_CLASS);
1362 initEReference(getParameter_ParameterType(), this.getRelation(), null, "parameterType", null, 0, 1,
1363 Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1364 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1365
1366 initEClass(variableEClass, Variable.class, "Variable", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1367
1368 initEClass(conjunctionEClass, Conjunction.class, "Conjunction", !IS_ABSTRACT, !IS_INTERFACE,
1369 IS_GENERATED_INSTANCE_CLASS);
1370 initEReference(getConjunction_Literals(), this.getLiteral(), null, "literals", null, 0, -1, Conjunction.class,
1371 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1372 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1373
1374 initEClass(literalEClass, Literal.class, "Literal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1375
1376 initEClass(atomEClass, Atom.class, "Atom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1377 initEReference(getAtom_Relation(), this.getRelation(), null, "relation", null, 0, 1, Atom.class, !IS_TRANSIENT,
1378 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
1379 IS_ORDERED);
1380 initEAttribute(getAtom_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0, 1,
1381 Atom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
1382 IS_ORDERED);
1383 initEReference(getAtom_Arguments(), this.getArgument(), null, "arguments", null, 0, -1, Atom.class,
1384 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1385 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1386
1387 initEClass(implicitVariableEClass, ImplicitVariable.class, "ImplicitVariable", !IS_ABSTRACT, !IS_INTERFACE,
1388 IS_GENERATED_INSTANCE_CLASS);
1389
1390 initEClass(negativeLiteralEClass, NegativeLiteral.class, "NegativeLiteral", !IS_ABSTRACT, !IS_INTERFACE,
1391 IS_GENERATED_INSTANCE_CLASS);
1392 initEReference(getNegativeLiteral_Atom(), this.getAtom(), null, "atom", null, 0, 1, NegativeLiteral.class,
1393 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1394 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1395
1396 initEClass(existentialQuantifierEClass, ExistentialQuantifier.class, "ExistentialQuantifier", IS_ABSTRACT,
1397 IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1398 initEReference(getExistentialQuantifier_ImplicitVariables(), this.getImplicitVariable(), null,
1399 "implicitVariables", null, 0, -1, ExistentialQuantifier.class, !IS_TRANSIENT, !IS_VOLATILE,
1400 IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1401
1402 initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE,
1403 IS_GENERATED_INSTANCE_CLASS);
1404 initEReference(getAssertion_Relation(), this.getRelation(), null, "relation", null, 0, 1, Assertion.class,
1405 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1406 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1407 initEAttribute(getAssertion_Value(), this.getLogicValue(), "value", null, 0, 1, Assertion.class, !IS_TRANSIENT,
1408 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1409 initEReference(getAssertion_Arguments(), this.getAssertionArgument(), null, "arguments", null, 0, -1,
1410 Assertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1411 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1412
1413 initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1414
1415 initEClass(scopeDeclarationEClass, ScopeDeclaration.class, "ScopeDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1416 IS_GENERATED_INSTANCE_CLASS);
1417 initEReference(getScopeDeclaration_TypeScopes(), this.getTypeScope(), null, "typeScopes", null, 0, -1,
1418 ScopeDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1419 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1420
1421 initEClass(statementEClass, Statement.class, "Statement", IS_ABSTRACT, IS_INTERFACE,
1422 IS_GENERATED_INSTANCE_CLASS);
1423
1424 initEClass(typeScopeEClass, TypeScope.class, "TypeScope", !IS_ABSTRACT, !IS_INTERFACE,
1425 IS_GENERATED_INSTANCE_CLASS);
1426 initEReference(getTypeScope_TargetType(), this.getClassDeclaration(), null, "targetType", null, 0, 1,
1427 TypeScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1428 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1429 initEAttribute(getTypeScope_Increment(), ecorePackage.getEBoolean(), "increment", null, 0, 1, TypeScope.class,
1430 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1431 initEReference(getTypeScope_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1,
1432 TypeScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1433 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1434
1435 initEClass(multiplicityEClass, Multiplicity.class, "Multiplicity", IS_ABSTRACT, !IS_INTERFACE,
1436 IS_GENERATED_INSTANCE_CLASS);
1437
1438 initEClass(rangeMultiplicityEClass, RangeMultiplicity.class, "RangeMultiplicity", !IS_ABSTRACT, !IS_INTERFACE,
1439 IS_GENERATED_INSTANCE_CLASS);
1440 initEAttribute(getRangeMultiplicity_LowerBound(), ecorePackage.getEInt(), "lowerBound", "0", 0, 1,
1441 RangeMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1442 !IS_DERIVED, IS_ORDERED);
1443 initEAttribute(getRangeMultiplicity_UpperBound(), ecorePackage.getEInt(), "upperBound", "-1", 0, 1,
1444 RangeMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1445 !IS_DERIVED, IS_ORDERED);
1446
1447 initEClass(exactMultiplicityEClass, ExactMultiplicity.class, "ExactMultiplicity", !IS_ABSTRACT, !IS_INTERFACE,
1448 IS_GENERATED_INSTANCE_CLASS);
1449 initEAttribute(getExactMultiplicity_ExactValue(), ecorePackage.getEInt(), "exactValue", "1", 0, 1,
1450 ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1451 !IS_DERIVED, IS_ORDERED);
1452
1453 initEClass(unboundedMultiplicityEClass, UnboundedMultiplicity.class, "UnboundedMultiplicity", !IS_ABSTRACT,
1454 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1455
1456 initEClass(variableOrNodeArgumentEClass, VariableOrNodeArgument.class, "VariableOrNodeArgument", !IS_ABSTRACT,
1457 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1458 initEReference(getVariableOrNodeArgument_VariableOrNode(), this.getVariableOrNode(), null, "variableOrNode",
1459 null, 0, 1, VariableOrNodeArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1460 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1461 initEReference(getVariableOrNodeArgument_SingletonVariable(), this.getImplicitVariable(), null,
1462 "singletonVariable", null, 0, 1, VariableOrNodeArgument.class, !IS_TRANSIENT, !IS_VOLATILE,
1463 IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1464
1465 initEClass(enumDeclarationEClass, EnumDeclaration.class, "EnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1466 IS_GENERATED_INSTANCE_CLASS);
1467 initEReference(getEnumDeclaration_Literals(), this.getNode(), null, "literals", null, 0, -1,
1468 EnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1469 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1470
1471 initEClass(variableOrNodeEClass, VariableOrNode.class, "VariableOrNode", IS_ABSTRACT, !IS_INTERFACE,
1472 IS_GENERATED_INSTANCE_CLASS);
1473
1474 initEClass(constantEClass, Constant.class, "Constant", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1475
1476 initEClass(intConstantEClass, IntConstant.class, "IntConstant", !IS_ABSTRACT, !IS_INTERFACE,
1477 IS_GENERATED_INSTANCE_CLASS);
1478 initEAttribute(getIntConstant_IntValue(), ecorePackage.getEInt(), "intValue", "0", 0, 1, IntConstant.class,
1479 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1480
1481 initEClass(realConstantEClass, RealConstant.class, "RealConstant", !IS_ABSTRACT, !IS_INTERFACE,
1482 IS_GENERATED_INSTANCE_CLASS);
1483 initEAttribute(getRealConstant_RealValue(), ecorePackage.getEDouble(), "realValue", "0.0", 0, 1,
1484 RealConstant.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1485 !IS_DERIVED, IS_ORDERED);
1486
1487 initEClass(stringConstantEClass, StringConstant.class, "StringConstant", !IS_ABSTRACT, !IS_INTERFACE,
1488 IS_GENERATED_INSTANCE_CLASS);
1489 initEAttribute(getStringConstant_StringValue(), ecorePackage.getEString(), "stringValue", null, 0, 1,
1490 StringConstant.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1491 !IS_DERIVED, IS_ORDERED);
1492
1493 initEClass(constantArgumentEClass, ConstantArgument.class, "ConstantArgument", !IS_ABSTRACT, !IS_INTERFACE,
1494 IS_GENERATED_INSTANCE_CLASS);
1495 initEReference(getConstantArgument_Constant(), this.getConstant(), null, "constant", null, 0, 1,
1496 ConstantArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1497 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1498
1499 initEClass(argumentEClass, Argument.class, "Argument", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1500
1501 initEClass(nodeAssertionArgumentEClass, NodeAssertionArgument.class, "NodeAssertionArgument", !IS_ABSTRACT,
1502 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1503 initEReference(getNodeAssertionArgument_Node(), this.getNode(), null, "node", null, 0, 1,
1504 NodeAssertionArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1505 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1506
1507 initEClass(assertionArgumentEClass, AssertionArgument.class, "AssertionArgument", IS_ABSTRACT, !IS_INTERFACE,
1508 IS_GENERATED_INSTANCE_CLASS);
1509
1510 initEClass(constantAssertionArgumentEClass, ConstantAssertionArgument.class, "ConstantAssertionArgument",
1511 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1512 initEReference(getConstantAssertionArgument_Constant(), this.getConstant(), null, "constant", null, 0, 1,
1513 ConstantAssertionArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1514 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1515
1516 initEClass(nodeValueAssertionEClass, NodeValueAssertion.class, "NodeValueAssertion", !IS_ABSTRACT,
1517 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1518 initEReference(getNodeValueAssertion_Node(), this.getNode(), null, "node", null, 0, 1, NodeValueAssertion.class,
1519 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1520 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1521 initEReference(getNodeValueAssertion_Value(), this.getConstant(), null, "value", null, 0, 1,
1522 NodeValueAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1523 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1524
1525 // Initialize enums and add enum literals
1526 initEEnum(logicValueEEnum, LogicValue.class, "LogicValue");
1527 addEEnumLiteral(logicValueEEnum, LogicValue.TRUE);
1528 addEEnumLiteral(logicValueEEnum, LogicValue.FALSE);
1529 addEEnumLiteral(logicValueEEnum, LogicValue.UNKNOWN);
1530
1531 // Create resource
1532 createResource(eNS_URI);
1533 }
1534
1535} //ProblemPackageImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RangeMultiplicityImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RangeMultiplicityImpl.java
deleted file mode 100644
index 1122b5be..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RangeMultiplicityImpl.java
+++ /dev/null
@@ -1,219 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ProblemPackage;
12import org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Range 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.model.problem.impl.RangeMultiplicityImpl#getLowerBound <em>Lower Bound</em>}</li>
23 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.RangeMultiplicityImpl#getUpperBound <em>Upper Bound</em>}</li>
24 * </ul>
25 *
26 * @generated
27 */
28public class RangeMultiplicityImpl extends MultiplicityImpl implements RangeMultiplicity {
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 = -1;
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 RangeMultiplicityImpl() {
75 super();
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 protected EClass eStaticClass() {
85 return ProblemPackage.Literals.RANGE_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, ProblemPackage.RANGE_MULTIPLICITY__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, ProblemPackage.RANGE_MULTIPLICITY__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 ProblemPackage.RANGE_MULTIPLICITY__LOWER_BOUND:
141 return getLowerBound();
142 case ProblemPackage.RANGE_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 ProblemPackage.RANGE_MULTIPLICITY__LOWER_BOUND:
157 setLowerBound((Integer) newValue);
158 return;
159 case ProblemPackage.RANGE_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 ProblemPackage.RANGE_MULTIPLICITY__LOWER_BOUND:
175 setLowerBound(LOWER_BOUND_EDEFAULT);
176 return;
177 case ProblemPackage.RANGE_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 ProblemPackage.RANGE_MULTIPLICITY__LOWER_BOUND:
193 return lowerBound != LOWER_BOUND_EDEFAULT;
194 case ProblemPackage.RANGE_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} //RangeMultiplicityImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RealConstantImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RealConstantImpl.java
deleted file mode 100644
index f28d7b5f..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RealConstantImpl.java
+++ /dev/null
@@ -1,164 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ProblemPackage;
12import org.eclipse.viatra.solver.language.model.problem.RealConstant;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>Real Constant</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.model.problem.impl.RealConstantImpl#getRealValue <em>Real Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class RealConstantImpl extends ConstantImpl implements RealConstant {
28 /**
29 * The default value of the '{@link #getRealValue() <em>Real Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getRealValue()
33 * @generated
34 * @ordered
35 */
36 protected static final double REAL_VALUE_EDEFAULT = 0.0;
37
38 /**
39 * The cached value of the '{@link #getRealValue() <em>Real Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getRealValue()
43 * @generated
44 * @ordered
45 */
46 protected double realValue = REAL_VALUE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected RealConstantImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return ProblemPackage.Literals.REAL_CONSTANT;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public double getRealValue() {
73 return realValue;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setRealValue(double newRealValue) {
82 double oldRealValue = realValue;
83 realValue = newRealValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REAL_CONSTANT__REAL_VALUE,
86 oldRealValue, realValue));
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 ProblemPackage.REAL_CONSTANT__REAL_VALUE:
98 return getRealValue();
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 ProblemPackage.REAL_CONSTANT__REAL_VALUE:
112 setRealValue((Double) 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 ProblemPackage.REAL_CONSTANT__REAL_VALUE:
127 setRealValue(REAL_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 ProblemPackage.REAL_CONSTANT__REAL_VALUE:
142 return realValue != REAL_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(" (realValue: ");
159 result.append(realValue);
160 result.append(')');
161 return result.toString();
162 }
163
164} //RealConstantImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java
deleted file mode 100644
index 8df2715f..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ReferenceDeclarationImpl.java
+++ /dev/null
@@ -1,378 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.viatra.solver.language.model.problem.Multiplicity;
13import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
14import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
15import org.eclipse.viatra.solver.language.model.problem.Relation;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model object '<em><b>Reference 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.model.problem.impl.ReferenceDeclarationImpl#getReferenceType <em>Reference Type</em>}</li>
26 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl#getOpposite <em>Opposite</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl#isContainment <em>Containment</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl#getMultiplicity <em>Multiplicity</em>}</li>
29 * </ul>
30 *
31 * @generated
32 */
33public class ReferenceDeclarationImpl extends RelationImpl implements ReferenceDeclaration {
34 /**
35 * The cached value of the '{@link #getReferenceType() <em>Reference Type</em>}' reference.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @see #getReferenceType()
39 * @generated
40 * @ordered
41 */
42 protected Relation referenceType;
43
44 /**
45 * The cached value of the '{@link #getOpposite() <em>Opposite</em>}' reference.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @see #getOpposite()
49 * @generated
50 * @ordered
51 */
52 protected ReferenceDeclaration opposite;
53
54 /**
55 * The default value of the '{@link #isContainment() <em>Containment</em>}' attribute.
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @see #isContainment()
59 * @generated
60 * @ordered
61 */
62 protected static final boolean CONTAINMENT_EDEFAULT = false;
63
64 /**
65 * The cached value of the '{@link #isContainment() <em>Containment</em>}' attribute.
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @see #isContainment()
69 * @generated
70 * @ordered
71 */
72 protected boolean containment = CONTAINMENT_EDEFAULT;
73
74 /**
75 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' containment reference.
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @see #getMultiplicity()
79 * @generated
80 * @ordered
81 */
82 protected Multiplicity multiplicity;
83
84 /**
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @generated
88 */
89 protected ReferenceDeclarationImpl() {
90 super();
91 }
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 @Override
99 protected EClass eStaticClass() {
100 return ProblemPackage.Literals.REFERENCE_DECLARATION;
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 public Relation getReferenceType() {
109 if (referenceType != null && referenceType.eIsProxy()) {
110 InternalEObject oldReferenceType = (InternalEObject) referenceType;
111 referenceType = (Relation) eResolveProxy(oldReferenceType);
112 if (referenceType != oldReferenceType) {
113 if (eNotificationRequired())
114 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
115 ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE, oldReferenceType, referenceType));
116 }
117 }
118 return referenceType;
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public Relation basicGetReferenceType() {
127 return referenceType;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public void setReferenceType(Relation newReferenceType) {
136 Relation oldReferenceType = referenceType;
137 referenceType = newReferenceType;
138 if (eNotificationRequired())
139 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE,
140 oldReferenceType, referenceType));
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 public ReferenceDeclaration getOpposite() {
149 if (opposite != null && opposite.eIsProxy()) {
150 InternalEObject oldOpposite = (InternalEObject) opposite;
151 opposite = (ReferenceDeclaration) eResolveProxy(oldOpposite);
152 if (opposite != oldOpposite) {
153 if (eNotificationRequired())
154 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
155 ProblemPackage.REFERENCE_DECLARATION__OPPOSITE, oldOpposite, opposite));
156 }
157 }
158 return opposite;
159 }
160
161 /**
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 */
166 public ReferenceDeclaration basicGetOpposite() {
167 return opposite;
168 }
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 public void setOpposite(ReferenceDeclaration newOpposite) {
176 ReferenceDeclaration oldOpposite = opposite;
177 opposite = newOpposite;
178 if (eNotificationRequired())
179 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REFERENCE_DECLARATION__OPPOSITE,
180 oldOpposite, opposite));
181 }
182
183 /**
184 * <!-- begin-user-doc -->
185 * <!-- end-user-doc -->
186 * @generated
187 */
188 public boolean isContainment() {
189 return containment;
190 }
191
192 /**
193 * <!-- begin-user-doc -->
194 * <!-- end-user-doc -->
195 * @generated
196 */
197 public void setContainment(boolean newContainment) {
198 boolean oldContainment = containment;
199 containment = newContainment;
200 if (eNotificationRequired())
201 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REFERENCE_DECLARATION__CONTAINMENT,
202 oldContainment, containment));
203 }
204
205 /**
206 * <!-- begin-user-doc -->
207 * <!-- end-user-doc -->
208 * @generated
209 */
210 public Multiplicity getMultiplicity() {
211 return multiplicity;
212 }
213
214 /**
215 * <!-- begin-user-doc -->
216 * <!-- end-user-doc -->
217 * @generated
218 */
219 public NotificationChain basicSetMultiplicity(Multiplicity newMultiplicity, NotificationChain msgs) {
220 Multiplicity oldMultiplicity = multiplicity;
221 multiplicity = newMultiplicity;
222 if (eNotificationRequired()) {
223 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
224 ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY, oldMultiplicity, newMultiplicity);
225 if (msgs == null)
226 msgs = notification;
227 else
228 msgs.add(notification);
229 }
230 return msgs;
231 }
232
233 /**
234 * <!-- begin-user-doc -->
235 * <!-- end-user-doc -->
236 * @generated
237 */
238 public void setMultiplicity(Multiplicity newMultiplicity) {
239 if (newMultiplicity != multiplicity) {
240 NotificationChain msgs = null;
241 if (multiplicity != null)
242 msgs = ((InternalEObject) multiplicity).eInverseRemove(this,
243 EOPPOSITE_FEATURE_BASE - ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY, null, msgs);
244 if (newMultiplicity != null)
245 msgs = ((InternalEObject) newMultiplicity).eInverseAdd(this,
246 EOPPOSITE_FEATURE_BASE - ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY, null, msgs);
247 msgs = basicSetMultiplicity(newMultiplicity, msgs);
248 if (msgs != null)
249 msgs.dispatch();
250 } else if (eNotificationRequired())
251 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY,
252 newMultiplicity, newMultiplicity));
253 }
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 @Override
261 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
262 switch (featureID) {
263 case ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY:
264 return basicSetMultiplicity(null, msgs);
265 }
266 return super.eInverseRemove(otherEnd, featureID, msgs);
267 }
268
269 /**
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @generated
273 */
274 @Override
275 public Object eGet(int featureID, boolean resolve, boolean coreType) {
276 switch (featureID) {
277 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE:
278 if (resolve)
279 return getReferenceType();
280 return basicGetReferenceType();
281 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE:
282 if (resolve)
283 return getOpposite();
284 return basicGetOpposite();
285 case ProblemPackage.REFERENCE_DECLARATION__CONTAINMENT:
286 return isContainment();
287 case ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY:
288 return getMultiplicity();
289 }
290 return super.eGet(featureID, resolve, coreType);
291 }
292
293 /**
294 * <!-- begin-user-doc -->
295 * <!-- end-user-doc -->
296 * @generated
297 */
298 @Override
299 public void eSet(int featureID, Object newValue) {
300 switch (featureID) {
301 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE:
302 setReferenceType((Relation) newValue);
303 return;
304 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE:
305 setOpposite((ReferenceDeclaration) newValue);
306 return;
307 case ProblemPackage.REFERENCE_DECLARATION__CONTAINMENT:
308 setContainment((Boolean) newValue);
309 return;
310 case ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY:
311 setMultiplicity((Multiplicity) newValue);
312 return;
313 }
314 super.eSet(featureID, newValue);
315 }
316
317 /**
318 * <!-- begin-user-doc -->
319 * <!-- end-user-doc -->
320 * @generated
321 */
322 @Override
323 public void eUnset(int featureID) {
324 switch (featureID) {
325 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE:
326 setReferenceType((Relation) null);
327 return;
328 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE:
329 setOpposite((ReferenceDeclaration) null);
330 return;
331 case ProblemPackage.REFERENCE_DECLARATION__CONTAINMENT:
332 setContainment(CONTAINMENT_EDEFAULT);
333 return;
334 case ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY:
335 setMultiplicity((Multiplicity) null);
336 return;
337 }
338 super.eUnset(featureID);
339 }
340
341 /**
342 * <!-- begin-user-doc -->
343 * <!-- end-user-doc -->
344 * @generated
345 */
346 @Override
347 public boolean eIsSet(int featureID) {
348 switch (featureID) {
349 case ProblemPackage.REFERENCE_DECLARATION__REFERENCE_TYPE:
350 return referenceType != null;
351 case ProblemPackage.REFERENCE_DECLARATION__OPPOSITE:
352 return opposite != null;
353 case ProblemPackage.REFERENCE_DECLARATION__CONTAINMENT:
354 return containment != CONTAINMENT_EDEFAULT;
355 case ProblemPackage.REFERENCE_DECLARATION__MULTIPLICITY:
356 return multiplicity != null;
357 }
358 return super.eIsSet(featureID);
359 }
360
361 /**
362 * <!-- begin-user-doc -->
363 * <!-- end-user-doc -->
364 * @generated
365 */
366 @Override
367 public String toString() {
368 if (eIsProxy())
369 return super.toString();
370
371 StringBuilder result = new StringBuilder(super.toString());
372 result.append(" (containment: ");
373 result.append(containment);
374 result.append(')');
375 return result.toString();
376 }
377
378} //ReferenceDeclarationImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RelationImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RelationImpl.java
deleted file mode 100644
index 20d43043..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/RelationImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
8import org.eclipse.viatra.solver.language.model.problem.Relation;
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 NamedElementImpl 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 ProblemPackage.Literals.RELATION;
35 }
36
37} //RelationImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ScopeDeclarationImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ScopeDeclarationImpl.java
deleted file mode 100644
index f178d9e0..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ScopeDeclarationImpl.java
+++ /dev/null
@@ -1,153 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ProblemPackage;
20import org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration;
21import org.eclipse.viatra.solver.language.model.problem.TypeScope;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Scope Declaration</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.model.problem.impl.ScopeDeclarationImpl#getTypeScopes <em>Type Scopes</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class ScopeDeclarationImpl extends MinimalEObjectImpl.Container implements ScopeDeclaration {
37 /**
38 * The cached value of the '{@link #getTypeScopes() <em>Type Scopes</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getTypeScopes()
42 * @generated
43 * @ordered
44 */
45 protected EList<TypeScope> typeScopes;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected ScopeDeclarationImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return ProblemPackage.Literals.SCOPE_DECLARATION;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<TypeScope> getTypeScopes() {
72 if (typeScopes == null) {
73 typeScopes = new EObjectContainmentEList<TypeScope>(TypeScope.class, this,
74 ProblemPackage.SCOPE_DECLARATION__TYPE_SCOPES);
75 }
76 return typeScopes;
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 ProblemPackage.SCOPE_DECLARATION__TYPE_SCOPES:
88 return ((InternalEList<?>) getTypeScopes()).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 ProblemPackage.SCOPE_DECLARATION__TYPE_SCOPES:
102 return getTypeScopes();
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 ProblemPackage.SCOPE_DECLARATION__TYPE_SCOPES:
117 getTypeScopes().clear();
118 getTypeScopes().addAll((Collection<? extends TypeScope>) 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 ProblemPackage.SCOPE_DECLARATION__TYPE_SCOPES:
133 getTypeScopes().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 ProblemPackage.SCOPE_DECLARATION__TYPE_SCOPES:
148 return typeScopes != null && !typeScopes.isEmpty();
149 }
150 return super.eIsSet(featureID);
151 }
152
153} //ScopeDeclarationImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/StringConstantImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/StringConstantImpl.java
deleted file mode 100644
index 9eb05cf3..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/StringConstantImpl.java
+++ /dev/null
@@ -1,164 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ProblemPackage;
12import org.eclipse.viatra.solver.language.model.problem.StringConstant;
13
14/**
15 * <!-- begin-user-doc -->
16 * An implementation of the model object '<em><b>String Constant</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.model.problem.impl.StringConstantImpl#getStringValue <em>String Value</em>}</li>
23 * </ul>
24 *
25 * @generated
26 */
27public class StringConstantImpl extends ConstantImpl implements StringConstant {
28 /**
29 * The default value of the '{@link #getStringValue() <em>String Value</em>}' attribute.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @see #getStringValue()
33 * @generated
34 * @ordered
35 */
36 protected static final String STRING_VALUE_EDEFAULT = null;
37
38 /**
39 * The cached value of the '{@link #getStringValue() <em>String Value</em>}' attribute.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getStringValue()
43 * @generated
44 * @ordered
45 */
46 protected String stringValue = STRING_VALUE_EDEFAULT;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 protected StringConstantImpl() {
54 super();
55 }
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 @Override
63 protected EClass eStaticClass() {
64 return ProblemPackage.Literals.STRING_CONSTANT;
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 public String getStringValue() {
73 return stringValue;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 public void setStringValue(String newStringValue) {
82 String oldStringValue = stringValue;
83 stringValue = newStringValue;
84 if (eNotificationRequired())
85 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.STRING_CONSTANT__STRING_VALUE,
86 oldStringValue, stringValue));
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 ProblemPackage.STRING_CONSTANT__STRING_VALUE:
98 return getStringValue();
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 ProblemPackage.STRING_CONSTANT__STRING_VALUE:
112 setStringValue((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 ProblemPackage.STRING_CONSTANT__STRING_VALUE:
127 setStringValue(STRING_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 ProblemPackage.STRING_CONSTANT__STRING_VALUE:
142 return STRING_VALUE_EDEFAULT == null ? stringValue != null : !STRING_VALUE_EDEFAULT.equals(stringValue);
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(" (stringValue: ");
159 result.append(stringValue);
160 result.append(')');
161 return result.toString();
162 }
163
164} //StringConstantImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/TypeScopeImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/TypeScopeImpl.java
deleted file mode 100644
index 608cc015..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/TypeScopeImpl.java
+++ /dev/null
@@ -1,317 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ClassDeclaration;
15import org.eclipse.viatra.solver.language.model.problem.Multiplicity;
16import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
17import org.eclipse.viatra.solver.language.model.problem.TypeScope;
18
19/**
20 * <!-- begin-user-doc -->
21 * An implementation of the model object '<em><b>Type Scope</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.model.problem.impl.TypeScopeImpl#getTargetType <em>Target Type</em>}</li>
28 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.TypeScopeImpl#isIncrement <em>Increment</em>}</li>
29 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.TypeScopeImpl#getMultiplicity <em>Multiplicity</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class TypeScopeImpl extends MinimalEObjectImpl.Container implements TypeScope {
35 /**
36 * The cached value of the '{@link #getTargetType() <em>Target Type</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getTargetType()
40 * @generated
41 * @ordered
42 */
43 protected ClassDeclaration targetType;
44
45 /**
46 * The default value of the '{@link #isIncrement() <em>Increment</em>}' attribute.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @see #isIncrement()
50 * @generated
51 * @ordered
52 */
53 protected static final boolean INCREMENT_EDEFAULT = false;
54
55 /**
56 * The cached value of the '{@link #isIncrement() <em>Increment</em>}' attribute.
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @see #isIncrement()
60 * @generated
61 * @ordered
62 */
63 protected boolean increment = INCREMENT_EDEFAULT;
64
65 /**
66 * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' containment reference.
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @see #getMultiplicity()
70 * @generated
71 * @ordered
72 */
73 protected Multiplicity multiplicity;
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 protected TypeScopeImpl() {
81 super();
82 }
83
84 /**
85 * <!-- begin-user-doc -->
86 * <!-- end-user-doc -->
87 * @generated
88 */
89 @Override
90 protected EClass eStaticClass() {
91 return ProblemPackage.Literals.TYPE_SCOPE;
92 }
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 public ClassDeclaration getTargetType() {
100 if (targetType != null && targetType.eIsProxy()) {
101 InternalEObject oldTargetType = (InternalEObject) targetType;
102 targetType = (ClassDeclaration) eResolveProxy(oldTargetType);
103 if (targetType != oldTargetType) {
104 if (eNotificationRequired())
105 eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.TYPE_SCOPE__TARGET_TYPE,
106 oldTargetType, targetType));
107 }
108 }
109 return targetType;
110 }
111
112 /**
113 * <!-- begin-user-doc -->
114 * <!-- end-user-doc -->
115 * @generated
116 */
117 public ClassDeclaration basicGetTargetType() {
118 return targetType;
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public void setTargetType(ClassDeclaration newTargetType) {
127 ClassDeclaration oldTargetType = targetType;
128 targetType = newTargetType;
129 if (eNotificationRequired())
130 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.TYPE_SCOPE__TARGET_TYPE, oldTargetType,
131 targetType));
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 public boolean isIncrement() {
140 return increment;
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 public void setIncrement(boolean newIncrement) {
149 boolean oldIncrement = increment;
150 increment = newIncrement;
151 if (eNotificationRequired())
152 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.TYPE_SCOPE__INCREMENT, oldIncrement,
153 increment));
154 }
155
156 /**
157 * <!-- begin-user-doc -->
158 * <!-- end-user-doc -->
159 * @generated
160 */
161 public Multiplicity getMultiplicity() {
162 return multiplicity;
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 public NotificationChain basicSetMultiplicity(Multiplicity newMultiplicity, NotificationChain msgs) {
171 Multiplicity oldMultiplicity = multiplicity;
172 multiplicity = newMultiplicity;
173 if (eNotificationRequired()) {
174 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
175 ProblemPackage.TYPE_SCOPE__MULTIPLICITY, oldMultiplicity, newMultiplicity);
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 setMultiplicity(Multiplicity newMultiplicity) {
190 if (newMultiplicity != multiplicity) {
191 NotificationChain msgs = null;
192 if (multiplicity != null)
193 msgs = ((InternalEObject) multiplicity).eInverseRemove(this,
194 EOPPOSITE_FEATURE_BASE - ProblemPackage.TYPE_SCOPE__MULTIPLICITY, null, msgs);
195 if (newMultiplicity != null)
196 msgs = ((InternalEObject) newMultiplicity).eInverseAdd(this,
197 EOPPOSITE_FEATURE_BASE - ProblemPackage.TYPE_SCOPE__MULTIPLICITY, null, msgs);
198 msgs = basicSetMultiplicity(newMultiplicity, msgs);
199 if (msgs != null)
200 msgs.dispatch();
201 } else if (eNotificationRequired())
202 eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.TYPE_SCOPE__MULTIPLICITY,
203 newMultiplicity, newMultiplicity));
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 @Override
212 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
213 switch (featureID) {
214 case ProblemPackage.TYPE_SCOPE__MULTIPLICITY:
215 return basicSetMultiplicity(null, msgs);
216 }
217 return super.eInverseRemove(otherEnd, featureID, msgs);
218 }
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 @Override
226 public Object eGet(int featureID, boolean resolve, boolean coreType) {
227 switch (featureID) {
228 case ProblemPackage.TYPE_SCOPE__TARGET_TYPE:
229 if (resolve)
230 return getTargetType();
231 return basicGetTargetType();
232 case ProblemPackage.TYPE_SCOPE__INCREMENT:
233 return isIncrement();
234 case ProblemPackage.TYPE_SCOPE__MULTIPLICITY:
235 return getMultiplicity();
236 }
237 return super.eGet(featureID, resolve, coreType);
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 @Override
246 public void eSet(int featureID, Object newValue) {
247 switch (featureID) {
248 case ProblemPackage.TYPE_SCOPE__TARGET_TYPE:
249 setTargetType((ClassDeclaration) newValue);
250 return;
251 case ProblemPackage.TYPE_SCOPE__INCREMENT:
252 setIncrement((Boolean) newValue);
253 return;
254 case ProblemPackage.TYPE_SCOPE__MULTIPLICITY:
255 setMultiplicity((Multiplicity) newValue);
256 return;
257 }
258 super.eSet(featureID, newValue);
259 }
260
261 /**
262 * <!-- begin-user-doc -->
263 * <!-- end-user-doc -->
264 * @generated
265 */
266 @Override
267 public void eUnset(int featureID) {
268 switch (featureID) {
269 case ProblemPackage.TYPE_SCOPE__TARGET_TYPE:
270 setTargetType((ClassDeclaration) null);
271 return;
272 case ProblemPackage.TYPE_SCOPE__INCREMENT:
273 setIncrement(INCREMENT_EDEFAULT);
274 return;
275 case ProblemPackage.TYPE_SCOPE__MULTIPLICITY:
276 setMultiplicity((Multiplicity) null);
277 return;
278 }
279 super.eUnset(featureID);
280 }
281
282 /**
283 * <!-- begin-user-doc -->
284 * <!-- end-user-doc -->
285 * @generated
286 */
287 @Override
288 public boolean eIsSet(int featureID) {
289 switch (featureID) {
290 case ProblemPackage.TYPE_SCOPE__TARGET_TYPE:
291 return targetType != null;
292 case ProblemPackage.TYPE_SCOPE__INCREMENT:
293 return increment != INCREMENT_EDEFAULT;
294 case ProblemPackage.TYPE_SCOPE__MULTIPLICITY:
295 return multiplicity != null;
296 }
297 return super.eIsSet(featureID);
298 }
299
300 /**
301 * <!-- begin-user-doc -->
302 * <!-- end-user-doc -->
303 * @generated
304 */
305 @Override
306 public String toString() {
307 if (eIsProxy())
308 return super.toString();
309
310 StringBuilder result = new StringBuilder(super.toString());
311 result.append(" (increment: ");
312 result.append(increment);
313 result.append(')');
314 return result.toString();
315 }
316
317} //TypeScopeImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java
deleted file mode 100644
index 34283189..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
8import org.eclipse.viatra.solver.language.model.problem.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 ProblemPackage.Literals.UNBOUNDED_MULTIPLICITY;
35 }
36
37} //UnboundedMultiplicityImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java
deleted file mode 100644
index 645ac39c..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
8import org.eclipse.viatra.solver.language.model.problem.Variable;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Variable</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class VariableImpl extends VariableOrNodeImpl implements Variable {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected VariableImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return ProblemPackage.Literals.VARIABLE;
35 }
36
37} //VariableImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeArgumentImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeArgumentImpl.java
deleted file mode 100644
index 693d5cdd..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeArgumentImpl.java
+++ /dev/null
@@ -1,251 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.ImplicitVariable;
14import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
15import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
16import org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument;
17
18/**
19 * <!-- begin-user-doc -->
20 * An implementation of the model object '<em><b>Variable Or Node Argument</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.model.problem.impl.VariableOrNodeArgumentImpl#getVariableOrNode <em>Variable Or Node</em>}</li>
27 * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.VariableOrNodeArgumentImpl#getSingletonVariable <em>Singleton Variable</em>}</li>
28 * </ul>
29 *
30 * @generated
31 */
32public class VariableOrNodeArgumentImpl extends ArgumentImpl implements VariableOrNodeArgument {
33 /**
34 * The cached value of the '{@link #getVariableOrNode() <em>Variable Or Node</em>}' reference.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @see #getVariableOrNode()
38 * @generated
39 * @ordered
40 */
41 protected VariableOrNode variableOrNode;
42
43 /**
44 * The cached value of the '{@link #getSingletonVariable() <em>Singleton Variable</em>}' containment reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @see #getSingletonVariable()
48 * @generated
49 * @ordered
50 */
51 protected ImplicitVariable singletonVariable;
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 protected VariableOrNodeArgumentImpl() {
59 super();
60 }
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 @Override
68 protected EClass eStaticClass() {
69 return ProblemPackage.Literals.VARIABLE_OR_NODE_ARGUMENT;
70 }
71
72 /**
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @generated
76 */
77 public VariableOrNode getVariableOrNode() {
78 if (variableOrNode != null && variableOrNode.eIsProxy()) {
79 InternalEObject oldVariableOrNode = (InternalEObject) variableOrNode;
80 variableOrNode = (VariableOrNode) eResolveProxy(oldVariableOrNode);
81 if (variableOrNode != oldVariableOrNode) {
82 if (eNotificationRequired())
83 eNotify(new ENotificationImpl(this, Notification.RESOLVE,
84 ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE, oldVariableOrNode,
85 variableOrNode));
86 }
87 }
88 return variableOrNode;
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 public VariableOrNode basicGetVariableOrNode() {
97 return variableOrNode;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public void setVariableOrNode(VariableOrNode newVariableOrNode) {
106 VariableOrNode oldVariableOrNode = variableOrNode;
107 variableOrNode = newVariableOrNode;
108 if (eNotificationRequired())
109 eNotify(new ENotificationImpl(this, Notification.SET,
110 ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE, oldVariableOrNode, variableOrNode));
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public ImplicitVariable getSingletonVariable() {
119 return singletonVariable;
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 public NotificationChain basicSetSingletonVariable(ImplicitVariable newSingletonVariable, NotificationChain msgs) {
128 ImplicitVariable oldSingletonVariable = singletonVariable;
129 singletonVariable = newSingletonVariable;
130 if (eNotificationRequired()) {
131 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
132 ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE, oldSingletonVariable,
133 newSingletonVariable);
134 if (msgs == null)
135 msgs = notification;
136 else
137 msgs.add(notification);
138 }
139 return msgs;
140 }
141
142 /**
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 */
147 public void setSingletonVariable(ImplicitVariable newSingletonVariable) {
148 if (newSingletonVariable != singletonVariable) {
149 NotificationChain msgs = null;
150 if (singletonVariable != null)
151 msgs = ((InternalEObject) singletonVariable).eInverseRemove(this,
152 EOPPOSITE_FEATURE_BASE - ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE, null,
153 msgs);
154 if (newSingletonVariable != null)
155 msgs = ((InternalEObject) newSingletonVariable).eInverseAdd(this,
156 EOPPOSITE_FEATURE_BASE - ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE, null,
157 msgs);
158 msgs = basicSetSingletonVariable(newSingletonVariable, msgs);
159 if (msgs != null)
160 msgs.dispatch();
161 } else if (eNotificationRequired())
162 eNotify(new ENotificationImpl(this, Notification.SET,
163 ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE, newSingletonVariable,
164 newSingletonVariable));
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 @Override
173 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
174 switch (featureID) {
175 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE:
176 return basicSetSingletonVariable(null, msgs);
177 }
178 return super.eInverseRemove(otherEnd, featureID, msgs);
179 }
180
181 /**
182 * <!-- begin-user-doc -->
183 * <!-- end-user-doc -->
184 * @generated
185 */
186 @Override
187 public Object eGet(int featureID, boolean resolve, boolean coreType) {
188 switch (featureID) {
189 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE:
190 if (resolve)
191 return getVariableOrNode();
192 return basicGetVariableOrNode();
193 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE:
194 return getSingletonVariable();
195 }
196 return super.eGet(featureID, resolve, coreType);
197 }
198
199 /**
200 * <!-- begin-user-doc -->
201 * <!-- end-user-doc -->
202 * @generated
203 */
204 @Override
205 public void eSet(int featureID, Object newValue) {
206 switch (featureID) {
207 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE:
208 setVariableOrNode((VariableOrNode) newValue);
209 return;
210 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE:
211 setSingletonVariable((ImplicitVariable) newValue);
212 return;
213 }
214 super.eSet(featureID, newValue);
215 }
216
217 /**
218 * <!-- begin-user-doc -->
219 * <!-- end-user-doc -->
220 * @generated
221 */
222 @Override
223 public void eUnset(int featureID) {
224 switch (featureID) {
225 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE:
226 setVariableOrNode((VariableOrNode) null);
227 return;
228 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE:
229 setSingletonVariable((ImplicitVariable) null);
230 return;
231 }
232 super.eUnset(featureID);
233 }
234
235 /**
236 * <!-- begin-user-doc -->
237 * <!-- end-user-doc -->
238 * @generated
239 */
240 @Override
241 public boolean eIsSet(int featureID) {
242 switch (featureID) {
243 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE:
244 return variableOrNode != null;
245 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT__SINGLETON_VARIABLE:
246 return singletonVariable != null;
247 }
248 return super.eIsSet(featureID);
249 }
250
251} //VariableOrNodeArgumentImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java
deleted file mode 100644
index 4964a019..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/VariableOrNodeImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.impl;
4
5import org.eclipse.emf.ecore.EClass;
6
7import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
8import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Variable Or Node</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class VariableOrNodeImpl extends NamedElementImpl implements VariableOrNode {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected VariableOrNodeImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return ProblemPackage.Literals.VARIABLE_OR_NODE;
35 }
36
37} //VariableOrNodeImpl
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java
deleted file mode 100644
index 07246d70..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java
+++ /dev/null
@@ -1,784 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.*;
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.model.problem.ProblemPackage
20 * @generated
21 */
22public class ProblemAdapterFactory extends AdapterFactoryImpl {
23 /**
24 * The cached model package.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @generated
28 */
29 protected static ProblemPackage modelPackage;
30
31 /**
32 * Creates an instance of the adapter factory.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 public ProblemAdapterFactory() {
38 if (modelPackage == null) {
39 modelPackage = ProblemPackage.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 ProblemSwitch<Adapter> modelSwitch = new ProblemSwitch<Adapter>() {
69 @Override
70 public Adapter caseProblem(Problem object) {
71 return createProblemAdapter();
72 }
73
74 @Override
75 public Adapter caseRelation(Relation object) {
76 return createRelationAdapter();
77 }
78
79 @Override
80 public Adapter caseClassDeclaration(ClassDeclaration object) {
81 return createClassDeclarationAdapter();
82 }
83
84 @Override
85 public Adapter caseReferenceDeclaration(ReferenceDeclaration object) {
86 return createReferenceDeclarationAdapter();
87 }
88
89 @Override
90 public Adapter caseNamedElement(NamedElement object) {
91 return createNamedElementAdapter();
92 }
93
94 @Override
95 public Adapter casePredicateDefinition(PredicateDefinition object) {
96 return createPredicateDefinitionAdapter();
97 }
98
99 @Override
100 public Adapter caseParameter(Parameter object) {
101 return createParameterAdapter();
102 }
103
104 @Override
105 public Adapter caseVariable(Variable object) {
106 return createVariableAdapter();
107 }
108
109 @Override
110 public Adapter caseConjunction(Conjunction object) {
111 return createConjunctionAdapter();
112 }
113
114 @Override
115 public Adapter caseLiteral(Literal object) {
116 return createLiteralAdapter();
117 }
118
119 @Override
120 public Adapter caseAtom(Atom object) {
121 return createAtomAdapter();
122 }
123
124 @Override
125 public Adapter caseImplicitVariable(ImplicitVariable object) {
126 return createImplicitVariableAdapter();
127 }
128
129 @Override
130 public Adapter caseNegativeLiteral(NegativeLiteral object) {
131 return createNegativeLiteralAdapter();
132 }
133
134 @Override
135 public Adapter caseExistentialQuantifier(ExistentialQuantifier object) {
136 return createExistentialQuantifierAdapter();
137 }
138
139 @Override
140 public Adapter caseAssertion(Assertion object) {
141 return createAssertionAdapter();
142 }
143
144 @Override
145 public Adapter caseNode(Node object) {
146 return createNodeAdapter();
147 }
148
149 @Override
150 public Adapter caseScopeDeclaration(ScopeDeclaration object) {
151 return createScopeDeclarationAdapter();
152 }
153
154 @Override
155 public Adapter caseStatement(Statement object) {
156 return createStatementAdapter();
157 }
158
159 @Override
160 public Adapter caseTypeScope(TypeScope object) {
161 return createTypeScopeAdapter();
162 }
163
164 @Override
165 public Adapter caseMultiplicity(Multiplicity object) {
166 return createMultiplicityAdapter();
167 }
168
169 @Override
170 public Adapter caseRangeMultiplicity(RangeMultiplicity object) {
171 return createRangeMultiplicityAdapter();
172 }
173
174 @Override
175 public Adapter caseExactMultiplicity(ExactMultiplicity object) {
176 return createExactMultiplicityAdapter();
177 }
178
179 @Override
180 public Adapter caseUnboundedMultiplicity(UnboundedMultiplicity object) {
181 return createUnboundedMultiplicityAdapter();
182 }
183
184 @Override
185 public Adapter caseVariableOrNodeArgument(VariableOrNodeArgument object) {
186 return createVariableOrNodeArgumentAdapter();
187 }
188
189 @Override
190 public Adapter caseEnumDeclaration(EnumDeclaration object) {
191 return createEnumDeclarationAdapter();
192 }
193
194 @Override
195 public Adapter caseVariableOrNode(VariableOrNode object) {
196 return createVariableOrNodeAdapter();
197 }
198
199 @Override
200 public Adapter caseConstant(Constant object) {
201 return createConstantAdapter();
202 }
203
204 @Override
205 public Adapter caseIntConstant(IntConstant object) {
206 return createIntConstantAdapter();
207 }
208
209 @Override
210 public Adapter caseRealConstant(RealConstant object) {
211 return createRealConstantAdapter();
212 }
213
214 @Override
215 public Adapter caseStringConstant(StringConstant object) {
216 return createStringConstantAdapter();
217 }
218
219 @Override
220 public Adapter caseConstantArgument(ConstantArgument object) {
221 return createConstantArgumentAdapter();
222 }
223
224 @Override
225 public Adapter caseArgument(Argument object) {
226 return createArgumentAdapter();
227 }
228
229 @Override
230 public Adapter caseNodeAssertionArgument(NodeAssertionArgument object) {
231 return createNodeAssertionArgumentAdapter();
232 }
233
234 @Override
235 public Adapter caseAssertionArgument(AssertionArgument object) {
236 return createAssertionArgumentAdapter();
237 }
238
239 @Override
240 public Adapter caseConstantAssertionArgument(ConstantAssertionArgument object) {
241 return createConstantAssertionArgumentAdapter();
242 }
243
244 @Override
245 public Adapter caseNodeValueAssertion(NodeValueAssertion object) {
246 return createNodeValueAssertionAdapter();
247 }
248
249 @Override
250 public Adapter defaultCase(EObject object) {
251 return createEObjectAdapter();
252 }
253 };
254
255 /**
256 * Creates an adapter for the <code>target</code>.
257 * <!-- begin-user-doc -->
258 * <!-- end-user-doc -->
259 * @param target the object to adapt.
260 * @return the adapter for the <code>target</code>.
261 * @generated
262 */
263 @Override
264 public Adapter createAdapter(Notifier target) {
265 return modelSwitch.doSwitch((EObject) target);
266 }
267
268 /**
269 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Problem <em>Problem</em>}'.
270 * <!-- begin-user-doc -->
271 * This default implementation returns null so that we can easily ignore cases;
272 * it's useful to ignore a case when inheritance will catch all the cases anyway.
273 * <!-- end-user-doc -->
274 * @return the new adapter.
275 * @see org.eclipse.viatra.solver.language.model.problem.Problem
276 * @generated
277 */
278 public Adapter createProblemAdapter() {
279 return null;
280 }
281
282 /**
283 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Relation <em>Relation</em>}'.
284 * <!-- begin-user-doc -->
285 * This default implementation returns null so that we can easily ignore cases;
286 * it's useful to ignore a case when inheritance will catch all the cases anyway.
287 * <!-- end-user-doc -->
288 * @return the new adapter.
289 * @see org.eclipse.viatra.solver.language.model.problem.Relation
290 * @generated
291 */
292 public Adapter createRelationAdapter() {
293 return null;
294 }
295
296 /**
297 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration <em>Class Declaration</em>}'.
298 * <!-- begin-user-doc -->
299 * This default implementation returns null so that we can easily ignore cases;
300 * it's useful to ignore a case when inheritance will catch all the cases anyway.
301 * <!-- end-user-doc -->
302 * @return the new adapter.
303 * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration
304 * @generated
305 */
306 public Adapter createClassDeclarationAdapter() {
307 return null;
308 }
309
310 /**
311 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration <em>Reference Declaration</em>}'.
312 * <!-- begin-user-doc -->
313 * This default implementation returns null so that we can easily ignore cases;
314 * it's useful to ignore a case when inheritance will catch all the cases anyway.
315 * <!-- end-user-doc -->
316 * @return the new adapter.
317 * @see org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration
318 * @generated
319 */
320 public Adapter createReferenceDeclarationAdapter() {
321 return null;
322 }
323
324 /**
325 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.NamedElement <em>Named Element</em>}'.
326 * <!-- begin-user-doc -->
327 * This default implementation returns null so that we can easily ignore cases;
328 * it's useful to ignore a case when inheritance will catch all the cases anyway.
329 * <!-- end-user-doc -->
330 * @return the new adapter.
331 * @see org.eclipse.viatra.solver.language.model.problem.NamedElement
332 * @generated
333 */
334 public Adapter createNamedElementAdapter() {
335 return null;
336 }
337
338 /**
339 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.PredicateDefinition <em>Predicate Definition</em>}'.
340 * <!-- begin-user-doc -->
341 * This default implementation returns null so that we can easily ignore cases;
342 * it's useful to ignore a case when inheritance will catch all the cases anyway.
343 * <!-- end-user-doc -->
344 * @return the new adapter.
345 * @see org.eclipse.viatra.solver.language.model.problem.PredicateDefinition
346 * @generated
347 */
348 public Adapter createPredicateDefinitionAdapter() {
349 return null;
350 }
351
352 /**
353 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Parameter <em>Parameter</em>}'.
354 * <!-- begin-user-doc -->
355 * This default implementation returns null so that we can easily ignore cases;
356 * it's useful to ignore a case when inheritance will catch all the cases anyway.
357 * <!-- end-user-doc -->
358 * @return the new adapter.
359 * @see org.eclipse.viatra.solver.language.model.problem.Parameter
360 * @generated
361 */
362 public Adapter createParameterAdapter() {
363 return null;
364 }
365
366 /**
367 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Variable <em>Variable</em>}'.
368 * <!-- begin-user-doc -->
369 * This default implementation returns null so that we can easily ignore cases;
370 * it's useful to ignore a case when inheritance will catch all the cases anyway.
371 * <!-- end-user-doc -->
372 * @return the new adapter.
373 * @see org.eclipse.viatra.solver.language.model.problem.Variable
374 * @generated
375 */
376 public Adapter createVariableAdapter() {
377 return null;
378 }
379
380 /**
381 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Conjunction <em>Conjunction</em>}'.
382 * <!-- begin-user-doc -->
383 * This default implementation returns null so that we can easily ignore cases;
384 * it's useful to ignore a case when inheritance will catch all the cases anyway.
385 * <!-- end-user-doc -->
386 * @return the new adapter.
387 * @see org.eclipse.viatra.solver.language.model.problem.Conjunction
388 * @generated
389 */
390 public Adapter createConjunctionAdapter() {
391 return null;
392 }
393
394 /**
395 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Literal <em>Literal</em>}'.
396 * <!-- begin-user-doc -->
397 * This default implementation returns null so that we can easily ignore cases;
398 * it's useful to ignore a case when inheritance will catch all the cases anyway.
399 * <!-- end-user-doc -->
400 * @return the new adapter.
401 * @see org.eclipse.viatra.solver.language.model.problem.Literal
402 * @generated
403 */
404 public Adapter createLiteralAdapter() {
405 return null;
406 }
407
408 /**
409 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Atom <em>Atom</em>}'.
410 * <!-- begin-user-doc -->
411 * This default implementation returns null so that we can easily ignore cases;
412 * it's useful to ignore a case when inheritance will catch all the cases anyway.
413 * <!-- end-user-doc -->
414 * @return the new adapter.
415 * @see org.eclipse.viatra.solver.language.model.problem.Atom
416 * @generated
417 */
418 public Adapter createAtomAdapter() {
419 return null;
420 }
421
422 /**
423 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ImplicitVariable <em>Implicit Variable</em>}'.
424 * <!-- begin-user-doc -->
425 * This default implementation returns null so that we can easily ignore cases;
426 * it's useful to ignore a case when inheritance will catch all the cases anyway.
427 * <!-- end-user-doc -->
428 * @return the new adapter.
429 * @see org.eclipse.viatra.solver.language.model.problem.ImplicitVariable
430 * @generated
431 */
432 public Adapter createImplicitVariableAdapter() {
433 return null;
434 }
435
436 /**
437 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.NegativeLiteral <em>Negative Literal</em>}'.
438 * <!-- begin-user-doc -->
439 * This default implementation returns null so that we can easily ignore cases;
440 * it's useful to ignore a case when inheritance will catch all the cases anyway.
441 * <!-- end-user-doc -->
442 * @return the new adapter.
443 * @see org.eclipse.viatra.solver.language.model.problem.NegativeLiteral
444 * @generated
445 */
446 public Adapter createNegativeLiteralAdapter() {
447 return null;
448 }
449
450 /**
451 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier <em>Existential Quantifier</em>}'.
452 * <!-- begin-user-doc -->
453 * This default implementation returns null so that we can easily ignore cases;
454 * it's useful to ignore a case when inheritance will catch all the cases anyway.
455 * <!-- end-user-doc -->
456 * @return the new adapter.
457 * @see org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier
458 * @generated
459 */
460 public Adapter createExistentialQuantifierAdapter() {
461 return null;
462 }
463
464 /**
465 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Assertion <em>Assertion</em>}'.
466 * <!-- begin-user-doc -->
467 * This default implementation returns null so that we can easily ignore cases;
468 * it's useful to ignore a case when inheritance will catch all the cases anyway.
469 * <!-- end-user-doc -->
470 * @return the new adapter.
471 * @see org.eclipse.viatra.solver.language.model.problem.Assertion
472 * @generated
473 */
474 public Adapter createAssertionAdapter() {
475 return null;
476 }
477
478 /**
479 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Node <em>Node</em>}'.
480 * <!-- begin-user-doc -->
481 * This default implementation returns null so that we can easily ignore cases;
482 * it's useful to ignore a case when inheritance will catch all the cases anyway.
483 * <!-- end-user-doc -->
484 * @return the new adapter.
485 * @see org.eclipse.viatra.solver.language.model.problem.Node
486 * @generated
487 */
488 public Adapter createNodeAdapter() {
489 return null;
490 }
491
492 /**
493 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration <em>Scope Declaration</em>}'.
494 * <!-- begin-user-doc -->
495 * This default implementation returns null so that we can easily ignore cases;
496 * it's useful to ignore a case when inheritance will catch all the cases anyway.
497 * <!-- end-user-doc -->
498 * @return the new adapter.
499 * @see org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration
500 * @generated
501 */
502 public Adapter createScopeDeclarationAdapter() {
503 return null;
504 }
505
506 /**
507 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Statement <em>Statement</em>}'.
508 * <!-- begin-user-doc -->
509 * This default implementation returns null so that we can easily ignore cases;
510 * it's useful to ignore a case when inheritance will catch all the cases anyway.
511 * <!-- end-user-doc -->
512 * @return the new adapter.
513 * @see org.eclipse.viatra.solver.language.model.problem.Statement
514 * @generated
515 */
516 public Adapter createStatementAdapter() {
517 return null;
518 }
519
520 /**
521 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.TypeScope <em>Type Scope</em>}'.
522 * <!-- begin-user-doc -->
523 * This default implementation returns null so that we can easily ignore cases;
524 * it's useful to ignore a case when inheritance will catch all the cases anyway.
525 * <!-- end-user-doc -->
526 * @return the new adapter.
527 * @see org.eclipse.viatra.solver.language.model.problem.TypeScope
528 * @generated
529 */
530 public Adapter createTypeScopeAdapter() {
531 return null;
532 }
533
534 /**
535 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Multiplicity <em>Multiplicity</em>}'.
536 * <!-- begin-user-doc -->
537 * This default implementation returns null so that we can easily ignore cases;
538 * it's useful to ignore a case when inheritance will catch all the cases anyway.
539 * <!-- end-user-doc -->
540 * @return the new adapter.
541 * @see org.eclipse.viatra.solver.language.model.problem.Multiplicity
542 * @generated
543 */
544 public Adapter createMultiplicityAdapter() {
545 return null;
546 }
547
548 /**
549 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity <em>Range Multiplicity</em>}'.
550 * <!-- begin-user-doc -->
551 * This default implementation returns null so that we can easily ignore cases;
552 * it's useful to ignore a case when inheritance will catch all the cases anyway.
553 * <!-- end-user-doc -->
554 * @return the new adapter.
555 * @see org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity
556 * @generated
557 */
558 public Adapter createRangeMultiplicityAdapter() {
559 return null;
560 }
561
562 /**
563 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity <em>Exact Multiplicity</em>}'.
564 * <!-- begin-user-doc -->
565 * This default implementation returns null so that we can easily ignore cases;
566 * it's useful to ignore a case when inheritance will catch all the cases anyway.
567 * <!-- end-user-doc -->
568 * @return the new adapter.
569 * @see org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity
570 * @generated
571 */
572 public Adapter createExactMultiplicityAdapter() {
573 return null;
574 }
575
576 /**
577 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity <em>Unbounded Multiplicity</em>}'.
578 * <!-- begin-user-doc -->
579 * This default implementation returns null so that we can easily ignore cases;
580 * it's useful to ignore a case when inheritance will catch all the cases anyway.
581 * <!-- end-user-doc -->
582 * @return the new adapter.
583 * @see org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity
584 * @generated
585 */
586 public Adapter createUnboundedMultiplicityAdapter() {
587 return null;
588 }
589
590 /**
591 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument <em>Variable Or Node Argument</em>}'.
592 * <!-- begin-user-doc -->
593 * This default implementation returns null so that we can easily ignore cases;
594 * it's useful to ignore a case when inheritance will catch all the cases anyway.
595 * <!-- end-user-doc -->
596 * @return the new adapter.
597 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument
598 * @generated
599 */
600 public Adapter createVariableOrNodeArgumentAdapter() {
601 return null;
602 }
603
604 /**
605 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Argument <em>Argument</em>}'.
606 * <!-- begin-user-doc -->
607 * This default implementation returns null so that we can easily ignore cases;
608 * it's useful to ignore a case when inheritance will catch all the cases anyway.
609 * <!-- end-user-doc -->
610 * @return the new adapter.
611 * @see org.eclipse.viatra.solver.language.model.problem.Argument
612 * @generated
613 */
614 public Adapter createArgumentAdapter() {
615 return null;
616 }
617
618 /**
619 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument <em>Node Assertion Argument</em>}'.
620 * <!-- begin-user-doc -->
621 * This default implementation returns null so that we can easily ignore cases;
622 * it's useful to ignore a case when inheritance will catch all the cases anyway.
623 * <!-- end-user-doc -->
624 * @return the new adapter.
625 * @see org.eclipse.viatra.solver.language.model.problem.NodeAssertionArgument
626 * @generated
627 */
628 public Adapter createNodeAssertionArgumentAdapter() {
629 return null;
630 }
631
632 /**
633 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.AssertionArgument <em>Assertion Argument</em>}'.
634 * <!-- begin-user-doc -->
635 * This default implementation returns null so that we can easily ignore cases;
636 * it's useful to ignore a case when inheritance will catch all the cases anyway.
637 * <!-- end-user-doc -->
638 * @return the new adapter.
639 * @see org.eclipse.viatra.solver.language.model.problem.AssertionArgument
640 * @generated
641 */
642 public Adapter createAssertionArgumentAdapter() {
643 return null;
644 }
645
646 /**
647 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument <em>Constant Assertion Argument</em>}'.
648 * <!-- begin-user-doc -->
649 * This default implementation returns null so that we can easily ignore cases;
650 * it's useful to ignore a case when inheritance will catch all the cases anyway.
651 * <!-- end-user-doc -->
652 * @return the new adapter.
653 * @see org.eclipse.viatra.solver.language.model.problem.ConstantAssertionArgument
654 * @generated
655 */
656 public Adapter createConstantAssertionArgumentAdapter() {
657 return null;
658 }
659
660 /**
661 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion <em>Node Value Assertion</em>}'.
662 * <!-- begin-user-doc -->
663 * This default implementation returns null so that we can easily ignore cases;
664 * it's useful to ignore a case when inheritance will catch all the cases anyway.
665 * <!-- end-user-doc -->
666 * @return the new adapter.
667 * @see org.eclipse.viatra.solver.language.model.problem.NodeValueAssertion
668 * @generated
669 */
670 public Adapter createNodeValueAssertionAdapter() {
671 return null;
672 }
673
674 /**
675 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.EnumDeclaration <em>Enum Declaration</em>}'.
676 * <!-- begin-user-doc -->
677 * This default implementation returns null so that we can easily ignore cases;
678 * it's useful to ignore a case when inheritance will catch all the cases anyway.
679 * <!-- end-user-doc -->
680 * @return the new adapter.
681 * @see org.eclipse.viatra.solver.language.model.problem.EnumDeclaration
682 * @generated
683 */
684 public Adapter createEnumDeclarationAdapter() {
685 return null;
686 }
687
688 /**
689 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.VariableOrNode <em>Variable Or Node</em>}'.
690 * <!-- begin-user-doc -->
691 * This default implementation returns null so that we can easily ignore cases;
692 * it's useful to ignore a case when inheritance will catch all the cases anyway.
693 * <!-- end-user-doc -->
694 * @return the new adapter.
695 * @see org.eclipse.viatra.solver.language.model.problem.VariableOrNode
696 * @generated
697 */
698 public Adapter createVariableOrNodeAdapter() {
699 return null;
700 }
701
702 /**
703 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Constant <em>Constant</em>}'.
704 * <!-- begin-user-doc -->
705 * This default implementation returns null so that we can easily ignore cases;
706 * it's useful to ignore a case when inheritance will catch all the cases anyway.
707 * <!-- end-user-doc -->
708 * @return the new adapter.
709 * @see org.eclipse.viatra.solver.language.model.problem.Constant
710 * @generated
711 */
712 public Adapter createConstantAdapter() {
713 return null;
714 }
715
716 /**
717 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.IntConstant <em>Int Constant</em>}'.
718 * <!-- begin-user-doc -->
719 * This default implementation returns null so that we can easily ignore cases;
720 * it's useful to ignore a case when inheritance will catch all the cases anyway.
721 * <!-- end-user-doc -->
722 * @return the new adapter.
723 * @see org.eclipse.viatra.solver.language.model.problem.IntConstant
724 * @generated
725 */
726 public Adapter createIntConstantAdapter() {
727 return null;
728 }
729
730 /**
731 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.RealConstant <em>Real Constant</em>}'.
732 * <!-- begin-user-doc -->
733 * This default implementation returns null so that we can easily ignore cases;
734 * it's useful to ignore a case when inheritance will catch all the cases anyway.
735 * <!-- end-user-doc -->
736 * @return the new adapter.
737 * @see org.eclipse.viatra.solver.language.model.problem.RealConstant
738 * @generated
739 */
740 public Adapter createRealConstantAdapter() {
741 return null;
742 }
743
744 /**
745 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.StringConstant <em>String Constant</em>}'.
746 * <!-- begin-user-doc -->
747 * This default implementation returns null so that we can easily ignore cases;
748 * it's useful to ignore a case when inheritance will catch all the cases anyway.
749 * <!-- end-user-doc -->
750 * @return the new adapter.
751 * @see org.eclipse.viatra.solver.language.model.problem.StringConstant
752 * @generated
753 */
754 public Adapter createStringConstantAdapter() {
755 return null;
756 }
757
758 /**
759 * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.ConstantArgument <em>Constant Argument</em>}'.
760 * <!-- begin-user-doc -->
761 * This default implementation returns null so that we can easily ignore cases;
762 * it's useful to ignore a case when inheritance will catch all the cases anyway.
763 * <!-- end-user-doc -->
764 * @return the new adapter.
765 * @see org.eclipse.viatra.solver.language.model.problem.ConstantArgument
766 * @generated
767 */
768 public Adapter createConstantArgumentAdapter() {
769 return null;
770 }
771
772 /**
773 * Creates a new adapter for the default case.
774 * <!-- begin-user-doc -->
775 * This default implementation returns null.
776 * <!-- end-user-doc -->
777 * @return the new adapter.
778 * @generated
779 */
780 public Adapter createEObjectAdapter() {
781 return null;
782 }
783
784} //ProblemAdapterFactory
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java
deleted file mode 100644
index 837d3a03..00000000
--- a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java
+++ /dev/null
@@ -1,964 +0,0 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.*;
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.model.problem.ProblemPackage
23 * @generated
24 */
25public class ProblemSwitch<T> extends Switch<T> {
26 /**
27 * The cached model package
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 protected static ProblemPackage modelPackage;
33
34 /**
35 * Creates an instance of the switch.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @generated
39 */
40 public ProblemSwitch() {
41 if (modelPackage == null) {
42 modelPackage = ProblemPackage.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 ProblemPackage.PROBLEM: {
70 Problem problem = (Problem) theEObject;
71 T result = caseProblem(problem);
72 if (result == null)
73 result = caseNamedElement(problem);
74 if (result == null)
75 result = defaultCase(theEObject);
76 return result;
77 }
78 case ProblemPackage.RELATION: {
79 Relation relation = (Relation) theEObject;
80 T result = caseRelation(relation);
81 if (result == null)
82 result = caseNamedElement(relation);
83 if (result == null)
84 result = defaultCase(theEObject);
85 return result;
86 }
87 case ProblemPackage.CLASS_DECLARATION: {
88 ClassDeclaration classDeclaration = (ClassDeclaration) theEObject;
89 T result = caseClassDeclaration(classDeclaration);
90 if (result == null)
91 result = caseRelation(classDeclaration);
92 if (result == null)
93 result = caseStatement(classDeclaration);
94 if (result == null)
95 result = caseNamedElement(classDeclaration);
96 if (result == null)
97 result = defaultCase(theEObject);
98 return result;
99 }
100 case ProblemPackage.REFERENCE_DECLARATION: {
101 ReferenceDeclaration referenceDeclaration = (ReferenceDeclaration) theEObject;
102 T result = caseReferenceDeclaration(referenceDeclaration);
103 if (result == null)
104 result = caseRelation(referenceDeclaration);
105 if (result == null)
106 result = caseNamedElement(referenceDeclaration);
107 if (result == null)
108 result = defaultCase(theEObject);
109 return result;
110 }
111 case ProblemPackage.NAMED_ELEMENT: {
112 NamedElement namedElement = (NamedElement) theEObject;
113 T result = caseNamedElement(namedElement);
114 if (result == null)
115 result = defaultCase(theEObject);
116 return result;
117 }
118 case ProblemPackage.PREDICATE_DEFINITION: {
119 PredicateDefinition predicateDefinition = (PredicateDefinition) theEObject;
120 T result = casePredicateDefinition(predicateDefinition);
121 if (result == null)
122 result = caseRelation(predicateDefinition);
123 if (result == null)
124 result = caseStatement(predicateDefinition);
125 if (result == null)
126 result = caseNamedElement(predicateDefinition);
127 if (result == null)
128 result = defaultCase(theEObject);
129 return result;
130 }
131 case ProblemPackage.PARAMETER: {
132 Parameter parameter = (Parameter) theEObject;
133 T result = caseParameter(parameter);
134 if (result == null)
135 result = caseVariable(parameter);
136 if (result == null)
137 result = caseVariableOrNode(parameter);
138 if (result == null)
139 result = caseNamedElement(parameter);
140 if (result == null)
141 result = defaultCase(theEObject);
142 return result;
143 }
144 case ProblemPackage.VARIABLE: {
145 Variable variable = (Variable) theEObject;
146 T result = caseVariable(variable);
147 if (result == null)
148 result = caseVariableOrNode(variable);
149 if (result == null)
150 result = caseNamedElement(variable);
151 if (result == null)
152 result = defaultCase(theEObject);
153 return result;
154 }
155 case ProblemPackage.CONJUNCTION: {
156 Conjunction conjunction = (Conjunction) theEObject;
157 T result = caseConjunction(conjunction);
158 if (result == null)
159 result = caseExistentialQuantifier(conjunction);
160 if (result == null)
161 result = defaultCase(theEObject);
162 return result;
163 }
164 case ProblemPackage.LITERAL: {
165 Literal literal = (Literal) theEObject;
166 T result = caseLiteral(literal);
167 if (result == null)
168 result = defaultCase(theEObject);
169 return result;
170 }
171 case ProblemPackage.ATOM: {
172 Atom atom = (Atom) theEObject;
173 T result = caseAtom(atom);
174 if (result == null)
175 result = caseLiteral(atom);
176 if (result == null)
177 result = defaultCase(theEObject);
178 return result;
179 }
180 case ProblemPackage.IMPLICIT_VARIABLE: {
181 ImplicitVariable implicitVariable = (ImplicitVariable) theEObject;
182 T result = caseImplicitVariable(implicitVariable);
183 if (result == null)
184 result = caseVariable(implicitVariable);
185 if (result == null)
186 result = caseVariableOrNode(implicitVariable);
187 if (result == null)
188 result = caseNamedElement(implicitVariable);
189 if (result == null)
190 result = defaultCase(theEObject);
191 return result;
192 }
193 case ProblemPackage.NEGATIVE_LITERAL: {
194 NegativeLiteral negativeLiteral = (NegativeLiteral) theEObject;
195 T result = caseNegativeLiteral(negativeLiteral);
196 if (result == null)
197 result = caseExistentialQuantifier(negativeLiteral);
198 if (result == null)
199 result = caseLiteral(negativeLiteral);
200 if (result == null)
201 result = defaultCase(theEObject);
202 return result;
203 }
204 case ProblemPackage.EXISTENTIAL_QUANTIFIER: {
205 ExistentialQuantifier existentialQuantifier = (ExistentialQuantifier) theEObject;
206 T result = caseExistentialQuantifier(existentialQuantifier);
207 if (result == null)
208 result = defaultCase(theEObject);
209 return result;
210 }
211 case ProblemPackage.ASSERTION: {
212 Assertion assertion = (Assertion) theEObject;
213 T result = caseAssertion(assertion);
214 if (result == null)
215 result = caseStatement(assertion);
216 if (result == null)
217 result = defaultCase(theEObject);
218 return result;
219 }
220 case ProblemPackage.NODE: {
221 Node node = (Node) theEObject;
222 T result = caseNode(node);
223 if (result == null)
224 result = caseVariableOrNode(node);
225 if (result == null)
226 result = caseNamedElement(node);
227 if (result == null)
228 result = defaultCase(theEObject);
229 return result;
230 }
231 case ProblemPackage.SCOPE_DECLARATION: {
232 ScopeDeclaration scopeDeclaration = (ScopeDeclaration) theEObject;
233 T result = caseScopeDeclaration(scopeDeclaration);
234 if (result == null)
235 result = caseStatement(scopeDeclaration);
236 if (result == null)
237 result = defaultCase(theEObject);
238 return result;
239 }
240 case ProblemPackage.STATEMENT: {
241 Statement statement = (Statement) theEObject;
242 T result = caseStatement(statement);
243 if (result == null)
244 result = defaultCase(theEObject);
245 return result;
246 }
247 case ProblemPackage.TYPE_SCOPE: {
248 TypeScope typeScope = (TypeScope) theEObject;
249 T result = caseTypeScope(typeScope);
250 if (result == null)
251 result = defaultCase(theEObject);
252 return result;
253 }
254 case ProblemPackage.MULTIPLICITY: {
255 Multiplicity multiplicity = (Multiplicity) theEObject;
256 T result = caseMultiplicity(multiplicity);
257 if (result == null)
258 result = defaultCase(theEObject);
259 return result;
260 }
261 case ProblemPackage.RANGE_MULTIPLICITY: {
262 RangeMultiplicity rangeMultiplicity = (RangeMultiplicity) theEObject;
263 T result = caseRangeMultiplicity(rangeMultiplicity);
264 if (result == null)
265 result = caseMultiplicity(rangeMultiplicity);
266 if (result == null)
267 result = defaultCase(theEObject);
268 return result;
269 }
270 case ProblemPackage.EXACT_MULTIPLICITY: {
271 ExactMultiplicity exactMultiplicity = (ExactMultiplicity) theEObject;
272 T result = caseExactMultiplicity(exactMultiplicity);
273 if (result == null)
274 result = caseMultiplicity(exactMultiplicity);
275 if (result == null)
276 result = defaultCase(theEObject);
277 return result;
278 }
279 case ProblemPackage.UNBOUNDED_MULTIPLICITY: {
280 UnboundedMultiplicity unboundedMultiplicity = (UnboundedMultiplicity) theEObject;
281 T result = caseUnboundedMultiplicity(unboundedMultiplicity);
282 if (result == null)
283 result = caseMultiplicity(unboundedMultiplicity);
284 if (result == null)
285 result = defaultCase(theEObject);
286 return result;
287 }
288 case ProblemPackage.VARIABLE_OR_NODE_ARGUMENT: {
289 VariableOrNodeArgument variableOrNodeArgument = (VariableOrNodeArgument) theEObject;
290 T result = caseVariableOrNodeArgument(variableOrNodeArgument);
291 if (result == null)
292 result = caseArgument(variableOrNodeArgument);
293 if (result == null)
294 result = defaultCase(theEObject);
295 return result;
296 }
297 case ProblemPackage.ENUM_DECLARATION: {
298 EnumDeclaration enumDeclaration = (EnumDeclaration) theEObject;
299 T result = caseEnumDeclaration(enumDeclaration);
300 if (result == null)
301 result = caseRelation(enumDeclaration);
302 if (result == null)
303 result = caseStatement(enumDeclaration);
304 if (result == null)
305 result = caseNamedElement(enumDeclaration);
306 if (result == null)
307 result = defaultCase(theEObject);
308 return result;
309 }
310 case ProblemPackage.VARIABLE_OR_NODE: {
311 VariableOrNode variableOrNode = (VariableOrNode) theEObject;
312 T result = caseVariableOrNode(variableOrNode);
313 if (result == null)
314 result = caseNamedElement(variableOrNode);
315 if (result == null)
316 result = defaultCase(theEObject);
317 return result;
318 }
319 case ProblemPackage.CONSTANT: {
320 Constant constant = (Constant) theEObject;
321 T result = caseConstant(constant);
322 if (result == null)
323 result = defaultCase(theEObject);
324 return result;
325 }
326 case ProblemPackage.INT_CONSTANT: {
327 IntConstant intConstant = (IntConstant) theEObject;
328 T result = caseIntConstant(intConstant);
329 if (result == null)
330 result = caseConstant(intConstant);
331 if (result == null)
332 result = defaultCase(theEObject);
333 return result;
334 }
335 case ProblemPackage.REAL_CONSTANT: {
336 RealConstant realConstant = (RealConstant) theEObject;
337 T result = caseRealConstant(realConstant);
338 if (result == null)
339 result = caseConstant(realConstant);
340 if (result == null)
341 result = defaultCase(theEObject);
342 return result;
343 }
344 case ProblemPackage.STRING_CONSTANT: {
345 StringConstant stringConstant = (StringConstant) theEObject;
346 T result = caseStringConstant(stringConstant);
347 if (result == null)
348 result = caseConstant(stringConstant);
349 if (result == null)
350 result = defaultCase(theEObject);
351 return result;
352 }
353 case ProblemPackage.CONSTANT_ARGUMENT: {
354 ConstantArgument constantArgument = (ConstantArgument) theEObject;
355 T result = caseConstantArgument(constantArgument);
356 if (result == null)
357 result = caseArgument(constantArgument);
358 if (result == null)
359 result = defaultCase(theEObject);
360 return result;
361 }
362 case ProblemPackage.ARGUMENT: {
363 Argument argument = (Argument) theEObject;
364 T result = caseArgument(argument);
365 if (result == null)
366 result = defaultCase(theEObject);
367 return result;
368 }
369 case ProblemPackage.NODE_ASSERTION_ARGUMENT: {
370 NodeAssertionArgument nodeAssertionArgument = (NodeAssertionArgument) theEObject;
371 T result = caseNodeAssertionArgument(nodeAssertionArgument);
372 if (result == null)
373 result = caseAssertionArgument(nodeAssertionArgument);
374 if (result == null)
375 result = defaultCase(theEObject);
376 return result;
377 }
378 case ProblemPackage.ASSERTION_ARGUMENT: {
379 AssertionArgument assertionArgument = (AssertionArgument) theEObject;
380 T result = caseAssertionArgument(assertionArgument);
381 if (result == null)
382 result = defaultCase(theEObject);
383 return result;
384 }
385 case ProblemPackage.CONSTANT_ASSERTION_ARGUMENT: {
386 ConstantAssertionArgument constantAssertionArgument = (ConstantAssertionArgument) theEObject;
387 T result = caseConstantAssertionArgument(constantAssertionArgument);
388 if (result == null)
389 result = caseAssertionArgument(constantAssertionArgument);
390 if (result == null)
391 result = defaultCase(theEObject);
392 return result;
393 }
394 case ProblemPackage.NODE_VALUE_ASSERTION: {
395 NodeValueAssertion nodeValueAssertion = (NodeValueAssertion) theEObject;
396 T result = caseNodeValueAssertion(nodeValueAssertion);
397 if (result == null)
398 result = caseStatement(nodeValueAssertion);
399 if (result == null)
400 result = defaultCase(theEObject);
401 return result;
402 }
403 default:
404 return defaultCase(theEObject);
405 }
406 }
407
408 /**
409 * Returns the result of interpreting the object as an instance of '<em>Problem</em>'.
410 * <!-- begin-user-doc -->
411 * This implementation returns null;
412 * returning a non-null result will terminate the switch.
413 * <!-- end-user-doc -->
414 * @param object the target of the switch.
415 * @return the result of interpreting the object as an instance of '<em>Problem</em>'.
416 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
417 * @generated
418 */
419 public T caseProblem(Problem object) {
420 return null;
421 }
422
423 /**
424 * Returns the result of interpreting the object as an instance of '<em>Relation</em>'.
425 * <!-- begin-user-doc -->
426 * This implementation returns null;
427 * returning a non-null result will terminate the switch.
428 * <!-- end-user-doc -->
429 * @param object the target of the switch.
430 * @return the result of interpreting the object as an instance of '<em>Relation</em>'.
431 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
432 * @generated
433 */
434 public T caseRelation(Relation object) {
435 return null;
436 }
437
438 /**
439 * Returns the result of interpreting the object as an instance of '<em>Class Declaration</em>'.
440 * <!-- begin-user-doc -->
441 * This implementation returns null;
442 * returning a non-null result will terminate the switch.
443 * <!-- end-user-doc -->
444 * @param object the target of the switch.
445 * @return the result of interpreting the object as an instance of '<em>Class Declaration</em>'.
446 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
447 * @generated
448 */
449 public T caseClassDeclaration(ClassDeclaration object) {
450 return null;
451 }
452
453 /**
454 * Returns the result of interpreting the object as an instance of '<em>Reference Declaration</em>'.
455 * <!-- begin-user-doc -->
456 * This implementation returns null;
457 * returning a non-null result will terminate the switch.
458 * <!-- end-user-doc -->
459 * @param object the target of the switch.
460 * @return the result of interpreting the object as an instance of '<em>Reference Declaration</em>'.
461 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
462 * @generated
463 */
464 public T caseReferenceDeclaration(ReferenceDeclaration object) {
465 return null;
466 }
467
468 /**
469 * Returns the result of interpreting the object as an instance of '<em>Named Element</em>'.
470 * <!-- begin-user-doc -->
471 * This implementation returns null;
472 * returning a non-null result will terminate the switch.
473 * <!-- end-user-doc -->
474 * @param object the target of the switch.
475 * @return the result of interpreting the object as an instance of '<em>Named Element</em>'.
476 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
477 * @generated
478 */
479 public T caseNamedElement(NamedElement object) {
480 return null;
481 }
482
483 /**
484 * Returns the result of interpreting the object as an instance of '<em>Predicate Definition</em>'.
485 * <!-- begin-user-doc -->
486 * This implementation returns null;
487 * returning a non-null result will terminate the switch.
488 * <!-- end-user-doc -->
489 * @param object the target of the switch.
490 * @return the result of interpreting the object as an instance of '<em>Predicate Definition</em>'.
491 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
492 * @generated
493 */
494 public T casePredicateDefinition(PredicateDefinition object) {
495 return null;
496 }
497
498 /**
499 * Returns the result of interpreting the object as an instance of '<em>Parameter</em>'.
500 * <!-- begin-user-doc -->
501 * This implementation returns null;
502 * returning a non-null result will terminate the switch.
503 * <!-- end-user-doc -->
504 * @param object the target of the switch.
505 * @return the result of interpreting the object as an instance of '<em>Parameter</em>'.
506 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
507 * @generated
508 */
509 public T caseParameter(Parameter object) {
510 return null;
511 }
512
513 /**
514 * Returns the result of interpreting the object as an instance of '<em>Variable</em>'.
515 * <!-- begin-user-doc -->
516 * This implementation returns null;
517 * returning a non-null result will terminate the switch.
518 * <!-- end-user-doc -->
519 * @param object the target of the switch.
520 * @return the result of interpreting the object as an instance of '<em>Variable</em>'.
521 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
522 * @generated
523 */
524 public T caseVariable(Variable object) {
525 return null;
526 }
527
528 /**
529 * Returns the result of interpreting the object as an instance of '<em>Conjunction</em>'.
530 * <!-- begin-user-doc -->
531 * This implementation returns null;
532 * returning a non-null result will terminate the switch.
533 * <!-- end-user-doc -->
534 * @param object the target of the switch.
535 * @return the result of interpreting the object as an instance of '<em>Conjunction</em>'.
536 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
537 * @generated
538 */
539 public T caseConjunction(Conjunction object) {
540 return null;
541 }
542
543 /**
544 * Returns the result of interpreting the object as an instance of '<em>Literal</em>'.
545 * <!-- begin-user-doc -->
546 * This implementation returns null;
547 * returning a non-null result will terminate the switch.
548 * <!-- end-user-doc -->
549 * @param object the target of the switch.
550 * @return the result of interpreting the object as an instance of '<em>Literal</em>'.
551 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
552 * @generated
553 */
554 public T caseLiteral(Literal object) {
555 return null;
556 }
557
558 /**
559 * Returns the result of interpreting the object as an instance of '<em>Atom</em>'.
560 * <!-- begin-user-doc -->
561 * This implementation returns null;
562 * returning a non-null result will terminate the switch.
563 * <!-- end-user-doc -->
564 * @param object the target of the switch.
565 * @return the result of interpreting the object as an instance of '<em>Atom</em>'.
566 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
567 * @generated
568 */
569 public T caseAtom(Atom object) {
570 return null;
571 }
572
573 /**
574 * Returns the result of interpreting the object as an instance of '<em>Implicit Variable</em>'.
575 * <!-- begin-user-doc -->
576 * This implementation returns null;
577 * returning a non-null result will terminate the switch.
578 * <!-- end-user-doc -->
579 * @param object the target of the switch.
580 * @return the result of interpreting the object as an instance of '<em>Implicit Variable</em>'.
581 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
582 * @generated
583 */
584 public T caseImplicitVariable(ImplicitVariable object) {
585 return null;
586 }
587
588 /**
589 * Returns the result of interpreting the object as an instance of '<em>Negative Literal</em>'.
590 * <!-- begin-user-doc -->
591 * This implementation returns null;
592 * returning a non-null result will terminate the switch.
593 * <!-- end-user-doc -->
594 * @param object the target of the switch.
595 * @return the result of interpreting the object as an instance of '<em>Negative Literal</em>'.
596 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
597 * @generated
598 */
599 public T caseNegativeLiteral(NegativeLiteral object) {
600 return null;
601 }
602
603 /**
604 * Returns the result of interpreting the object as an instance of '<em>Existential Quantifier</em>'.
605 * <!-- begin-user-doc -->
606 * This implementation returns null;
607 * returning a non-null result will terminate the switch.
608 * <!-- end-user-doc -->
609 * @param object the target of the switch.
610 * @return the result of interpreting the object as an instance of '<em>Existential Quantifier</em>'.
611 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
612 * @generated
613 */
614 public T caseExistentialQuantifier(ExistentialQuantifier object) {
615 return null;
616 }
617
618 /**
619 * Returns the result of interpreting the object as an instance of '<em>Assertion</em>'.
620 * <!-- begin-user-doc -->
621 * This implementation returns null;
622 * returning a non-null result will terminate the switch.
623 * <!-- end-user-doc -->
624 * @param object the target of the switch.
625 * @return the result of interpreting the object as an instance of '<em>Assertion</em>'.
626 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
627 * @generated
628 */
629 public T caseAssertion(Assertion object) {
630 return null;
631 }
632
633 /**
634 * Returns the result of interpreting the object as an instance of '<em>Node</em>'.
635 * <!-- begin-user-doc -->
636 * This implementation returns null;
637 * returning a non-null result will terminate the switch.
638 * <!-- end-user-doc -->
639 * @param object the target of the switch.
640 * @return the result of interpreting the object as an instance of '<em>Node</em>'.
641 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
642 * @generated
643 */
644 public T caseNode(Node object) {
645 return null;
646 }
647
648 /**
649 * Returns the result of interpreting the object as an instance of '<em>Scope Declaration</em>'.
650 * <!-- begin-user-doc -->
651 * This implementation returns null;
652 * returning a non-null result will terminate the switch.
653 * <!-- end-user-doc -->
654 * @param object the target of the switch.
655 * @return the result of interpreting the object as an instance of '<em>Scope Declaration</em>'.
656 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
657 * @generated
658 */
659 public T caseScopeDeclaration(ScopeDeclaration object) {
660 return null;
661 }
662
663 /**
664 * Returns the result of interpreting the object as an instance of '<em>Statement</em>'.
665 * <!-- begin-user-doc -->
666 * This implementation returns null;
667 * returning a non-null result will terminate the switch.
668 * <!-- end-user-doc -->
669 * @param object the target of the switch.
670 * @return the result of interpreting the object as an instance of '<em>Statement</em>'.
671 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
672 * @generated
673 */
674 public T caseStatement(Statement object) {
675 return null;
676 }
677
678 /**
679 * Returns the result of interpreting the object as an instance of '<em>Type Scope</em>'.
680 * <!-- begin-user-doc -->
681 * This implementation returns null;
682 * returning a non-null result will terminate the switch.
683 * <!-- end-user-doc -->
684 * @param object the target of the switch.
685 * @return the result of interpreting the object as an instance of '<em>Type Scope</em>'.
686 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
687 * @generated
688 */
689 public T caseTypeScope(TypeScope object) {
690 return null;
691 }
692
693 /**
694 * Returns the result of interpreting the object as an instance of '<em>Multiplicity</em>'.
695 * <!-- begin-user-doc -->
696 * This implementation returns null;
697 * returning a non-null result will terminate the switch.
698 * <!-- end-user-doc -->
699 * @param object the target of the switch.
700 * @return the result of interpreting the object as an instance of '<em>Multiplicity</em>'.
701 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
702 * @generated
703 */
704 public T caseMultiplicity(Multiplicity object) {
705 return null;
706 }
707
708 /**
709 * Returns the result of interpreting the object as an instance of '<em>Range Multiplicity</em>'.
710 * <!-- begin-user-doc -->
711 * This implementation returns null;
712 * returning a non-null result will terminate the switch.
713 * <!-- end-user-doc -->
714 * @param object the target of the switch.
715 * @return the result of interpreting the object as an instance of '<em>Range Multiplicity</em>'.
716 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
717 * @generated
718 */
719 public T caseRangeMultiplicity(RangeMultiplicity object) {
720 return null;
721 }
722
723 /**
724 * Returns the result of interpreting the object as an instance of '<em>Exact Multiplicity</em>'.
725 * <!-- begin-user-doc -->
726 * This implementation returns null;
727 * returning a non-null result will terminate the switch.
728 * <!-- end-user-doc -->
729 * @param object the target of the switch.
730 * @return the result of interpreting the object as an instance of '<em>Exact Multiplicity</em>'.
731 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
732 * @generated
733 */
734 public T caseExactMultiplicity(ExactMultiplicity object) {
735 return null;
736 }
737
738 /**
739 * Returns the result of interpreting the object as an instance of '<em>Unbounded Multiplicity</em>'.
740 * <!-- begin-user-doc -->
741 * This implementation returns null;
742 * returning a non-null result will terminate the switch.
743 * <!-- end-user-doc -->
744 * @param object the target of the switch.
745 * @return the result of interpreting the object as an instance of '<em>Unbounded Multiplicity</em>'.
746 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
747 * @generated
748 */
749 public T caseUnboundedMultiplicity(UnboundedMultiplicity object) {
750 return null;
751 }
752
753 /**
754 * Returns the result of interpreting the object as an instance of '<em>Variable Or Node Argument</em>'.
755 * <!-- begin-user-doc -->
756 * This implementation returns null;
757 * returning a non-null result will terminate the switch.
758 * <!-- end-user-doc -->
759 * @param object the target of the switch.
760 * @return the result of interpreting the object as an instance of '<em>Variable Or Node Argument</em>'.
761 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
762 * @generated
763 */
764 public T caseVariableOrNodeArgument(VariableOrNodeArgument object) {
765 return null;
766 }
767
768 /**
769 * Returns the result of interpreting the object as an instance of '<em>Argument</em>'.
770 * <!-- begin-user-doc -->
771 * This implementation returns null;
772 * returning a non-null result will terminate the switch.
773 * <!-- end-user-doc -->
774 * @param object the target of the switch.
775 * @return the result of interpreting the object as an instance of '<em>Argument</em>'.
776 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
777 * @generated
778 */
779 public T caseArgument(Argument object) {
780 return null;
781 }
782
783 /**
784 * Returns the result of interpreting the object as an instance of '<em>Node Assertion Argument</em>'.
785 * <!-- begin-user-doc -->
786 * This implementation returns null;
787 * returning a non-null result will terminate the switch.
788 * <!-- end-user-doc -->
789 * @param object the target of the switch.
790 * @return the result of interpreting the object as an instance of '<em>Node Assertion Argument</em>'.
791 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
792 * @generated
793 */
794 public T caseNodeAssertionArgument(NodeAssertionArgument object) {
795 return null;
796 }
797
798 /**
799 * Returns the result of interpreting the object as an instance of '<em>Assertion Argument</em>'.
800 * <!-- begin-user-doc -->
801 * This implementation returns null;
802 * returning a non-null result will terminate the switch.
803 * <!-- end-user-doc -->
804 * @param object the target of the switch.
805 * @return the result of interpreting the object as an instance of '<em>Assertion Argument</em>'.
806 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
807 * @generated
808 */
809 public T caseAssertionArgument(AssertionArgument object) {
810 return null;
811 }
812
813 /**
814 * Returns the result of interpreting the object as an instance of '<em>Constant Assertion Argument</em>'.
815 * <!-- begin-user-doc -->
816 * This implementation returns null;
817 * returning a non-null result will terminate the switch.
818 * <!-- end-user-doc -->
819 * @param object the target of the switch.
820 * @return the result of interpreting the object as an instance of '<em>Constant Assertion Argument</em>'.
821 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
822 * @generated
823 */
824 public T caseConstantAssertionArgument(ConstantAssertionArgument object) {
825 return null;
826 }
827
828 /**
829 * Returns the result of interpreting the object as an instance of '<em>Node Value Assertion</em>'.
830 * <!-- begin-user-doc -->
831 * This implementation returns null;
832 * returning a non-null result will terminate the switch.
833 * <!-- end-user-doc -->
834 * @param object the target of the switch.
835 * @return the result of interpreting the object as an instance of '<em>Node Value Assertion</em>'.
836 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
837 * @generated
838 */
839 public T caseNodeValueAssertion(NodeValueAssertion object) {
840 return null;
841 }
842
843 /**
844 * Returns the result of interpreting the object as an instance of '<em>Enum Declaration</em>'.
845 * <!-- begin-user-doc -->
846 * This implementation returns null;
847 * returning a non-null result will terminate the switch.
848 * <!-- end-user-doc -->
849 * @param object the target of the switch.
850 * @return the result of interpreting the object as an instance of '<em>Enum Declaration</em>'.
851 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
852 * @generated
853 */
854 public T caseEnumDeclaration(EnumDeclaration object) {
855 return null;
856 }
857
858 /**
859 * Returns the result of interpreting the object as an instance of '<em>Variable Or Node</em>'.
860 * <!-- begin-user-doc -->
861 * This implementation returns null;
862 * returning a non-null result will terminate the switch.
863 * <!-- end-user-doc -->
864 * @param object the target of the switch.
865 * @return the result of interpreting the object as an instance of '<em>Variable Or Node</em>'.
866 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
867 * @generated
868 */
869 public T caseVariableOrNode(VariableOrNode object) {
870 return null;
871 }
872
873 /**
874 * Returns the result of interpreting the object as an instance of '<em>Constant</em>'.
875 * <!-- begin-user-doc -->
876 * This implementation returns null;
877 * returning a non-null result will terminate the switch.
878 * <!-- end-user-doc -->
879 * @param object the target of the switch.
880 * @return the result of interpreting the object as an instance of '<em>Constant</em>'.
881 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
882 * @generated
883 */
884 public T caseConstant(Constant object) {
885 return null;
886 }
887
888 /**
889 * Returns the result of interpreting the object as an instance of '<em>Int Constant</em>'.
890 * <!-- begin-user-doc -->
891 * This implementation returns null;
892 * returning a non-null result will terminate the switch.
893 * <!-- end-user-doc -->
894 * @param object the target of the switch.
895 * @return the result of interpreting the object as an instance of '<em>Int Constant</em>'.
896 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
897 * @generated
898 */
899 public T caseIntConstant(IntConstant object) {
900 return null;
901 }
902
903 /**
904 * Returns the result of interpreting the object as an instance of '<em>Real Constant</em>'.
905 * <!-- begin-user-doc -->
906 * This implementation returns null;
907 * returning a non-null result will terminate the switch.
908 * <!-- end-user-doc -->
909 * @param object the target of the switch.
910 * @return the result of interpreting the object as an instance of '<em>Real Constant</em>'.
911 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
912 * @generated
913 */
914 public T caseRealConstant(RealConstant object) {
915 return null;
916 }
917
918 /**
919 * Returns the result of interpreting the object as an instance of '<em>String Constant</em>'.
920 * <!-- begin-user-doc -->
921 * This implementation returns null;
922 * returning a non-null result will terminate the switch.
923 * <!-- end-user-doc -->
924 * @param object the target of the switch.
925 * @return the result of interpreting the object as an instance of '<em>String Constant</em>'.
926 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
927 * @generated
928 */
929 public T caseStringConstant(StringConstant object) {
930 return null;
931 }
932
933 /**
934 * Returns the result of interpreting the object as an instance of '<em>Constant Argument</em>'.
935 * <!-- begin-user-doc -->
936 * This implementation returns null;
937 * returning a non-null result will terminate the switch.
938 * <!-- end-user-doc -->
939 * @param object the target of the switch.
940 * @return the result of interpreting the object as an instance of '<em>Constant Argument</em>'.
941 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
942 * @generated
943 */
944 public T caseConstantArgument(ConstantArgument object) {
945 return null;
946 }
947
948 /**
949 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
950 * <!-- begin-user-doc -->
951 * This implementation returns null;
952 * returning a non-null result will terminate the switch, but this is the last case anyway.
953 * <!-- end-user-doc -->
954 * @param object the target of the switch.
955 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
956 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
957 * @generated
958 */
959 @Override
960 public T defaultCase(EObject object) {
961 return null;
962 }
963
964} //ProblemSwitch
diff --git a/language-model/src/main/java/org/eclipse/viatra/solver/language/model/GenerateProblemModel.mwe2 b/language-model/src/main/java/org/eclipse/viatra/solver/language/model/GenerateProblemModel.mwe2
new file mode 100644
index 00000000..6ad7d7a4
--- /dev/null
+++ b/language-model/src/main/java/org/eclipse/viatra/solver/language/model/GenerateProblemModel.mwe2
@@ -0,0 +1,17 @@
1module org.eclipse.viatra.solver.language.model.GenerateProblemModel
2
3Workflow {
4 bean = org.eclipse.emf.mwe.utils.StandaloneSetup {
5 platformUri = ".."
6 }
7
8 component = org.eclipse.emf.mwe.utils.DirectoryCleaner {
9 directory = "src/main/emf-gen"
10 }
11
12 component = org.eclipse.emf.mwe2.ecore.EcoreGenerator {
13 generateCustomClasses = false
14 genModel = "platform:/resource/language-model/src/main/resources/model/problem.genmodel"
15 srcPath = "platform:/resource/language-model/src/main/emf-gen"
16 }
17} \ No newline at end of file
diff --git a/language-web/build.gradle b/language-web/build.gradle
index 3e0008da..ff0f9e9c 100644
--- a/language-web/build.gradle
+++ b/language-web/build.gradle
@@ -1,31 +1,76 @@
1plugins {
2 id 'war'
3}
4
5dependencies { 1dependencies {
6 compile project(':language') 2 compile project(':language')
7 compile project(':language-ide') 3 compile project(':language-ide')
8 compile "org.eclipse.xtext:org.eclipse.xtext.xbase.web:${xtextVersion}" 4 compile "org.eclipse.xtext:org.eclipse.xtext.xbase.web:${xtextVersion}"
9 compile "org.eclipse.xtext:org.eclipse.xtext.web.servlet:${xtextVersion}" 5 compile "org.eclipse.xtext:org.eclipse.xtext.web.servlet:${xtextVersion}"
10 compile "org.eclipse.xtend:org.eclipse.xtend.lib:${xtextVersion}" 6 compile "org.eclipse.xtend:org.eclipse.xtend.lib:${xtextVersion}"
11 compile "org.webjars:requirejs:2.3.6" 7 compile "org.eclipse.jetty:jetty-server:9.4.42.v20210604"
12 compile "org.webjars:requirejs-text:2.0.15" 8 compile "org.eclipse.jetty:jetty-annotations:9.4.42.v20210604"
13 compile "org.webjars:jquery:3.6.0" 9 compile "org.slf4j:slf4j-simple:1.7.31"
14 // CodeMirror 5.53.0 and later is incompatible with Xtext due to 10}
15 // https://github.com/codemirror/CodeMirror/commit/b2d26b4ccb1d0994ae84d18ad8b84018de176da9#commitcomment-41525744 11
16 compile "org.webjars.npm:codemirror:5.52.2" 12def webpackOutputDir = "${buildDir}/webpack"
17 providedCompile "org.eclipse.jetty:jetty-annotations:9.4.42.v20210604" 13def productionResources = "${webpackOutputDir}/production"
18 providedCompile "org.eclipse.jetty:jetty-rewrite:9.4.42.v20210604" 14def mainClass = 'org.eclipse.viatra.solver.language.web.ServerLauncher'
19 providedCompile "org.slf4j:slf4j-simple:1.7.31" 15
16apply plugin: 'com.moowork.node'
17
18for (environment in ['production', 'development']) {
19 def taskName = 'webpack' + environment.substring(0, 1).toUpperCase() + environment.substring(1);
20 task(taskName, type: NpmTask) {
21 dependsOn ':language:generateXtext'
22 inputs.dir 'src/main/css'
23 inputs.dir 'src/main/html'
24 inputs.dir 'src/main/js'
25 inputs.dir "${buildDir}/generated/sources/xtext/js"
26 inputs.file 'webpack.config.js'
27 outputs.dir "${webpackOutputDir}/${environment}"
28 args = ['run', 'build']
29 setEnvironment NODE_ENV: environment
30 }
31}
32
33apply plugin: 'application'
34mainClassName = mainClass
35distZip.enabled = false
36
37jar {
38 dependsOn webpackProduction
39 from(productionResources) {
40 into 'webapp'
41 }
42}
43
44apply plugin: 'com.github.johnrengelman.shadow'
45shadowDistZip.enabled = false
46
47shadowJar {
48 dependsOn webpackProduction
49 from(project.convention.getPlugin(JavaPluginConvention).sourceSets.main.output)
50 configurations = [project.configurations.runtime]
51 exclude('META-INF/INDEX.LIST', 'META-INF/*.SF', 'META-INF/*.DSA', 'META-INF/*.RSA','schema/*',
52 '.options', '.api_description', '*.profile', 'about.*', 'about_*.html', 'about_files/*',
53 'plugin.xml', 'systembundle.properties', 'profile.list', 'META-INF/resources/xtext/**')
54 append('plugin.properties')
55 from(productionResources) {
56 into 'webapp'
57 }
20} 58}
21 59
22task jettyRun(type:JavaExec) { 60task jettyRun(type: JavaExec) {
23 dependsOn(sourceSets.main.runtimeClasspath) 61 dependsOn webpackDevelopment
62 dependsOn sourceSets.main.runtimeClasspath
24 classpath = sourceSets.main.runtimeClasspath.filter{it.exists()} 63 classpath = sourceSets.main.runtimeClasspath.filter{it.exists()}
25 main = 'org.eclipse.viatra.solver.language.web.ServerLauncher' 64 main = mainClass
26 standardInput = System.in 65 standardInput = System.in
27 group = 'run' 66 group = 'run'
28 description = 'Starts an example Jetty server with your language' 67 description = 'Starts an example Jetty server with your language'
68 environment(
69 DEV_MODE: 'true',
70 LISTEN_ADDRESS: 'localhost',
71 LISTEN_PORT: '1313',
72 BASE_RESOURCE: "${webpackOutputDir}/development"
73 )
29} 74}
30 75
31eclipse { 76eclipse {
diff --git a/language-web/package.json b/language-web/package.json
index c503b306..f75aeced 100644
--- a/language-web/package.json
+++ b/language-web/package.json
@@ -1,10 +1,11 @@
1{ 1{
2 "name": "language-web", 2 "name": "language-web",
3 "version": "0.1.0", 3 "version": "1.0.0",
4 "description": "Web frontend for VIATRA-Generator", 4 "description": "Web frontend for VIATRA-Generator",
5 "main": "index.js", 5 "main": "index.js",
6 "scripts": { 6 "scripts": {
7 "test": "echo \"Error: no test specified\" && exit 1" 7 "test": "echo \"Error: no test specified\" && exit 1",
8 "build": "webpack"
8 }, 9 },
9 "repository": { 10 "repository": {
10 "type": "git", 11 "type": "git",
diff --git a/language-web/src/main/java/org/eclipse/viatra/solver/language/web/ServerLauncher.java b/language-web/src/main/java/org/eclipse/viatra/solver/language/web/ServerLauncher.java
index d0b2562a..7127d7d5 100644
--- a/language-web/src/main/java/org/eclipse/viatra/solver/language/web/ServerLauncher.java
+++ b/language-web/src/main/java/org/eclipse/viatra/solver/language/web/ServerLauncher.java
@@ -3,55 +3,106 @@
3 */ 3 */
4package org.eclipse.viatra.solver.language.web; 4package org.eclipse.viatra.solver.language.web;
5 5
6import java.io.IOException;
6import java.net.InetSocketAddress; 7import java.net.InetSocketAddress;
8import java.net.URI;
9import java.net.URISyntaxException;
10import java.net.URL;
11
7import org.eclipse.jetty.annotations.AnnotationConfiguration; 12import org.eclipse.jetty.annotations.AnnotationConfiguration;
8import org.eclipse.jetty.server.Server; 13import org.eclipse.jetty.server.Server;
9import org.eclipse.jetty.util.log.Slf4jLog; 14import org.eclipse.jetty.util.log.Slf4jLog;
15import org.eclipse.jetty.util.resource.Resource;
10import org.eclipse.jetty.webapp.Configuration; 16import org.eclipse.jetty.webapp.Configuration;
11import org.eclipse.jetty.webapp.MetaInfConfiguration; 17import org.eclipse.jetty.webapp.MetaInfConfiguration;
12import org.eclipse.jetty.webapp.WebAppContext; 18import org.eclipse.jetty.webapp.WebAppContext;
13import org.eclipse.jetty.webapp.WebInfConfiguration; 19import org.eclipse.jetty.webapp.WebInfConfiguration;
14import org.eclipse.jetty.webapp.WebXmlConfiguration; 20import org.eclipse.jetty.webapp.WebXmlConfiguration;
15 21
16/**
17 * This program starts an HTTP server for testing the web integration of your
18 * DSL. Just execute it and point a web browser to http://localhost:8080/
19 */
20public class ServerLauncher { 22public class ServerLauncher {
21 public static void main(String[] args) { 23 private static final Slf4jLog LOG = new Slf4jLog(ServerLauncher.class.getName());
22 Server server = new Server(new InetSocketAddress("localhost", 1313)); 24
25 private final Server server;
26
27 public ServerLauncher(InetSocketAddress bindAddress, Resource baseResource) throws IOException, URISyntaxException {
28 server = new Server(bindAddress);
23 WebAppContext ctx = new WebAppContext(); 29 WebAppContext ctx = new WebAppContext();
24 ctx.setResourceBase("src/main/webapp"); 30 ctx.setBaseResource(baseResource);
25 ctx.setWelcomeFiles(new String[] { "index.html" }); 31 ctx.setWelcomeFiles(new String[] { "index.html" });
26 ctx.setContextPath("/"); 32 ctx.setContextPath("/");
27 ctx.setConfigurations(new Configuration[] { new AnnotationConfiguration(), new WebXmlConfiguration(), 33 ctx.setConfigurations(new Configuration[] { new AnnotationConfiguration(), new WebXmlConfiguration(),
28 new WebInfConfiguration(), new MetaInfConfiguration() }); 34 new WebInfConfiguration(), new MetaInfConfiguration() });
29 ctx.setAttribute(WebInfConfiguration.CONTAINER_JAR_PATTERN, ".*/language-web/.*,.*\\.jar"); 35 ctx.setAttribute(WebInfConfiguration.CONTAINER_JAR_PATTERN, ".*/build/classes/.*,.*\\.jar");
30 ctx.setInitParameter("org.eclipse.jetty.servlet.Default.useFileMappedBuffer", "false"); 36 ctx.setInitParameter("org.eclipse.jetty.servlet.Default.useFileMappedBuffer", "false");
31 server.setHandler(ctx); 37 server.setHandler(ctx);
32 Slf4jLog log = new Slf4jLog(ServerLauncher.class.getName()); 38 }
33 try { 39
34 server.start(); 40 public void start() throws Exception {
35 log.info("Server started " + server.getURI() + "..."); 41 server.start();
36 new Thread() { 42 LOG.info("Server started " + server.getURI() + "...");
37 public void run() { 43 new Thread() {
38 try { 44 public void run() {
39 log.info("Press enter to stop the server..."); 45 try {
40 int key = System.in.read(); 46 LOG.info("Press enter to stop the server...");
41 if (key != -1) { 47 int key = System.in.read();
42 server.stop(); 48 if (key != -1) {
43 } else { 49 server.stop();
44 log.warn( 50 } else {
45 "Console input is not available. In order to stop the server, you need to cancel process manually."); 51 LOG.warn(
46 } 52 "Console input is not available. In order to stop the server, you need to cancel process manually.");
47 } catch (Exception e) {
48 log.warn(e);
49 } 53 }
54 } catch (Exception e) {
55 LOG.warn(e);
56 System.exit(-1);
50 } 57 }
51 }.start(); 58 }
59 }.start();
60 try {
52 server.join(); 61 server.join();
62 } catch (InterruptedException e) {
63 LOG.info(e);
64 }
65 }
66
67 private static InetSocketAddress getBindAddress(String listenAddress, int port) {
68 if (listenAddress == null) {
69 return new InetSocketAddress(port);
70 }
71 return new InetSocketAddress(listenAddress, port);
72 }
73
74 private static Resource getBaseResource(String baseResourceOverride) throws IOException, URISyntaxException {
75 if (baseResourceOverride != null) {
76 return Resource.newResource(baseResourceOverride);
77 }
78 URL indexUrlInJar = ServerLauncher.class.getResource("/webapp/index.html");
79 if (indexUrlInJar == null) {
80 throw new RuntimeException("Cannot find pacakged web assets");
81 }
82 URI webRootUri = URI.create(indexUrlInJar.toURI().toASCIIString().replaceFirst("/index.html$", "/"));
83 return Resource.newResource(webRootUri);
84 }
85
86 public static void main(String[] args) {
87 String listenAddress = System.getenv("LiSTEN_ADDRESS");
88 int port = 8080;
89 String portStr = System.getenv("LISTEN_PORT");
90 if (portStr != null) {
91 try {
92 port = Integer.parseInt(portStr);
93 } catch (NumberFormatException e) {
94 LOG.warn(e);
95 System.exit(-1);
96 }
97 }
98 String baseResourceOverride = System.getenv("BASE_RESOURCE");
99 try {
100 InetSocketAddress bindAddress = getBindAddress(listenAddress, port);
101 Resource baseResource = getBaseResource(baseResourceOverride);
102 ServerLauncher serverLauncher = new ServerLauncher(bindAddress, baseResource);
103 serverLauncher.start();
53 } catch (Exception exception) { 104 } catch (Exception exception) {
54 log.warn(exception.getMessage()); 105 LOG.warn(exception);
55 System.exit(1); 106 System.exit(1);
56 } 107 }
57 } 108 }
diff --git a/language-web/webpack.config.js b/language-web/webpack.config.js
index bd999a85..ec07d4cf 100644
--- a/language-web/webpack.config.js
+++ b/language-web/webpack.config.js
@@ -4,12 +4,13 @@ const HtmlWebpackPlugin = require('html-webpack-plugin');
4const MiniCssExtractPlugin = require("mini-css-extract-plugin"); 4const MiniCssExtractPlugin = require("mini-css-extract-plugin");
5 5
6const devMode = process.env.NODE_ENV !== 'production'; 6const devMode = process.env.NODE_ENV !== 'production';
7const outputPath = path.resolve(__dirname, 'build/webpack', devMode ? 'development' : 'production');
7 8
8module.exports = { 9module.exports = {
9 mode: devMode ? 'development' : 'production', 10 mode: devMode ? 'development' : 'production',
10 entry: './src/main/js', 11 entry: './src/main/js',
11 output: { 12 output: {
12 path: path.resolve(__dirname, 'src/main/webapp'), 13 path: outputPath,
13 publicPath: '/', 14 publicPath: '/',
14 filename: devMode ? '[name].js' : '[contenthash].js', 15 filename: devMode ? '[name].js' : '[contenthash].js',
15 chunkFilename: devMode ? '[id].js' : '[contenthash].js', 16 chunkFilename: devMode ? '[id].js' : '[contenthash].js',
diff --git a/language/build.gradle b/language/build.gradle
index cbdf3c6a..fead1f7c 100644
--- a/language/build.gradle
+++ b/language/build.gradle
@@ -1,3 +1,9 @@
1configurations {
2 mwe2 {
3 extendsFrom compile
4 }
5}
6
1dependencies { 7dependencies {
2 testCompile 'org.junit.jupiter:junit-jupiter-api' 8 testCompile 'org.junit.jupiter:junit-jupiter-api'
3 testRuntime 'org.junit.jupiter:junit-jupiter-engine' 9 testRuntime 'org.junit.jupiter:junit-jupiter-engine'
@@ -8,15 +14,6 @@ dependencies {
8 compile "org.eclipse.xtext:org.eclipse.xtext.xbase:${xtextVersion}" 14 compile "org.eclipse.xtext:org.eclipse.xtext.xbase:${xtextVersion}"
9 compile 'org.eclipse.emf:org.eclipse.emf.ecore' 15 compile 'org.eclipse.emf:org.eclipse.emf.ecore'
10 compile project(':language-model') 16 compile project(':language-model')
11}
12
13configurations {
14 mwe2 {
15 extendsFrom compile
16 }
17}
18
19dependencies {
20 mwe2 'org.eclipse.emf:org.eclipse.emf.mwe2.launch' 17 mwe2 'org.eclipse.emf:org.eclipse.emf.mwe2.launch'
21 mwe2 "org.eclipse.xtext:org.eclipse.xtext.common.types:${xtextVersion}" 18 mwe2 "org.eclipse.xtext:org.eclipse.xtext.common.types:${xtextVersion}"
22 mwe2 "org.eclipse.xtext:org.eclipse.xtext.xtext.generator:${xtextVersion}" 19 mwe2 "org.eclipse.xtext:org.eclipse.xtext.xtext.generator:${xtextVersion}"
@@ -30,6 +27,10 @@ task generateXtextLanguage(type: JavaExec) {
30 inputs.file "src/main/java/org/eclipse/viatra/solver/language/GenerateProblem.mwe2" 27 inputs.file "src/main/java/org/eclipse/viatra/solver/language/GenerateProblem.mwe2"
31 inputs.file "src/main/java/org/eclipse/viatra/solver/language/Problem.xtext" 28 inputs.file "src/main/java/org/eclipse/viatra/solver/language/Problem.xtext"
32 outputs.dir "src/main/xtext-gen" 29 outputs.dir "src/main/xtext-gen"
30 outputs.dir "src/test/xtext-gen"
31 outputs.dir "../language-ide/src/main/xtext-gen"
32 outputs.dir "../language-web/src/main/xtext-gen"
33 outputs.dir "../language-web/build/generated/sources/xtext"
33 args += "src/main/java/org/eclipse/viatra/solver/language/GenerateProblem.mwe2" 34 args += "src/main/java/org/eclipse/viatra/solver/language/GenerateProblem.mwe2"
34 args += "-p" 35 args += "-p"
35 args += "rootPath=/${projectDir}/.." 36 args += "rootPath=/${projectDir}/.."