blob: 44708f44b6add55a0814160da3752c473cd9a275 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
package hu.bme.mit.inf.dslreasoner.smt.reasoner
import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement
import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type
import hu.bme.mit.inf.dslreasoner.smtLanguage.SMTSymbolicDeclaration
import java.util.List
import java.util.Map
import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.*
class Logic2SMT_TypeMapperInterpretation {
val Map<Type, ? extends List<DefinedElement>> type2Elements
val Map<DefinedElement, ValueType> logic2smt
val Map<SMTSymbolicDeclaration, DefinedElement> smt2logic
public new(
Map<Type, ? extends List<DefinedElement>> type2Elements,
Map<DefinedElement, ValueType> logic2smt,
Map<SMTSymbolicDeclaration, DefinedElement> smt2logic) {
this.type2Elements = type2Elements
this.logic2smt = logic2smt
this.smt2logic = smt2logic
}
public def getElements(Type type) {
return type2Elements.get(type)
}
public def ValueType logicElement2Smt(DefinedElement element) {
return element.lookup(this.logic2smt)
}
public def smtElement2Logic(SMTSymbolicDeclaration element) {
return element.lookup(this.smt2logic)
}
}
|