Bug 31351 "Extrude" is not a good name for the quick assist
build I20030206 We should not use "extrude" to describe this quick assist. "extrude" means forcing (often through some device) to produce something. We should find a brief phrase to describe the operation and use it instead. I assume we are avoiding extract since it is used in the various refactorings. This assist causes the program to behave differently - it should be clear from the description that the transformation has this characteristic.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/QuickAssistProcessor.java
private boolean isNotYetThrown(ITypeBinding binding, List thrownExcpetions) {
		for (int i= 0; i < thrownExcpetions.size(); i++) {
			Name name= (Name) thrownExcpetions.get(i);
			ITypeBinding elem= (ITypeBinding) name.resolveBinding();
			if (elem != null) {
				ITypeBinding curr= binding;
				if (curr != null && curr != elem) {
					curr= curr.getSuperclass();
				}
				if (curr != null) {
					return false;
				}
			}
		}
		return true;
	
	}
	
	
	private void getRenameLocalProposals(ICorrectionContext context, List resultingCollections) throws CoreException {
		ASTNode node= context.getCoveringNode();
		if (!(node instanceof SimpleName)) {
			return;
		}
		SimpleName name= (SimpleName) node;
		IBinding binding= name.resolveBinding();
		if (binding == null || binding.getKind() == IBinding.PACKAGE) {
			return;
		}
		LinkedNamesAssistProposal proposal= new LinkedNamesAssistProposal(name);