String replacementString= computeGuessingCompletion(positionOffsets, positionLengths);
replacementString= computeGuessingCompletion(positionOffsets, positionLengths);  } else { parameterCount= 0; positionOffsets= new int[0]; positionLengths= new int[0];  replacementString= new String(fName); }
	public void apply(IDocument document, char trigger, int offset) {		try {			final int parameterCount= fParameterNames.length;			int[] positionOffsets= new int[parameterCount];			int[] positionLengths= new int[parameterCount];			String replacementString= computeGuessingCompletion(positionOffsets, positionLengths);			setReplacementString(replacementString);					super.apply(document, trigger, offset);			int replacementOffset= getReplacementOffset();			if (LinkedPositionManager.hasActiveManager(document)) {				fSelectedRegion= (positionOffsets.length == 0)					? new Region(replacementOffset + replacementString.length(), 0)					: new Region(replacementOffset + positionOffsets[0], positionLengths[0]);						} else {				LinkedPositionManager manager= new LinkedPositionManager(document);				for (int i= 0; i != positionOffsets.length; i++)					manager.addPosition(replacementOffset + positionOffsets[i], positionLengths[i]);								LinkedPositionUI editor= new LinkedPositionUI(fViewer, manager);				editor.setFinalCaretOffset(replacementOffset + replacementString.length());				editor.enter();					fSelectedRegion= editor.getSelectedRegion();				}		} catch (BadLocationException e) {			JavaPlugin.log(e);				openErrorDialog(e);		} catch (JavaModelException e) {			JavaPlugin.log(e);				openErrorDialog(e);					}	}