- Moved helper functions from abstract.office for storing info in ObjectFormatter's temp data to methods on ObjectFormatter.
public void putTemp(Object this, ObjectFormatter formatter, str k, Object v) {
Object temp = formatter.getTemp(this);
str->Object tempMap = temp.:str->Object;
if (!tempMap) {
tempMap = new str->Object();
formatter.putTemp(this, tempMap);
}
tempMap.put(k, v);
}
public Object getTemp(Object this, ObjectFormatter formatter, str k) {
if (?str->Object tempMap = formatter.getTemp(this)) {
return tempMap.get(k);
}
return null;
}
final public void putTempProp(Object owner, str k, Object data) {
if (!tempData) tempData = new Object->Object;
?str->Object map = tempData.get(owner);
if (!map) {
map = new str->Object;
tempData.put(owner, map);
}
map.put(k, data);
}
final public Object getTempProp(Object owner, str k) {
if (?str->Object map = tempData.?get(owner)) return map.get(k);
return null;
}
final public void removeTempProp(Object owner, str k) {
if (?str->Object map = tempData.?get(owner)) map.remove(k);
}