SimpleCache.java

package edu.udel.cis.vsl.tass.dynamic.impl.simplify;

import java.util.HashMap;
import java.util.Map;

import edu.udel.cis.vsl.tass.dynamic.IF.simplify.DynamicSimplifierIF;
import edu.udel.cis.vsl.tass.dynamic.IF.simplify.MorphicSimplifierCacheIF;
import edu.udel.cis.vsl.tass.morph.Morphic;

/**
 * Caches results of heap canonicalization on state elements for one given heap
 * transform.
 */
public class SimpleCache implements MorphicSimplifierCacheIF {

	private Map<Morphic, Morphic> cacheMap = new HashMap<Morphic, Morphic>();

	@Override
	public void cacheResult(DynamicSimplifierIF dynamicSimplifier,
			Morphic object, Morphic result) {
		cacheMap.put(object, result);

	}

	@Override
	public Morphic getCachedResult(DynamicSimplifierIF dynamicSimplifier,
			Morphic object) {
		return cacheMap.get(object);
	}

}