aboutsummaryrefslogtreecommitdiffstats
path: root/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples
diff options
context:
space:
mode:
Diffstat (limited to 'Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples')
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/.classpath23
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/META-INF/MANIFEST.MF8
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/build.properties3
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.ecore2
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.genmodel8
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Ecore.vql10
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/FileSystem.vql12
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/plugin.xml4
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/.gitignore9
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Live.java4
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/PatternContent.java69
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/util/.gitignore32
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/FileSystem.java6
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/DirImpl.java1
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FSObjectImpl.java2
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FileSystemImpl.java18
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemFactoryImpl.java5
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemPackageImpl.java36
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/ModelImpl.java3
19 files changed, 112 insertions, 143 deletions
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/.classpath b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/.classpath
index 7f459bda..3b808ec0 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/.classpath
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/.classpath
@@ -1,13 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?> 1<?xml version="1.0" encoding="UTF-8"?>
2<classpath> 2<classpath>
3 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"> 3 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
4 <attributes> 4 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
5 <attribute name="module" value="true"/> 5 <classpathentry kind="src" path="src"/>
6 </attributes> 6 <classpathentry kind="src" path="xtend-gen"/>
7 </classpathentry> 7 <classpathentry kind="src" path="patterns"/>
8 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> 8 <classpathentry kind="src" path="src-gen/"/>
9 <classpathentry kind="src" path="src"/> 9 <classpathentry kind="output" path="bin"/>
10 <classpathentry kind="src" path="patterns"/> 10</classpath>
11 <classpathentry kind="src" path="src-gen"/>
12 <classpathentry kind="output" path="bin"/>
13</classpath>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/META-INF/MANIFEST.MF b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/META-INF/MANIFEST.MF
index d5f7db65..5fb85170 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/META-INF/MANIFEST.MF
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/META-INF/MANIFEST.MF
@@ -9,7 +9,8 @@ Bundle-Localization: plugin
9Export-Package: hu.bme.mit.inf.dslreasoner.domains.alloyexamples, 9Export-Package: hu.bme.mit.inf.dslreasoner.domains.alloyexamples,
10 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem, 10 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem,
11 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.impl, 11 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.impl,
12 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.util 12 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.util,
13 hu.bme.mit.inf.dslreasoner.domains.alloyexamples.util
13Require-Bundle: org.eclipse.viatra.addon.querybasedfeatures.runtime, 14Require-Bundle: org.eclipse.viatra.addon.querybasedfeatures.runtime,
14 org.eclipse.viatra.query.runtime, 15 org.eclipse.viatra.query.runtime,
15 org.eclipse.core.runtime, 16 org.eclipse.core.runtime,
@@ -19,7 +20,6 @@ Require-Bundle: org.eclipse.viatra.addon.querybasedfeatures.runtime,
19 org.eclipse.xtext.xbase.lib, 20 org.eclipse.xtext.xbase.lib,
20 org.eclipse.xtend.lib, 21 org.eclipse.xtend.lib,
21 org.eclipse.xtend.lib.macro 22 org.eclipse.xtend.lib.macro
22Import-Package: org.apache.log4j
23Automatic-Module-Name: hu.bme.mit.inf.dslreasoner.domains.alloyexamples
24Bundle-ActivationPolicy: lazy
25Bundle-RequiredExecutionEnvironment: JavaSE-1.8 23Bundle-RequiredExecutionEnvironment: JavaSE-1.8
24Bundle-ActivationPolicy: lazy
25Import-Package: org.apache.log4j
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/build.properties b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/build.properties
index 418a7a43..a9ab8b56 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/build.properties
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/build.properties
@@ -5,6 +5,5 @@ bin.includes = .,\
5 plugin.properties 5 plugin.properties
6jars.compile.order = . 6jars.compile.order = .
7source.. = src/,\ 7source.. = src/,\
8 src-gen/,\ 8 src-gen/
9 patterns/
10output.. = bin/ 9output.. = bin/
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.ecore b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.ecore
index 32874953..87ba7135 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.ecore
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.ecore
@@ -5,7 +5,7 @@
5 <details key="settingDelegates" value="org.eclipse.viatra.query.querybasedfeature"/> 5 <details key="settingDelegates" value="org.eclipse.viatra.query.querybasedfeature"/>
6 </eAnnotations> 6 </eAnnotations>
7 <eClassifiers xsi:type="ecore:EClass" name="FileSystem"> 7 <eClassifiers xsi:type="ecore:EClass" name="FileSystem">
8 <eStructuralFeatures xsi:type="ecore:EReference" name="root" lowerBound="1" eType="#//FSObject" 8 <eStructuralFeatures xsi:type="ecore:EReference" name="root" lowerBound="1" eType="#//Dir"
9 containment="true"/> 9 containment="true"/>
10 <eStructuralFeatures xsi:type="ecore:EReference" name="live" upperBound="-1" eType="#//FSObject" 10 <eStructuralFeatures xsi:type="ecore:EReference" name="live" upperBound="-1" eType="#//FSObject"
11 changeable="false" volatile="true" transient="true" derived="true"> 11 changeable="false" volatile="true" transient="true" derived="true">
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.genmodel b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.genmodel
index daa44727..355ac109 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.genmodel
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/model/FileSytem.genmodel
@@ -11,13 +11,13 @@
11 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//FileSystem/root"/> 11 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//FileSystem/root"/>
12 <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference FileSytem.ecore#//FileSystem/live"/> 12 <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference FileSytem.ecore#//FileSystem/live"/>
13 </genClasses> 13 </genClasses>
14 <genClasses image="false" ecoreClass="FileSytem.ecore#//FSObject"> 14 <genClasses image="false" ecoreClass="FileSytem.ecore#//FSObject"/>
15 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FileSytem.ecore#//FSObject/parent"/>
16 </genClasses>
17 <genClasses ecoreClass="FileSytem.ecore#//Dir"> 15 <genClasses ecoreClass="FileSytem.ecore#//Dir">
18 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//Dir/contents"/> 16 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//Dir/contents"/>
19 </genClasses> 17 </genClasses>
20 <genClasses ecoreClass="FileSytem.ecore#//File"/> 18 <genClasses ecoreClass="FileSytem.ecore#//File">
19 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FileSytem.ecore#//File/parent"/>
20 </genClasses>
21 <genClasses ecoreClass="FileSytem.ecore#//Model"> 21 <genClasses ecoreClass="FileSytem.ecore#//Model">
22 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//Model/filesystems"/> 22 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//Model/filesystems"/>
23 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//Model/otherFSObjects"/> 23 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FileSytem.ecore#//Model/otherFSObjects"/>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Ecore.vql b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Ecore.vql
index 16c24d05..78525a35 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Ecore.vql
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Ecore.vql
@@ -11,16 +11,6 @@ pattern loopInInheritence(a: EClass) {
11 find directSupertype+(a,a); 11 find directSupertype+(a,a);
12} 12}
13 13
14pattern unsat_subpackage(a: EPackage, b: EPackage) {
15 EPackage.eSubpackages(a, b);
16}
17
18@Constraint(key={p}, severity="error", message="error")
19pattern unsat_loopInInheritance(p: EPackage) {
20 neg find unsat_subpackage(_, p);
21 neg find loopInInheritence(_);
22}
23
24pattern opposite(a:EReference, b: EReference) { 14pattern opposite(a:EReference, b: EReference) {
25 EReference.eOpposite(a,b); 15 EReference.eOpposite(a,b);
26} 16}
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/FileSystem.vql b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/FileSystem.vql
index c785c2fc..719a9d96 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/FileSystem.vql
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/patterns/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/FileSystem.vql
@@ -2,7 +2,7 @@ package hu.bme.mit.inf.dslreasoner.domains.alloyexamples
2 2
3import epackage "FS" 3import epackage "FS"
4 4
5pattern patternContent(o1: Dir, o2: FSObject) { 5pattern patternContent(o1: FSObject, o2: FSObject) {
6 Dir.contents(o1,o2); 6 Dir.contents(o1,o2);
7} 7}
8 8
@@ -22,13 +22,3 @@ pattern contentInNotLive(parent : Dir, child: FSObject) {
22 Dir.contents(parent,child); 22 Dir.contents(parent,child);
23 neg find live(_,child); 23 neg find live(_,child);
24} 24}
25
26pattern dir(d: Dir) {
27 Dir(d);
28}
29
30@Constraint(key={fs}, severity="error", message="error")
31pattern rootIsNotDir(fs: FileSystem) {
32 FileSystem.root(fs, root);
33 neg find dir(root);
34}
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/plugin.xml b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/plugin.xml
index eddd482c..d7fd112a 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/plugin.xml
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/plugin.xml
@@ -11,8 +11,6 @@
11 <group group="org.eclipse.viatra.query.runtime.extensibility.SingletonExtensionFactory:hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Ecore" id="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Ecore"> 11 <group group="org.eclipse.viatra.query.runtime.extensibility.SingletonExtensionFactory:hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Ecore" id="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Ecore">
12 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.directSupertype"/> 12 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.directSupertype"/>
13 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.loopInInheritence"/> 13 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.loopInInheritence"/>
14 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.unsat_subpackage"/>
15 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.unsat_loopInInheritance"/>
16 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.opposite"/> 14 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.opposite"/>
17 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.oppositeDifferentClass"/> 15 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.oppositeDifferentClass"/>
18 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.nonSymmetricOpposite"/> 16 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.nonSymmetricOpposite"/>
@@ -23,8 +21,6 @@
23 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.patternContent"/> 21 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.patternContent"/>
24 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.live"/> 22 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.live"/>
25 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.contentInNotLive"/> 23 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.contentInNotLive"/>
26 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.dir"/>
27 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.alloyexamples.rootIsNotDir"/>
28 </group> 24 </group>
29 </extension> 25 </extension>
30</plugin> 26</plugin>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/.gitignore b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/.gitignore
index 70eab455..1e7d444f 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/.gitignore
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/.gitignore
@@ -50,12 +50,3 @@
50/Opposite.java 50/Opposite.java
51/OppositeDifferentClass.java 51/OppositeDifferentClass.java
52/PatternContent.java 52/PatternContent.java
53/.Dir.java._trace
54/.RootIsNotDir.java._trace
55/Dir.java
56/RootIsNotDir.java
57/.Unsat_loopInInheritance.java._trace
58/.Subpackage.java._trace
59/.Unsat_subpackage.java._trace
60/.Unsat_subpackageOrSelf.java._trace
61/.Unsat_topLevelPackageWithLoop.java._trace
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Live.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Live.java
index 178ec37d..3f2448aa 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Live.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Live.java
@@ -706,7 +706,7 @@ public final class Live extends BaseGeneratedEMFQuerySpecification<Live.Matcher>
706 new TypeConstraint(body, Tuples.flatTupleOf(var_this), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FileSystem"))); 706 new TypeConstraint(body, Tuples.flatTupleOf(var_this), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FileSystem")));
707 PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); 707 PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}");
708 new TypeConstraint(body, Tuples.flatTupleOf(var_this, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("FS", "FileSystem", "root"))); 708 new TypeConstraint(body, Tuples.flatTupleOf(var_this, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("FS", "FileSystem", "root")));
709 new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FSObject"))); 709 new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "Dir")));
710 new Equality(body, var__virtual_0_, var_l); 710 new Equality(body, var__virtual_0_, var_l);
711 bodies.add(body); 711 bodies.add(body);
712 } 712 }
@@ -725,7 +725,7 @@ public final class Live extends BaseGeneratedEMFQuerySpecification<Live.Matcher>
725 new TypeConstraint(body, Tuples.flatTupleOf(var_this), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FileSystem"))); 725 new TypeConstraint(body, Tuples.flatTupleOf(var_this), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FileSystem")));
726 PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); 726 PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}");
727 new TypeConstraint(body, Tuples.flatTupleOf(var_this, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("FS", "FileSystem", "root"))); 727 new TypeConstraint(body, Tuples.flatTupleOf(var_this, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("FS", "FileSystem", "root")));
728 new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FSObject"))); 728 new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "Dir")));
729 new Equality(body, var__virtual_0_, var_root); 729 new Equality(body, var__virtual_0_, var_root);
730 // find patternContent+(root,l) 730 // find patternContent+(root,l)
731 new BinaryTransitiveClosure(body, Tuples.flatTupleOf(var_root, var_l), PatternContent.instance().getInternalQueryRepresentation()); 731 new BinaryTransitiveClosure(body, Tuples.flatTupleOf(var_root, var_l), PatternContent.instance().getInternalQueryRepresentation());
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/PatternContent.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/PatternContent.java
index bd02fa5b..7c48b978 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/PatternContent.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/PatternContent.java
@@ -3,7 +3,6 @@
3 */ 3 */
4package hu.bme.mit.inf.dslreasoner.domains.alloyexamples; 4package hu.bme.mit.inf.dslreasoner.domains.alloyexamples;
5 5
6import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.Dir;
7import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject; 6import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject;
8import java.util.Arrays; 7import java.util.Arrays;
9import java.util.Collection; 8import java.util.Collection;
@@ -44,7 +43,7 @@ import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil;
44 * 43 *
45 * <p>Original source: 44 * <p>Original source:
46 * <code><pre> 45 * <code><pre>
47 * pattern patternContent(o1: Dir, o2: FSObject) { 46 * pattern patternContent(o1: FSObject, o2: FSObject) {
48 * Dir.contents(o1,o2); 47 * Dir.contents(o1,o2);
49 * } 48 * }
50 * </pre></code> 49 * </pre></code>
@@ -68,13 +67,13 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
68 * 67 *
69 */ 68 */
70 public static abstract class Match extends BasePatternMatch { 69 public static abstract class Match extends BasePatternMatch {
71 private Dir fO1; 70 private FSObject fO1;
72 71
73 private FSObject fO2; 72 private FSObject fO2;
74 73
75 private static List<String> parameterNames = makeImmutableList("o1", "o2"); 74 private static List<String> parameterNames = makeImmutableList("o1", "o2");
76 75
77 private Match(final Dir pO1, final FSObject pO2) { 76 private Match(final FSObject pO1, final FSObject pO2) {
78 this.fO1 = pO1; 77 this.fO1 = pO1;
79 this.fO2 = pO2; 78 this.fO2 = pO2;
80 } 79 }
@@ -97,7 +96,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
97 } 96 }
98 } 97 }
99 98
100 public Dir getO1() { 99 public FSObject getO1() {
101 return this.fO1; 100 return this.fO1;
102 } 101 }
103 102
@@ -109,7 +108,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
109 public boolean set(final String parameterName, final Object newValue) { 108 public boolean set(final String parameterName, final Object newValue) {
110 if (!isMutable()) throw new java.lang.UnsupportedOperationException(); 109 if (!isMutable()) throw new java.lang.UnsupportedOperationException();
111 if ("o1".equals(parameterName) ) { 110 if ("o1".equals(parameterName) ) {
112 this.fO1 = (Dir) newValue; 111 this.fO1 = (FSObject) newValue;
113 return true; 112 return true;
114 } 113 }
115 if ("o2".equals(parameterName) ) { 114 if ("o2".equals(parameterName) ) {
@@ -119,7 +118,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
119 return false; 118 return false;
120 } 119 }
121 120
122 public void setO1(final Dir pO1) { 121 public void setO1(final FSObject pO1) {
123 if (!isMutable()) throw new java.lang.UnsupportedOperationException(); 122 if (!isMutable()) throw new java.lang.UnsupportedOperationException();
124 this.fO1 = pO1; 123 this.fO1 = pO1;
125 } 124 }
@@ -207,7 +206,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
207 * @return the new, mutable (partial) match object. 206 * @return the new, mutable (partial) match object.
208 * 207 *
209 */ 208 */
210 public static PatternContent.Match newMutableMatch(final Dir pO1, final FSObject pO2) { 209 public static PatternContent.Match newMutableMatch(final FSObject pO1, final FSObject pO2) {
211 return new Mutable(pO1, pO2); 210 return new Mutable(pO1, pO2);
212 } 211 }
213 212
@@ -220,12 +219,12 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
220 * @return the (partial) match object. 219 * @return the (partial) match object.
221 * 220 *
222 */ 221 */
223 public static PatternContent.Match newMatch(final Dir pO1, final FSObject pO2) { 222 public static PatternContent.Match newMatch(final FSObject pO1, final FSObject pO2) {
224 return new Immutable(pO1, pO2); 223 return new Immutable(pO1, pO2);
225 } 224 }
226 225
227 private static final class Mutable extends PatternContent.Match { 226 private static final class Mutable extends PatternContent.Match {
228 Mutable(final Dir pO1, final FSObject pO2) { 227 Mutable(final FSObject pO1, final FSObject pO2) {
229 super(pO1, pO2); 228 super(pO1, pO2);
230 } 229 }
231 230
@@ -236,7 +235,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
236 } 235 }
237 236
238 private static final class Immutable extends PatternContent.Match { 237 private static final class Immutable extends PatternContent.Match {
239 Immutable(final Dir pO1, final FSObject pO2) { 238 Immutable(final FSObject pO1, final FSObject pO2) {
240 super(pO1, pO2); 239 super(pO1, pO2);
241 } 240 }
242 241
@@ -258,7 +257,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
258 * 257 *
259 * <p>Original source: 258 * <p>Original source:
260 * <code><pre> 259 * <code><pre>
261 * pattern patternContent(o1: Dir, o2: FSObject) { 260 * pattern patternContent(o1: FSObject, o2: FSObject) {
262 * Dir.contents(o1,o2); 261 * Dir.contents(o1,o2);
263 * } 262 * }
264 * </pre></code> 263 * </pre></code>
@@ -320,7 +319,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
320 * @return matches represented as a Match object. 319 * @return matches represented as a Match object.
321 * 320 *
322 */ 321 */
323 public Collection<PatternContent.Match> getAllMatches(final Dir pO1, final FSObject pO2) { 322 public Collection<PatternContent.Match> getAllMatches(final FSObject pO1, final FSObject pO2) {
324 return rawStreamAllMatches(new Object[]{pO1, pO2}).collect(Collectors.toSet()); 323 return rawStreamAllMatches(new Object[]{pO1, pO2}).collect(Collectors.toSet());
325 } 324 }
326 325
@@ -335,7 +334,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
335 * @return a stream of matches represented as a Match object. 334 * @return a stream of matches represented as a Match object.
336 * 335 *
337 */ 336 */
338 public Stream<PatternContent.Match> streamAllMatches(final Dir pO1, final FSObject pO2) { 337 public Stream<PatternContent.Match> streamAllMatches(final FSObject pO1, final FSObject pO2) {
339 return rawStreamAllMatches(new Object[]{pO1, pO2}); 338 return rawStreamAllMatches(new Object[]{pO1, pO2});
340 } 339 }
341 340
@@ -347,7 +346,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
347 * @return a match represented as a Match object, or null if no match is found. 346 * @return a match represented as a Match object, or null if no match is found.
348 * 347 *
349 */ 348 */
350 public Optional<PatternContent.Match> getOneArbitraryMatch(final Dir pO1, final FSObject pO2) { 349 public Optional<PatternContent.Match> getOneArbitraryMatch(final FSObject pO1, final FSObject pO2) {
351 return rawGetOneArbitraryMatch(new Object[]{pO1, pO2}); 350 return rawGetOneArbitraryMatch(new Object[]{pO1, pO2});
352 } 351 }
353 352
@@ -359,7 +358,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
359 * @return true if the input is a valid (partial) match of the pattern. 358 * @return true if the input is a valid (partial) match of the pattern.
360 * 359 *
361 */ 360 */
362 public boolean hasMatch(final Dir pO1, final FSObject pO2) { 361 public boolean hasMatch(final FSObject pO1, final FSObject pO2) {
363 return rawHasMatch(new Object[]{pO1, pO2}); 362 return rawHasMatch(new Object[]{pO1, pO2});
364 } 363 }
365 364
@@ -370,7 +369,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
370 * @return the number of pattern matches found. 369 * @return the number of pattern matches found.
371 * 370 *
372 */ 371 */
373 public int countMatches(final Dir pO1, final FSObject pO2) { 372 public int countMatches(final FSObject pO1, final FSObject pO2) {
374 return rawCountMatches(new Object[]{pO1, pO2}); 373 return rawCountMatches(new Object[]{pO1, pO2});
375 } 374 }
376 375
@@ -383,7 +382,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
383 * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked 382 * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked
384 * 383 *
385 */ 384 */
386 public boolean forOneArbitraryMatch(final Dir pO1, final FSObject pO2, final Consumer<? super PatternContent.Match> processor) { 385 public boolean forOneArbitraryMatch(final FSObject pO1, final FSObject pO2, final Consumer<? super PatternContent.Match> processor) {
387 return rawForOneArbitraryMatch(new Object[]{pO1, pO2}, processor); 386 return rawForOneArbitraryMatch(new Object[]{pO1, pO2}, processor);
388 } 387 }
389 388
@@ -396,7 +395,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
396 * @return the (partial) match object. 395 * @return the (partial) match object.
397 * 396 *
398 */ 397 */
399 public PatternContent.Match newMatch(final Dir pO1, final FSObject pO2) { 398 public PatternContent.Match newMatch(final FSObject pO1, final FSObject pO2) {
400 return PatternContent.Match.newMatch(pO1, pO2); 399 return PatternContent.Match.newMatch(pO1, pO2);
401 } 400 }
402 401
@@ -405,8 +404,8 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
405 * @return the Set of all values or empty set if there are no matches 404 * @return the Set of all values or empty set if there are no matches
406 * 405 *
407 */ 406 */
408 protected Stream<Dir> rawStreamAllValuesOfo1(final Object[] parameters) { 407 protected Stream<FSObject> rawStreamAllValuesOfo1(final Object[] parameters) {
409 return rawStreamAllValues(POSITION_O1, parameters).map(Dir.class::cast); 408 return rawStreamAllValues(POSITION_O1, parameters).map(FSObject.class::cast);
410 } 409 }
411 410
412 /** 411 /**
@@ -414,7 +413,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
414 * @return the Set of all values or empty set if there are no matches 413 * @return the Set of all values or empty set if there are no matches
415 * 414 *
416 */ 415 */
417 public Set<Dir> getAllValuesOfo1() { 416 public Set<FSObject> getAllValuesOfo1() {
418 return rawStreamAllValuesOfo1(emptyArray()).collect(Collectors.toSet()); 417 return rawStreamAllValuesOfo1(emptyArray()).collect(Collectors.toSet());
419 } 418 }
420 419
@@ -423,7 +422,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
423 * @return the Set of all values or empty set if there are no matches 422 * @return the Set of all values or empty set if there are no matches
424 * 423 *
425 */ 424 */
426 public Stream<Dir> streamAllValuesOfo1() { 425 public Stream<FSObject> streamAllValuesOfo1() {
427 return rawStreamAllValuesOfo1(emptyArray()); 426 return rawStreamAllValuesOfo1(emptyArray());
428 } 427 }
429 428
@@ -437,7 +436,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
437 * @return the Stream of all values or empty set if there are no matches 436 * @return the Stream of all values or empty set if there are no matches
438 * 437 *
439 */ 438 */
440 public Stream<Dir> streamAllValuesOfo1(final PatternContent.Match partialMatch) { 439 public Stream<FSObject> streamAllValuesOfo1(final PatternContent.Match partialMatch) {
441 return rawStreamAllValuesOfo1(partialMatch.toArray()); 440 return rawStreamAllValuesOfo1(partialMatch.toArray());
442 } 441 }
443 442
@@ -451,7 +450,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
451 * @return the Stream of all values or empty set if there are no matches 450 * @return the Stream of all values or empty set if there are no matches
452 * 451 *
453 */ 452 */
454 public Stream<Dir> streamAllValuesOfo1(final FSObject pO2) { 453 public Stream<FSObject> streamAllValuesOfo1(final FSObject pO2) {
455 return rawStreamAllValuesOfo1(new Object[]{null, pO2}); 454 return rawStreamAllValuesOfo1(new Object[]{null, pO2});
456 } 455 }
457 456
@@ -460,7 +459,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
460 * @return the Set of all values or empty set if there are no matches 459 * @return the Set of all values or empty set if there are no matches
461 * 460 *
462 */ 461 */
463 public Set<Dir> getAllValuesOfo1(final PatternContent.Match partialMatch) { 462 public Set<FSObject> getAllValuesOfo1(final PatternContent.Match partialMatch) {
464 return rawStreamAllValuesOfo1(partialMatch.toArray()).collect(Collectors.toSet()); 463 return rawStreamAllValuesOfo1(partialMatch.toArray()).collect(Collectors.toSet());
465 } 464 }
466 465
@@ -469,7 +468,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
469 * @return the Set of all values or empty set if there are no matches 468 * @return the Set of all values or empty set if there are no matches
470 * 469 *
471 */ 470 */
472 public Set<Dir> getAllValuesOfo1(final FSObject pO2) { 471 public Set<FSObject> getAllValuesOfo1(final FSObject pO2) {
473 return rawStreamAllValuesOfo1(new Object[]{null, pO2}).collect(Collectors.toSet()); 472 return rawStreamAllValuesOfo1(new Object[]{null, pO2}).collect(Collectors.toSet());
474 } 473 }
475 474
@@ -524,7 +523,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
524 * @return the Stream of all values or empty set if there are no matches 523 * @return the Stream of all values or empty set if there are no matches
525 * 524 *
526 */ 525 */
527 public Stream<FSObject> streamAllValuesOfo2(final Dir pO1) { 526 public Stream<FSObject> streamAllValuesOfo2(final FSObject pO1) {
528 return rawStreamAllValuesOfo2(new Object[]{pO1, null}); 527 return rawStreamAllValuesOfo2(new Object[]{pO1, null});
529 } 528 }
530 529
@@ -542,14 +541,14 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
542 * @return the Set of all values or empty set if there are no matches 541 * @return the Set of all values or empty set if there are no matches
543 * 542 *
544 */ 543 */
545 public Set<FSObject> getAllValuesOfo2(final Dir pO1) { 544 public Set<FSObject> getAllValuesOfo2(final FSObject pO1) {
546 return rawStreamAllValuesOfo2(new Object[]{pO1, null}).collect(Collectors.toSet()); 545 return rawStreamAllValuesOfo2(new Object[]{pO1, null}).collect(Collectors.toSet());
547 } 546 }
548 547
549 @Override 548 @Override
550 protected PatternContent.Match tupleToMatch(final Tuple t) { 549 protected PatternContent.Match tupleToMatch(final Tuple t) {
551 try { 550 try {
552 return PatternContent.Match.newMatch((Dir) t.get(POSITION_O1), (FSObject) t.get(POSITION_O2)); 551 return PatternContent.Match.newMatch((FSObject) t.get(POSITION_O1), (FSObject) t.get(POSITION_O2));
553 } catch(ClassCastException e) { 552 } catch(ClassCastException e) {
554 LOGGER.error("Element(s) in tuple not properly typed!",e); 553 LOGGER.error("Element(s) in tuple not properly typed!",e);
555 return null; 554 return null;
@@ -559,7 +558,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
559 @Override 558 @Override
560 protected PatternContent.Match arrayToMatch(final Object[] match) { 559 protected PatternContent.Match arrayToMatch(final Object[] match) {
561 try { 560 try {
562 return PatternContent.Match.newMatch((Dir) match[POSITION_O1], (FSObject) match[POSITION_O2]); 561 return PatternContent.Match.newMatch((FSObject) match[POSITION_O1], (FSObject) match[POSITION_O2]);
563 } catch(ClassCastException e) { 562 } catch(ClassCastException e) {
564 LOGGER.error("Element(s) in array not properly typed!",e); 563 LOGGER.error("Element(s) in array not properly typed!",e);
565 return null; 564 return null;
@@ -569,7 +568,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
569 @Override 568 @Override
570 protected PatternContent.Match arrayToMatchMutable(final Object[] match) { 569 protected PatternContent.Match arrayToMatchMutable(final Object[] match) {
571 try { 570 try {
572 return PatternContent.Match.newMutableMatch((Dir) match[POSITION_O1], (FSObject) match[POSITION_O2]); 571 return PatternContent.Match.newMutableMatch((FSObject) match[POSITION_O1], (FSObject) match[POSITION_O2]);
573 } catch(ClassCastException e) { 572 } catch(ClassCastException e) {
574 LOGGER.error("Element(s) in array not properly typed!",e); 573 LOGGER.error("Element(s) in array not properly typed!",e);
575 return null; 574 return null;
@@ -620,7 +619,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
620 619
621 @Override 620 @Override
622 public PatternContent.Match newMatch(final Object... parameters) { 621 public PatternContent.Match newMatch(final Object... parameters) {
623 return PatternContent.Match.newMatch((hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.Dir) parameters[0], (hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject) parameters[1]); 622 return PatternContent.Match.newMatch((hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject) parameters[0], (hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject) parameters[1]);
624 } 623 }
625 624
626 /** 625 /**
@@ -652,7 +651,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
652 private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { 651 private static class GeneratedPQuery extends BaseGeneratedEMFPQuery {
653 private static final PatternContent.GeneratedPQuery INSTANCE = new GeneratedPQuery(); 652 private static final PatternContent.GeneratedPQuery INSTANCE = new GeneratedPQuery();
654 653
655 private final PParameter parameter_o1 = new PParameter("o1", "hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.Dir", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("FS", "Dir")), PParameterDirection.INOUT); 654 private final PParameter parameter_o1 = new PParameter("o1", "hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("FS", "FSObject")), PParameterDirection.INOUT);
656 655
657 private final PParameter parameter_o2 = new PParameter("o2", "hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("FS", "FSObject")), PParameterDirection.INOUT); 656 private final PParameter parameter_o2 = new PParameter("o2", "hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("FS", "FSObject")), PParameterDirection.INOUT);
658 657
@@ -685,7 +684,7 @@ public final class PatternContent extends BaseGeneratedEMFQuerySpecification<Pat
685 PBody body = new PBody(this); 684 PBody body = new PBody(this);
686 PVariable var_o1 = body.getOrCreateVariableByName("o1"); 685 PVariable var_o1 = body.getOrCreateVariableByName("o1");
687 PVariable var_o2 = body.getOrCreateVariableByName("o2"); 686 PVariable var_o2 = body.getOrCreateVariableByName("o2");
688 new TypeConstraint(body, Tuples.flatTupleOf(var_o1), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "Dir"))); 687 new TypeConstraint(body, Tuples.flatTupleOf(var_o1), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FSObject")));
689 new TypeConstraint(body, Tuples.flatTupleOf(var_o2), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FSObject"))); 688 new TypeConstraint(body, Tuples.flatTupleOf(var_o2), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("FS", "FSObject")));
690 body.setSymbolicParameters(Arrays.<ExportedParameter>asList( 689 body.setSymbolicParameters(Arrays.<ExportedParameter>asList(
691 new ExportedParameter(body, var_o1, parameter_o1), 690 new ExportedParameter(body, var_o1, parameter_o1),
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/util/.gitignore b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/util/.gitignore
new file mode 100644
index 00000000..4b17cd82
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src-gen/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/util/.gitignore
@@ -0,0 +1,32 @@
1/.ContentInNotLiveProcessor.java._trace
2/.ContentInNotLiveQuerySpecification.java._trace
3/.DirectSupertypeProcessor.java._trace
4/.DirectSupertypeQuerySpecification.java._trace
5/.LiveProcessor.java._trace
6/.LiveQuerySpecification.java._trace
7/.LoopInInheritenceProcessor.java._trace
8/.LoopInInheritenceQuerySpecification.java._trace
9/.NonSymmetricOppositeProcessor.java._trace
10/.NonSymmetricOppositeQuerySpecification.java._trace
11/.OppositeDifferentClassProcessor.java._trace
12/.OppositeDifferentClassQuerySpecification.java._trace
13/.OppositeProcessor.java._trace
14/.OppositeQuerySpecification.java._trace
15/.PatternContentProcessor.java._trace
16/.PatternContentQuerySpecification.java._trace
17/ContentInNotLiveProcessor.java
18/ContentInNotLiveQuerySpecification.java
19/DirectSupertypeProcessor.java
20/DirectSupertypeQuerySpecification.java
21/LiveProcessor.java
22/LiveQuerySpecification.java
23/LoopInInheritenceProcessor.java
24/LoopInInheritenceQuerySpecification.java
25/NonSymmetricOppositeProcessor.java
26/NonSymmetricOppositeQuerySpecification.java
27/OppositeDifferentClassProcessor.java
28/OppositeDifferentClassQuerySpecification.java
29/OppositeProcessor.java
30/OppositeQuerySpecification.java
31/PatternContentProcessor.java
32/PatternContentQuerySpecification.java
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/FileSystem.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/FileSystem.java
index f0066955..1896e31e 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/FileSystem.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/FileSystem.java
@@ -33,12 +33,12 @@ public interface FileSystem extends EObject {
33 * </p> 33 * </p>
34 * <!-- end-user-doc --> 34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Root</em>' containment reference. 35 * @return the value of the '<em>Root</em>' containment reference.
36 * @see #setRoot(FSObject) 36 * @see #setRoot(Dir)
37 * @see hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FilesystemPackage#getFileSystem_Root() 37 * @see hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FilesystemPackage#getFileSystem_Root()
38 * @model containment="true" required="true" 38 * @model containment="true" required="true"
39 * @generated 39 * @generated
40 */ 40 */
41 FSObject getRoot(); 41 Dir getRoot();
42 42
43 /** 43 /**
44 * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FileSystem#getRoot <em>Root</em>}' containment reference. 44 * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FileSystem#getRoot <em>Root</em>}' containment reference.
@@ -48,7 +48,7 @@ public interface FileSystem extends EObject {
48 * @see #getRoot() 48 * @see #getRoot()
49 * @generated 49 * @generated
50 */ 50 */
51 void setRoot(FSObject value); 51 void setRoot(Dir value);
52 52
53 /** 53 /**
54 * Returns the value of the '<em><b>Live</b></em>' reference list. 54 * Returns the value of the '<em><b>Live</b></em>' reference list.
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/DirImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/DirImpl.java
index c2d417d2..62df04af 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/DirImpl.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/DirImpl.java
@@ -66,7 +66,6 @@ public class DirImpl extends FSObjectImpl implements Dir {
66 * <!-- end-user-doc --> 66 * <!-- end-user-doc -->
67 * @generated 67 * @generated
68 */ 68 */
69 @Override
70 public EList<FSObject> getContents() { 69 public EList<FSObject> getContents() {
71 if (contents == null) { 70 if (contents == null) {
72 contents = new EObjectContainmentWithInverseEList<FSObject>(FSObject.class, this, FilesystemPackage.DIR__CONTENTS, FilesystemPackage.FS_OBJECT__PARENT); 71 contents = new EObjectContainmentWithInverseEList<FSObject>(FSObject.class, this, FilesystemPackage.DIR__CONTENTS, FilesystemPackage.FS_OBJECT__PARENT);
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FSObjectImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FSObjectImpl.java
index d87935d6..c8e73b4e 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FSObjectImpl.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FSObjectImpl.java
@@ -53,7 +53,6 @@ public abstract class FSObjectImpl extends MinimalEObjectImpl.Container implemen
53 * <!-- end-user-doc --> 53 * <!-- end-user-doc -->
54 * @generated 54 * @generated
55 */ 55 */
56 @Override
57 public Dir getParent() { 56 public Dir getParent() {
58 if (eContainerFeatureID() != FilesystemPackage.FS_OBJECT__PARENT) return null; 57 if (eContainerFeatureID() != FilesystemPackage.FS_OBJECT__PARENT) return null;
59 return (Dir)eInternalContainer(); 58 return (Dir)eInternalContainer();
@@ -74,7 +73,6 @@ public abstract class FSObjectImpl extends MinimalEObjectImpl.Container implemen
74 * <!-- end-user-doc --> 73 * <!-- end-user-doc -->
75 * @generated 74 * @generated
76 */ 75 */
77 @Override
78 public void setParent(Dir newParent) { 76 public void setParent(Dir newParent) {
79 if (newParent != eInternalContainer() || (eContainerFeatureID() != FilesystemPackage.FS_OBJECT__PARENT && newParent != null)) { 77 if (newParent != eInternalContainer() || (eContainerFeatureID() != FilesystemPackage.FS_OBJECT__PARENT && newParent != null)) {
80 if (EcoreUtil.isAncestor(this, newParent)) 78 if (EcoreUtil.isAncestor(this, newParent))
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FileSystemImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FileSystemImpl.java
index e6859cab..adf30f3a 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FileSystemImpl.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FileSystemImpl.java
@@ -2,6 +2,7 @@
2 */ 2 */
3package hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.impl; 3package hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.impl;
4 4
5import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.Dir;
5import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject; 6import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FSObject;
6import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FileSystem; 7import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FileSystem;
7import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FilesystemPackage; 8import hu.bme.mit.inf.dslreasoner.domains.alloyexamples.Filesystem.FilesystemPackage;
@@ -41,7 +42,7 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
41 * @generated 42 * @generated
42 * @ordered 43 * @ordered
43 */ 44 */
44 protected FSObject root; 45 protected Dir root;
45 46
46 /** 47 /**
47 * The cached setting delegate for the '{@link #getLive() <em>Live</em>}' reference list. 48 * The cached setting delegate for the '{@link #getLive() <em>Live</em>}' reference list.
@@ -77,8 +78,7 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
77 * <!-- end-user-doc --> 78 * <!-- end-user-doc -->
78 * @generated 79 * @generated
79 */ 80 */
80 @Override 81 public Dir getRoot() {
81 public FSObject getRoot() {
82 return root; 82 return root;
83 } 83 }
84 84
@@ -87,8 +87,8 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
87 * <!-- end-user-doc --> 87 * <!-- end-user-doc -->
88 * @generated 88 * @generated
89 */ 89 */
90 public NotificationChain basicSetRoot(FSObject newRoot, NotificationChain msgs) { 90 public NotificationChain basicSetRoot(Dir newRoot, NotificationChain msgs) {
91 FSObject oldRoot = root; 91 Dir oldRoot = root;
92 root = newRoot; 92 root = newRoot;
93 if (eNotificationRequired()) { 93 if (eNotificationRequired()) {
94 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FilesystemPackage.FILE_SYSTEM__ROOT, oldRoot, newRoot); 94 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FilesystemPackage.FILE_SYSTEM__ROOT, oldRoot, newRoot);
@@ -102,8 +102,7 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
102 * <!-- end-user-doc --> 102 * <!-- end-user-doc -->
103 * @generated 103 * @generated
104 */ 104 */
105 @Override 105 public void setRoot(Dir newRoot) {
106 public void setRoot(FSObject newRoot) {
107 if (newRoot != root) { 106 if (newRoot != root) {
108 NotificationChain msgs = null; 107 NotificationChain msgs = null;
109 if (root != null) 108 if (root != null)
@@ -123,7 +122,6 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
123 * @generated 122 * @generated
124 */ 123 */
125 @SuppressWarnings("unchecked") 124 @SuppressWarnings("unchecked")
126 @Override
127 public EList<FSObject> getLive() { 125 public EList<FSObject> getLive() {
128 return (EList<FSObject>)LIVE__ESETTING_DELEGATE.dynamicGet(this, null, 0, true, false); 126 return (EList<FSObject>)LIVE__ESETTING_DELEGATE.dynamicGet(this, null, 0, true, false);
129 } 127 }
@@ -167,7 +165,7 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
167 public void eSet(int featureID, Object newValue) { 165 public void eSet(int featureID, Object newValue) {
168 switch (featureID) { 166 switch (featureID) {
169 case FilesystemPackage.FILE_SYSTEM__ROOT: 167 case FilesystemPackage.FILE_SYSTEM__ROOT:
170 setRoot((FSObject)newValue); 168 setRoot((Dir)newValue);
171 return; 169 return;
172 } 170 }
173 super.eSet(featureID, newValue); 171 super.eSet(featureID, newValue);
@@ -182,7 +180,7 @@ public class FileSystemImpl extends MinimalEObjectImpl.Container implements File
182 public void eUnset(int featureID) { 180 public void eUnset(int featureID) {
183 switch (featureID) { 181 switch (featureID) {
184 case FilesystemPackage.FILE_SYSTEM__ROOT: 182 case FilesystemPackage.FILE_SYSTEM__ROOT:
185 setRoot((FSObject)null); 183 setRoot((Dir)null);
186 return; 184 return;
187 } 185 }
188 super.eUnset(featureID); 186 super.eUnset(featureID);
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemFactoryImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemFactoryImpl.java
index b4b09e15..e40b0bd1 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemFactoryImpl.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemFactoryImpl.java
@@ -70,7 +70,6 @@ public class FilesystemFactoryImpl extends EFactoryImpl implements FilesystemFac
70 * <!-- end-user-doc --> 70 * <!-- end-user-doc -->
71 * @generated 71 * @generated
72 */ 72 */
73 @Override
74 public FileSystem createFileSystem() { 73 public FileSystem createFileSystem() {
75 FileSystemImpl fileSystem = new FileSystemImpl(); 74 FileSystemImpl fileSystem = new FileSystemImpl();
76 return fileSystem; 75 return fileSystem;
@@ -81,7 +80,6 @@ public class FilesystemFactoryImpl extends EFactoryImpl implements FilesystemFac
81 * <!-- end-user-doc --> 80 * <!-- end-user-doc -->
82 * @generated 81 * @generated
83 */ 82 */
84 @Override
85 public Dir createDir() { 83 public Dir createDir() {
86 DirImpl dir = new DirImpl(); 84 DirImpl dir = new DirImpl();
87 return dir; 85 return dir;
@@ -92,7 +90,6 @@ public class FilesystemFactoryImpl extends EFactoryImpl implements FilesystemFac
92 * <!-- end-user-doc --> 90 * <!-- end-user-doc -->
93 * @generated 91 * @generated
94 */ 92 */
95 @Override
96 public File createFile() { 93 public File createFile() {
97 FileImpl file = new FileImpl(); 94 FileImpl file = new FileImpl();
98 return file; 95 return file;
@@ -103,7 +100,6 @@ public class FilesystemFactoryImpl extends EFactoryImpl implements FilesystemFac
103 * <!-- end-user-doc --> 100 * <!-- end-user-doc -->
104 * @generated 101 * @generated
105 */ 102 */
106 @Override
107 public Model createModel() { 103 public Model createModel() {
108 ModelImpl model = new ModelImpl(); 104 ModelImpl model = new ModelImpl();
109 return model; 105 return model;
@@ -114,7 +110,6 @@ public class FilesystemFactoryImpl extends EFactoryImpl implements FilesystemFac
114 * <!-- end-user-doc --> 110 * <!-- end-user-doc -->
115 * @generated 111 * @generated
116 */ 112 */
117 @Override
118 public FilesystemPackage getFilesystemPackage() { 113 public FilesystemPackage getFilesystemPackage() {
119 return (FilesystemPackage)getEPackage(); 114 return (FilesystemPackage)getEPackage();
120 } 115 }
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemPackageImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemPackageImpl.java
index 4c0ca4c5..87390fee 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemPackageImpl.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/FilesystemPackageImpl.java
@@ -86,7 +86,7 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
86 86
87 /** 87 /**
88 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. 88 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
89 * 89 *
90 * <p>This method is used to initialize {@link FilesystemPackage#eINSTANCE} when that field is accessed. 90 * <p>This method is used to initialize {@link FilesystemPackage#eINSTANCE} when that field is accessed.
91 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. 91 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
92 * <!-- begin-user-doc --> 92 * <!-- begin-user-doc -->
@@ -100,8 +100,7 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
100 if (isInited) return (FilesystemPackage)EPackage.Registry.INSTANCE.getEPackage(FilesystemPackage.eNS_URI); 100 if (isInited) return (FilesystemPackage)EPackage.Registry.INSTANCE.getEPackage(FilesystemPackage.eNS_URI);
101 101
102 // Obtain or create and register package 102 // Obtain or create and register package
103 Object registeredFilesystemPackage = EPackage.Registry.INSTANCE.get(eNS_URI); 103 FilesystemPackageImpl theFilesystemPackage = (FilesystemPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof FilesystemPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new FilesystemPackageImpl());
104 FilesystemPackageImpl theFilesystemPackage = registeredFilesystemPackage instanceof FilesystemPackageImpl ? (FilesystemPackageImpl)registeredFilesystemPackage : new FilesystemPackageImpl();
105 104
106 isInited = true; 105 isInited = true;
107 106
@@ -114,6 +113,7 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
114 // Mark meta-data to indicate it can't be changed 113 // Mark meta-data to indicate it can't be changed
115 theFilesystemPackage.freeze(); 114 theFilesystemPackage.freeze();
116 115
116
117 // Update the registry and return the package 117 // Update the registry and return the package
118 EPackage.Registry.INSTANCE.put(FilesystemPackage.eNS_URI, theFilesystemPackage); 118 EPackage.Registry.INSTANCE.put(FilesystemPackage.eNS_URI, theFilesystemPackage);
119 return theFilesystemPackage; 119 return theFilesystemPackage;
@@ -124,7 +124,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
124 * <!-- end-user-doc --> 124 * <!-- end-user-doc -->
125 * @generated 125 * @generated
126 */ 126 */
127 @Override
128 public EClass getFileSystem() { 127 public EClass getFileSystem() {
129 return fileSystemEClass; 128 return fileSystemEClass;
130 } 129 }
@@ -134,7 +133,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
134 * <!-- end-user-doc --> 133 * <!-- end-user-doc -->
135 * @generated 134 * @generated
136 */ 135 */
137 @Override
138 public EReference getFileSystem_Root() { 136 public EReference getFileSystem_Root() {
139 return (EReference)fileSystemEClass.getEStructuralFeatures().get(0); 137 return (EReference)fileSystemEClass.getEStructuralFeatures().get(0);
140 } 138 }
@@ -144,7 +142,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
144 * <!-- end-user-doc --> 142 * <!-- end-user-doc -->
145 * @generated 143 * @generated
146 */ 144 */
147 @Override
148 public EReference getFileSystem_Live() { 145 public EReference getFileSystem_Live() {
149 return (EReference)fileSystemEClass.getEStructuralFeatures().get(1); 146 return (EReference)fileSystemEClass.getEStructuralFeatures().get(1);
150 } 147 }
@@ -154,7 +151,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
154 * <!-- end-user-doc --> 151 * <!-- end-user-doc -->
155 * @generated 152 * @generated
156 */ 153 */
157 @Override
158 public EClass getFSObject() { 154 public EClass getFSObject() {
159 return fsObjectEClass; 155 return fsObjectEClass;
160 } 156 }
@@ -164,7 +160,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
164 * <!-- end-user-doc --> 160 * <!-- end-user-doc -->
165 * @generated 161 * @generated
166 */ 162 */
167 @Override
168 public EReference getFSObject_Parent() { 163 public EReference getFSObject_Parent() {
169 return (EReference)fsObjectEClass.getEStructuralFeatures().get(0); 164 return (EReference)fsObjectEClass.getEStructuralFeatures().get(0);
170 } 165 }
@@ -174,7 +169,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
174 * <!-- end-user-doc --> 169 * <!-- end-user-doc -->
175 * @generated 170 * @generated
176 */ 171 */
177 @Override
178 public EClass getDir() { 172 public EClass getDir() {
179 return dirEClass; 173 return dirEClass;
180 } 174 }
@@ -184,7 +178,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
184 * <!-- end-user-doc --> 178 * <!-- end-user-doc -->
185 * @generated 179 * @generated
186 */ 180 */
187 @Override
188 public EReference getDir_Contents() { 181 public EReference getDir_Contents() {
189 return (EReference)dirEClass.getEStructuralFeatures().get(0); 182 return (EReference)dirEClass.getEStructuralFeatures().get(0);
190 } 183 }
@@ -194,7 +187,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
194 * <!-- end-user-doc --> 187 * <!-- end-user-doc -->
195 * @generated 188 * @generated
196 */ 189 */
197 @Override
198 public EClass getFile() { 190 public EClass getFile() {
199 return fileEClass; 191 return fileEClass;
200 } 192 }
@@ -204,7 +196,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
204 * <!-- end-user-doc --> 196 * <!-- end-user-doc -->
205 * @generated 197 * @generated
206 */ 198 */
207 @Override
208 public EClass getModel() { 199 public EClass getModel() {
209 return modelEClass; 200 return modelEClass;
210 } 201 }
@@ -214,7 +205,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
214 * <!-- end-user-doc --> 205 * <!-- end-user-doc -->
215 * @generated 206 * @generated
216 */ 207 */
217 @Override
218 public EReference getModel_Filesystems() { 208 public EReference getModel_Filesystems() {
219 return (EReference)modelEClass.getEStructuralFeatures().get(0); 209 return (EReference)modelEClass.getEStructuralFeatures().get(0);
220 } 210 }
@@ -224,7 +214,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
224 * <!-- end-user-doc --> 214 * <!-- end-user-doc -->
225 * @generated 215 * @generated
226 */ 216 */
227 @Override
228 public EReference getModel_OtherFSObjects() { 217 public EReference getModel_OtherFSObjects() {
229 return (EReference)modelEClass.getEStructuralFeatures().get(1); 218 return (EReference)modelEClass.getEStructuralFeatures().get(1);
230 } 219 }
@@ -234,7 +223,6 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
234 * <!-- end-user-doc --> 223 * <!-- end-user-doc -->
235 * @generated 224 * @generated
236 */ 225 */
237 @Override
238 public FilesystemFactory getFilesystemFactory() { 226 public FilesystemFactory getFilesystemFactory() {
239 return (FilesystemFactory)getEFactoryInstance(); 227 return (FilesystemFactory)getEFactoryInstance();
240 } 228 }
@@ -308,7 +296,7 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
308 296
309 // Initialize classes, features, and operations; add parameters 297 // Initialize classes, features, and operations; add parameters
310 initEClass(fileSystemEClass, FileSystem.class, "FileSystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); 298 initEClass(fileSystemEClass, FileSystem.class, "FileSystem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
311 initEReference(getFileSystem_Root(), this.getFSObject(), null, "root", null, 1, 1, FileSystem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); 299 initEReference(getFileSystem_Root(), this.getDir(), null, "root", null, 1, 1, FileSystem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
312 initEReference(getFileSystem_Live(), this.getFSObject(), null, "live", null, 0, -1, FileSystem.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); 300 initEReference(getFileSystem_Live(), this.getFSObject(), null, "live", null, 0, -1, FileSystem.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
313 301
314 initEClass(fsObjectEClass, FSObject.class, "FSObject", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); 302 initEClass(fsObjectEClass, FSObject.class, "FSObject", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -340,12 +328,12 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
340 * @generated 328 * @generated
341 */ 329 */
342 protected void createEcoreAnnotations() { 330 protected void createEcoreAnnotations() {
343 String source = "http://www.eclipse.org/emf/2002/Ecore"; 331 String source = "http://www.eclipse.org/emf/2002/Ecore";
344 addAnnotation 332 addAnnotation
345 (this, 333 (this,
346 source, 334 source,
347 new String[] { 335 new String[] {
348 "settingDelegates", "org.eclipse.viatra.query.querybasedfeature" 336 "settingDelegates", "org.eclipse.viatra.query.querybasedfeature"
349 }); 337 });
350 } 338 }
351 339
@@ -356,12 +344,12 @@ public class FilesystemPackageImpl extends EPackageImpl implements FilesystemPac
356 * @generated 344 * @generated
357 */ 345 */
358 protected void createOrgAnnotations() { 346 protected void createOrgAnnotations() {
359 String source = "org.eclipse.viatra.query.querybasedfeature"; 347 String source = "org.eclipse.viatra.query.querybasedfeature";
360 addAnnotation 348 addAnnotation
361 (getFileSystem_Live(), 349 (getFileSystem_Live(),
362 source, 350 source,
363 new String[] { 351 new String[] {
364 "patternFQN", "hu.bme.mit.inf.dslreasoner.domains.alloyexamples.live" 352 "patternFQN", "hu.bme.mit.inf.dslreasoner.domains.alloyexamples.live"
365 }); 353 });
366 } 354 }
367 355
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/ModelImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/ModelImpl.java
index 093b9972..4c236e8e 100644
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/ModelImpl.java
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.alloyexamples/src/hu/bme/mit/inf/dslreasoner/domains/alloyexamples/Filesystem/impl/ModelImpl.java
@@ -82,7 +82,6 @@ public class ModelImpl extends MinimalEObjectImpl.Container implements Model {
82 * <!-- end-user-doc --> 82 * <!-- end-user-doc -->
83 * @generated 83 * @generated
84 */ 84 */
85 @Override
86 public FileSystem getFilesystems() { 85 public FileSystem getFilesystems() {
87 return filesystems; 86 return filesystems;
88 } 87 }
@@ -107,7 +106,6 @@ public class ModelImpl extends MinimalEObjectImpl.Container implements Model {
107 * <!-- end-user-doc --> 106 * <!-- end-user-doc -->
108 * @generated 107 * @generated
109 */ 108 */
110 @Override
111 public void setFilesystems(FileSystem newFilesystems) { 109 public void setFilesystems(FileSystem newFilesystems) {
112 if (newFilesystems != filesystems) { 110 if (newFilesystems != filesystems) {
113 NotificationChain msgs = null; 111 NotificationChain msgs = null;
@@ -127,7 +125,6 @@ public class ModelImpl extends MinimalEObjectImpl.Container implements Model {
127 * <!-- end-user-doc --> 125 * <!-- end-user-doc -->
128 * @generated 126 * @generated
129 */ 127 */
130 @Override
131 public EList<FSObject> getOtherFSObjects() { 128 public EList<FSObject> getOtherFSObjects() {
132 if (otherFSObjects == null) { 129 if (otherFSObjects == null) {
133 otherFSObjects = new EObjectContainmentEList<FSObject>(FSObject.class, this, FilesystemPackage.MODEL__OTHER_FS_OBJECTS); 130 otherFSObjects = new EObjectContainmentEList<FSObject>(FSObject.class, this, FilesystemPackage.MODEL__OTHER_FS_OBJECTS);