package hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement import java.util.Map class PartialInterpretation2ImmutableTypeLattice extends PartialInterpretation2NeighbourhoodRepresentation< Map,//ModelRep AbstractNodeDescriptor//NodeRep >{ public new() { super(false, true) } public new(boolean deeprepresnetation, boolean mergeSimilarNeighbourhood) { super(deeprepresnetation,mergeSimilarNeighbourhood) } override protected createLocalRepresentation(Map node2Representation, Map representation2Amount) { val res = new NeighbourhoodWithTraces, AbstractNodeDescriptor>( representation2Amount, node2Representation, null ) return res } override protected createFurtherRepresentation(Map, Integer> nodeDescriptors, Map> node2Representation, NeighbourhoodWithTraces, AbstractNodeDescriptor> previous, boolean deepRepresentation) { if(deepRepresentation) { return new NeighbourhoodWithTraces, AbstractNodeDescriptor>(nodeDescriptors,node2Representation,previous) } else { return new NeighbourhoodWithTraces, AbstractNodeDescriptor>(nodeDescriptors,node2Representation,null) } } }