synchronized (input) { elements= ((ICodeAssist) input).codeSelect(offset, 0); }
elements= ((ICodeAssist) input).codeSelect(offset, 0);
	public IHyperlink[] detectHyperlinks(ITextViewer textViewer, IRegion region, boolean canShowMultipleHyperlinks) {		if (region == null || canShowMultipleHyperlinks || !(fTextEditor instanceof JavaEditor))			return null;		IAction openAction= fTextEditor.getAction("OpenEditor"); //$NON-NLS-1$		if (openAction == null)			return null;		int offset= region.getOffset();		IJavaElement input= EditorUtility.getEditorInputJavaElement(fTextEditor, false);		if (input == null)			return null;		try {			IJavaElement[] elements= null;			synchronized (input) {				elements= ((ICodeAssist) input).codeSelect(offset, 0);			}			IDocument document= fTextEditor.getDocumentProvider().getDocument(fTextEditor.getEditorInput());			if (elements != null && elements.length > 0)				return new IHyperlink[] {new JavaElementHyperlink(selectWord(document, offset), openAction)};		} catch (JavaModelException e) {			return null;		}		return null;	}