private void upgradeToFilter(PointsToSetVariable p, FilteredPointerKey.TypeFilter typeFilter) { if (p.getPointerKey() instanceof LocalPointerKey) { LocalPointerKey lpk = (LocalPointerKey) p.getPointerKey(); LocalPointerKeyWithFilter f = new LocalPointerKeyWithFilter(lpk.getNode(), lpk.getValueNumber(), typeFilter); p.setPointerKey(f); pointerKeys.replace(lpk, f); } else if (p.getPointerKey() instanceof ReturnValueKey) { ReturnValueKey r = (ReturnValueKey) p.getPointerKey(); ReturnValueKeyWithFilter f = new ReturnValueKeyWithFilter(r.getNode(), typeFilter); p.setPointerKey(f); pointerKeys.replace(r, f); } else { Assertions.UNREACHABLE(p.getPointerKey().getClass().toString()); } }
private void upgradeToFilter(PointsToSetVariable p, FilteredPointerKey.TypeFilter typeFilter) { if (p.getPointerKey() instanceof LocalPointerKey) { LocalPointerKey lpk = (LocalPointerKey) p.getPointerKey(); LocalPointerKeyWithFilter f = new LocalPointerKeyWithFilter(lpk.getNode(), lpk.getValueNumber(), typeFilter); p.setPointerKey(f); pointerKeys.replace(lpk, f); } else if (p.getPointerKey() instanceof ReturnValueKey) { ReturnValueKey r = (ReturnValueKey) p.getPointerKey(); ReturnValueKeyWithFilter f = new ReturnValueKeyWithFilter(r.getNode(), typeFilter); p.setPointerKey(f); pointerKeys.replace(r, f); } else { Assertions.UNREACHABLE(p.getPointerKey().getClass().toString()); } }
result.setPointerKey(key); pk = key;
result.setPointerKey(key); pk = key;