diff options
author | ArenBabikian <aren.babikian@mail.mcgill.ca> | 2019-02-17 15:12:05 -0500 |
---|---|---|
committer | ArenBabikian <aren.babikian@mail.mcgill.ca> | 2019-02-17 15:12:05 -0500 |
commit | 2e5968a5162b04d33eb1d3a60dd394b68583a4b6 (patch) | |
tree | d3797fcf89614b1f7c69917dc6849585dd555fad /Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend | |
parent | Commit before merge (diff) | |
parent | Created new module to load referred patterns. hacked metamodel linking. (diff) | |
download | VIATRA-Generator-2e5968a5162b04d33eb1d3a60dd394b68583a4b6.tar.gz VIATRA-Generator-2e5968a5162b04d33eb1d3a60dd394b68583a4b6.tar.zst VIATRA-Generator-2e5968a5162b04d33eb1d3a60dd394b68583a4b6.zip |
Merge remote-tracking branch 'origin/master' into Vampire-New
Merge Oszkar's Java-related commit
Diffstat (limited to 'Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend')
-rw-r--r-- | Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend index 8f8348b1..cfc91143 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/QueryLoader.xtend | |||
@@ -22,6 +22,10 @@ import org.eclipse.xtext.EcoreUtil2 | |||
22 | 22 | ||
23 | import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.* | 23 | import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.* |
24 | import org.eclipse.viatra.query.patternlanguage.emf.vql.PatternCall | 24 | import org.eclipse.viatra.query.patternlanguage.emf.vql.PatternCall |
25 | import org.eclipse.viatra.query.runtime.api.IPatternMatch | ||
26 | import org.eclipse.viatra.query.runtime.api.ViatraQueryMatcher | ||
27 | import java.util.LinkedHashMap | ||
28 | import java.util.LinkedList | ||
25 | 29 | ||
26 | class QueryLoader { | 30 | class QueryLoader { |
27 | //val parser = new VQLParser | 31 | //val parser = new VQLParser |
@@ -34,6 +38,9 @@ class QueryLoader { | |||
34 | patterns += getPatterns(entry) | 38 | patterns += getPatterns(entry) |
35 | } | 39 | } |
36 | 40 | ||
41 | //val errors = patterns.map[eResource].toSet.map[errors] | ||
42 | //errors.forEach[println(it)] | ||
43 | |||
37 | val allConcernedPatterns = patterns.allReferredPatterns | 44 | val allConcernedPatterns = patterns.allReferredPatterns |
38 | val pattern2Specification = allConcernedPatterns.translatePatterns() | 45 | val pattern2Specification = allConcernedPatterns.translatePatterns() |
39 | 46 | ||
@@ -108,7 +115,15 @@ class QueryLoader { | |||
108 | } | 115 | } |
109 | 116 | ||
110 | def private translatePatterns(Set<Pattern> xtextPattern) { | 117 | def private translatePatterns(Set<Pattern> xtextPattern) { |
111 | xtextPattern.toInvertedMap[builder.getOrCreateSpecification(it) as IQuerySpecification<?>] | 118 | val res = new LinkedHashMap<Pattern,IQuerySpecification<?>> |
119 | val patterns = new LinkedList<IQuerySpecification<?>> | ||
120 | for(pattern : xtextPattern) { | ||
121 | val querySpecification = builder.getOrCreateSpecification(pattern,patterns,true) | ||
122 | res.put(pattern,querySpecification) | ||
123 | patterns += querySpecification | ||
124 | } | ||
125 | |||
126 | return res | ||
112 | } | 127 | } |
113 | 128 | ||
114 | def private calculateDerivedFeatures(Set<EPackage> packages, Iterable<IQuerySpecification<?>> patterns) { | 129 | def private calculateDerivedFeatures(Set<EPackage> packages, Iterable<IQuerySpecification<?>> patterns) { |