diff options
Diffstat (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra')
-rw-r--r-- | Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend index 9845560c..0ae28b66 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/patterns/RelationDefinitionIndexer.xtend | |||
@@ -34,7 +34,7 @@ class RelationDefinitionIndexer { | |||
34 | this.base = base | 34 | this.base = base |
35 | } | 35 | } |
36 | 36 | ||
37 | public def generateRelationDefinitions( | 37 | def generateRelationDefinitions( |
38 | LogicProblem problem, | 38 | LogicProblem problem, |
39 | Iterable<RelationDefinition> relations, | 39 | Iterable<RelationDefinition> relations, |
40 | Map<String,PQuery> fqn2PQuery) { | 40 | Map<String,PQuery> fqn2PQuery) { |
@@ -110,7 +110,7 @@ class RelationDefinitionIndexer { | |||
110 | else return Modality::MUST | 110 | else return Modality::MUST |
111 | } | 111 | } |
112 | 112 | ||
113 | def public referPattern(PQuery p, String[] variables, Modality modality, boolean positive, boolean transitive) ''' | 113 | def referPattern(PQuery p, String[] variables, Modality modality, boolean positive, boolean transitive) ''' |
114 | «IF !positive»neg «ENDIF»find «IF transitive»twoParam_«ENDIF»«modality.name.toLowerCase»InRelation_pattern_«p.fullyQualifiedName.replace('.','_')»«IF transitive»+«ENDIF»(«IF !transitive»problem,interpretation,«ENDIF»«variables.join(',')»); | 114 | «IF !positive»neg «ENDIF»find «IF transitive»twoParam_«ENDIF»«modality.name.toLowerCase»InRelation_pattern_«p.fullyQualifiedName.replace('.','_')»«IF transitive»+«ENDIF»(«IF !transitive»problem,interpretation,«ENDIF»«variables.join(',')»); |
115 | ''' | 115 | ''' |
116 | 116 | ||
@@ -228,10 +228,11 @@ class RelationDefinitionIndexer { | |||
228 | var String additionalDefinition; | 228 | var String additionalDefinition; |
229 | if(target instanceof EEnumLiteral) { | 229 | if(target instanceof EEnumLiteral) { |
230 | targetString = '''const_«target.name»_«target.EEnum.name»''' | 230 | targetString = '''const_«target.name»_«target.EEnum.name»''' |
231 | additionalDefinition = '''DefinedElement.name(«targetString»,"«target.name» «target.EEnum.name»"); //LogicProblem.elements(problem,«targetString»);''' | 231 | additionalDefinition = '''DefinedElement.name(«targetString»,"«target.name» literal «target.EEnum.name»"); //LogicProblem.elements(problem,«targetString»);''' |
232 | } else if(target instanceof Enumerator) { | 232 | } else if(target instanceof Enumerator) { |
233 | // XXX We should get the corresponding EEnum name instead of the java class name. | ||
233 | targetString = '''const_«target.name»_«target.class.simpleName»''' | 234 | targetString = '''const_«target.name»_«target.class.simpleName»''' |
234 | additionalDefinition = '''DefinedElement.name(«targetString»,"«target.name» «target.class.simpleName»"); //LogicProblem.elements(problem,«targetString»);''' | 235 | additionalDefinition = '''DefinedElement.name(«targetString»,"«target.name» literal «target.class.simpleName»"); //LogicProblem.elements(problem,«targetString»);''' |
235 | } else if(target instanceof Integer) { | 236 | } else if(target instanceof Integer) { |
236 | targetString = '''const_«target»_Integer''' | 237 | targetString = '''const_«target»_Integer''' |
237 | additionalDefinition = '''IntegerElement.value(«targetString»,«target»);''' | 238 | additionalDefinition = '''IntegerElement.value(«targetString»,«target»);''' |