summaryrefslogtreecommitdiff
path: root/java/src/org/singinst/uf/model/NeedsCalcCache.java
blob: 6371e476cb6574573204c4df4cd5fb4349dbf0d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package org.singinst.uf.model;

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

public class NeedsCalcCache {
	
	public Map<ScalarValueHolder, Boolean> cache = new HashMap<ScalarValueHolder, Boolean>();

	public boolean needsCalc(ScalarValueHolder scalarValueHolder) {
		Boolean needsCalc = cache.get(scalarValueHolder);
		if (needsCalc == null) {
			needsCalc = scalarValueHolder.needsCalc(this);
			cache.put(scalarValueHolder, needsCalc);
		}
		return needsCalc;
	}

}