if (fSourceViewer == null || fPresentationReconciler == null)
JavaSourceViewer sourceViewer= fSourceViewer; JavaPresentationReconciler presentationReconciler= fPresentationReconciler; if (sourceViewer == null || presentationReconciler == null)
	public TextPresentation createPresentation(List addedPositions, List removedPositions) {		if (fSourceViewer == null || fPresentationReconciler == null)			return null;				if (isCanceled())			return null;				IDocument document= fSourceViewer.getDocument();		if (document == null)			return null;				int minStart= Integer.MAX_VALUE;		int maxEnd= Integer.MIN_VALUE;		for (int i= 0, n= removedPositions.size(); i < n; i++) {			Position position= (Position) removedPositions.get(i);			int offset= position.getOffset();			minStart= Math.min(minStart, offset);			maxEnd= Math.max(maxEnd, offset + position.getLength());		}		for (int i= 0, n= addedPositions.size(); i < n; i++) {			Position position= (Position) addedPositions.get(i);			int offset= position.getOffset();			minStart= Math.min(minStart, offset);			maxEnd= Math.max(maxEnd, offset + position.getLength());		}				if (minStart < maxEnd)			try {				return fPresentationReconciler.createRepairDescription(new Region(minStart, maxEnd - minStart), document);			} catch (RuntimeException e) {				// Assume concurrent modification from UI thread			}				return null;	}