Bug 127861 [DataBinding] Mark API provisional
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/updatables/LazyCalculatedValue.java
* @return the object's value
	 */
	protected abstract Object calculate();
	protected final void makeDirty() {
		if (!dirty) {
			dirty = true;
			
			
			IReadable[] updatables = (IReadable[]) dependencies.toArray(new IReadable[dependencies.size()]);
			dependencies.clear();
			
			for (int i = 0; i < updatables.length; i++) {
				IReadable readable = updatables[i];
					
				readable.removeChangeListener(privateInterface);
			}
			
			
			fireChangeEvent(new ChangeEvent(this, ChangeEvent.DIRTY, null, null));
		}
	}
	public void dispose() {
		
		IUpdatable[] updatables = (IUpdatable[]) dependencies.toArray(new IUpdatable[dependencies.size()]);
		dependencies.clear();
		
		for (int i = 0; i < updatables.length; i++) {
			IUpdatable updatable = updatables[i];
				
			updatable.removeChangeListener(privateInterface);