From 942dcb2f66ac2317e17bea84b13fabce805e0b8e Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Wed, 2 Aug 2017 20:16:20 +0200 Subject: Added methods to decide which attribure or enum type is mapped ot the logic problem. --- .../hu/bme/mit/inf/dslreasoner/ecore2logic/EEnumMapper.xtend | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EEnumMapper.xtend') diff --git a/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EEnumMapper.xtend b/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EEnumMapper.xtend index 82aee1e2..5935c6d0 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EEnumMapper.xtend +++ b/Framework/hu.bme.mit.inf.dslreasoner.ecore2logic/src/hu/bme/mit/inf/dslreasoner/ecore2logic/EEnumMapper.xtend @@ -17,11 +17,12 @@ interface EEnumMapper { def void transformEEnums(Ecore2Logic_Trace trace, LogicProblem problem, Iterable enums,Ecore2LogicConfiguration config) def Type TypeofEEnum(Ecore2Logic_Trace trace, EEnum type) def TermDescription Literal(Ecore2Logic_Trace trace, Enumerator literal) + def Iterable allEnumsInScope(Ecore2Logic_Trace trace) + def Iterable allLiteralsInScope(Ecore2Logic_Trace trace) } class EEnumMapper_PredefinedClasses_Trace implements Trace{ public var Map enums - public var Map literals } @@ -57,4 +58,13 @@ class EEnumMapper_PredefinedClasses implements EEnumMapper { override Literal(Ecore2Logic_Trace trace, Enumerator literal) { literal.lookup(trace.enumMapperTrace.asTrace.literals) } + + override allEnumsInScope(Ecore2Logic_Trace trace) { + trace.enumMapperTrace.asTrace.enums.keySet + } + + override allLiteralsInScope(Ecore2Logic_Trace trace) { + trace.enumMapperTrace.asTrace.literals.keySet + } + } \ No newline at end of file -- cgit v1.2.3-70-g09d2