diff options
author | OszkarSemerath <oszka@152.66.252.189> | 2017-07-05 15:00:01 +0200 |
---|---|---|
committer | OszkarSemerath <oszka@152.66.252.189> | 2017-07-05 15:00:01 +0200 |
commit | ea885207e2738d62861120fe8a589dd40d30a126 (patch) | |
tree | 609eb54b695b0c0f2a7db70aea016ee9db03ec7a /Framework | |
parent | Bug with outgoing transitions in yakindu example. (diff) | |
download | VIATRA-Generator-ea885207e2738d62861120fe8a589dd40d30a126.tar.gz VIATRA-Generator-ea885207e2738d62861120fe8a589dd40d30a126.tar.zst VIATRA-Generator-ea885207e2738d62861120fe8a589dd40d30a126.zip |
Added a try-catch to detect if a query cannot be translated (because,
for example, a referred class is not translated to the logic problem).
Diffstat (limited to 'Framework')
-rw-r--r-- | Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend index d78fe45f..a4b6cc6d 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend | |||
@@ -27,7 +27,6 @@ import org.eclipse.viatra.query.runtime.api.IQuerySpecification | |||
27 | import org.eclipse.viatra.query.runtime.emf.EMFQueryMetaContext | 27 | import org.eclipse.viatra.query.runtime.emf.EMFQueryMetaContext |
28 | import org.eclipse.viatra.query.runtime.emf.types.BaseEMFTypeKey | 28 | import org.eclipse.viatra.query.runtime.emf.types.BaseEMFTypeKey |
29 | import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey | 29 | import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey |
30 | import org.eclipse.viatra.query.runtime.emf.types.EClassUnscopedTransitiveInstancesKey | ||
31 | import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey | 30 | import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey |
32 | import org.eclipse.viatra.query.runtime.matchers.psystem.PBody | 31 | import org.eclipse.viatra.query.runtime.matchers.psystem.PBody |
33 | import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable | 32 | import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable |
@@ -73,7 +72,11 @@ class Viatra2Logic { | |||
73 | { | 72 | { |
74 | val viatra2LogicTrace = new Viatra2LogicTrace | 73 | val viatra2LogicTrace = new Viatra2LogicTrace |
75 | for(query: queries.patterns) { | 74 | for(query: queries.patterns) { |
76 | this.transformQueryHeader(query,ecore2LogicTrace,viatra2LogicTrace,config) | 75 | try { |
76 | this.transformQueryHeader(query,ecore2LogicTrace,viatra2LogicTrace,config) | ||
77 | } catch(IllegalArgumentException e) { | ||
78 | throw new IllegalArgumentException('''Unable to translate query "«query.fullyQualifiedName»".''',e) | ||
79 | } | ||
77 | } | 80 | } |
78 | for(query: queries.patterns) { | 81 | for(query: queries.patterns) { |
79 | this.transformQuerySpecification(query,ecore2LogicTrace,viatra2LogicTrace,config) | 82 | this.transformQuerySpecification(query,ecore2LogicTrace,viatra2LogicTrace,config) |