public AddImportCorrectionProposal(String name, ICompilationUnit cu, int relevance, String qualifierName, String typeName, SimpleName node) { super(name, CodeActionKind.QuickFix, cu, ASTRewrite.create(node.getAST()), relevance); fTypeName= typeName; fQualifierName= qualifierName; }
public AddImportCorrectionProposal(String name, ICompilationUnit cu, int relevance, Image image, String qualifierName, String typeName, SimpleName node) { super(name, cu, ASTRewrite.create(node.getAST()), relevance, image); fTypeName= typeName; fQualifierName= qualifierName; }
public AddImportCorrectionProposal(String name, ICompilationUnit cu, int relevance, Image image, String qualifierName, String typeName, SimpleName node) { super(name, cu, ASTRewrite.create(node.getAST()), relevance, image); fTypeName= typeName; fQualifierName= qualifierName; }
public AddImportCorrectionProposal(String name, ICompilationUnit cu, int relevance, Image image, String qualifierName, String typeName, SimpleName node) { super(name, cu, ASTRewrite.create(node.getAST()), relevance, image); fTypeName= typeName; fQualifierName= qualifierName; fAdditionalProposal= getAdditionalChangeCorrectionProposal(); }
private ICompletionProposal getLocalRenameProposal(IInvocationContext context) { ASTNode node= context.getCoveringNode(); if (node instanceof SimpleName) { SimpleName name= (SimpleName) node; if (name.getAST().apiLevel() >= AST.JLS10 && name.isVar()) { return null; } return new LinkedNamesAssistProposal(context, name); } return null; }
@Override public boolean visit(SimpleName node) { boolean isVarType= node.getAST().apiLevel() >= AST.JLS10 && node.isVar(); if (! node.isDeclaration() && isMovedMember(node.resolveBinding()) && ! isVarType && ! isProcessed(node)) rewrite(node, fTarget); return false; }
protected final void changeMethodName() { if (! isMethodNameSameAsInitial()) { SimpleName nameNode= getMethodNameNode(); if (nameNode != null) { SimpleName newNameNode= nameNode.getAST().newSimpleName(fMethodName); getASTRewrite().replace(nameNode, newNameNode, fDescription); registerImportRemoveNode(nameNode); getTightSourceRangeComputer().addTightSourceNode(nameNode); } } }
protected final void changeMethodName() { if (! isMethodNameSameAsInitial()) { SimpleName nameNode= getMethodNameNode(); SimpleName newNameNode= nameNode.getAST().newSimpleName(fMethodName); getASTRewrite().replace(nameNode, newNameNode, fDescription); registerImportRemoveNode(nameNode); getTightSourceRangeComputer().addTightSourceNode(nameNode); } }
protected final void changeMethodName() { if (! isMethodNameSameAsInitial()) { SimpleName nameNode= getMethodNameNode(); if (nameNode != null) { SimpleName newNameNode= nameNode.getAST().newSimpleName(fMethodName); getASTRewrite().replace(nameNode, newNameNode, fDescription); registerImportRemoveNode(nameNode); getTightSourceRangeComputer().addTightSourceNode(nameNode); } } }
private void modifyAccessToFieldsFromEnclosingInstance(CompilationUnitRewrite targetRewrite, SimpleName[] simpleNames, AbstractTypeDeclaration declaration) { IBinding binding= null; SimpleName simpleName= null; IVariableBinding variable= null; for (int index= 0; index < simpleNames.length; index++) { simpleName= simpleNames[index]; binding= simpleName.resolveBinding(); if (binding != null && binding instanceof IVariableBinding && !(simpleName.getParent() instanceof FieldAccess)) { variable= (IVariableBinding) binding; final FieldAccess access= simpleName.getAST().newFieldAccess(); access.setExpression(createAccessExpressionToEnclosingInstanceFieldText(simpleName, variable, declaration)); access.setName(simpleName.getAST().newSimpleName(simpleName.getIdentifier())); targetRewrite.getASTRewrite().replace(simpleName, access, null); targetRewrite.getImportRemover().registerRemovedNode(simpleName); } } }
private void modifyAccessToFieldsFromEnclosingInstance(CompilationUnitRewrite targetRewrite, SimpleName[] simpleNames, AbstractTypeDeclaration declaration) { IBinding binding= null; SimpleName simpleName= null; IVariableBinding variable= null; for (int index= 0; index < simpleNames.length; index++) { simpleName= simpleNames[index]; binding= simpleName.resolveBinding(); if (binding != null && binding instanceof IVariableBinding && !(simpleName.getParent() instanceof FieldAccess)) { variable= (IVariableBinding) binding; final FieldAccess access= simpleName.getAST().newFieldAccess(); access.setExpression(createAccessExpressionToEnclosingInstanceFieldText(simpleName, variable, declaration)); access.setName(simpleName.getAST().newSimpleName(simpleName.getIdentifier())); targetRewrite.getASTRewrite().replace(simpleName, access, null); targetRewrite.getImportRemover().registerRemovedNode(simpleName); } } }
private void modifyAccessToFieldsFromEnclosingInstance(CompilationUnitRewrite targetRewrite, Set handledFields, SimpleName[] simpleNames, AbstractTypeDeclaration declaration, RefactoringStatus status) { IBinding binding= null; SimpleName simpleName= null; IVariableBinding variable= null; for (int index= 0; index < simpleNames.length; index++) { simpleName= simpleNames[index]; binding= simpleName.resolveBinding(); if (binding != null && binding instanceof IVariableBinding && !(simpleName.getParent() instanceof FieldAccess)) { variable= (IVariableBinding) binding; final FieldAccess access= simpleName.getAST().newFieldAccess(); access.setExpression(createAccessExpressionToEnclosingInstanceFieldText(simpleName, variable, declaration)); access.setName(simpleName.getAST().newSimpleName(simpleName.getIdentifier())); targetRewrite.getASTRewrite().replace(simpleName, access, null); targetRewrite.getImportRemover().registerRemovedNode(simpleName); } } }
@Override public boolean visit(SimpleName node) { if (node.isDeclaration() || isProcessed(node)) return super.visit(node); IBinding binding= node.resolveBinding(); if (isMovedMember(binding)) return super.visit(node); boolean isVarType= node.getAST().apiLevel() >= AST.JLS10 && node.isVar(); if (isSourceAccess(binding) && ! isVarType) rewrite(node, fSource); return super.visit(node); }
private static CUCorrectionProposal getProposal(ICompilationUnit cu, SimpleName sn, IVariableBinding variableBinding, int relevance) { Expression accessNode = sn; Expression qualifier = null; boolean useSuper = false; ASTNode parent = sn.getParent(); switch (parent.getNodeType()) { case ASTNode.QUALIFIED_NAME: accessNode = (Expression) parent; qualifier = ((QualifiedName) parent).getQualifier(); break; case ASTNode.SUPER_FIELD_ACCESS: accessNode = (Expression) parent; qualifier = ((SuperFieldAccess) parent).getQualifier(); useSuper = true; break; } ASTRewrite rewrite = ASTRewrite.create(sn.getAST()); ProposalParameter gspc = new ProposalParameter(useSuper, cu, rewrite, accessNode, qualifier, variableBinding); if (ASTResolving.isWriteAccess(sn)) { return addSetterProposal(gspc, relevance); } else { return addGetterProposal(gspc, relevance); } }
protected void rewrite(SimpleName node, ITypeBinding type) { AST ast= node.getAST(); Type result= fCuRewrite.getImportRewrite().addImport(type, fCuRewrite.getAST()); fCuRewrite.getImportRemover().registerAddedImport(type.getQualifiedName()); Name dummy= ASTNodeFactory.newName(fCuRewrite.getAST(), ASTFlattener.asString(result)); QualifiedName name= ast.newQualifiedName(dummy, ast.newSimpleName(node.getIdentifier())); fCuRewrite.getASTRewrite().replace(node, name, fCuRewrite.createGroupDescription(REFERENCE_UPDATE)); fCuRewrite.getImportRemover().registerRemovedNode(node); fProcessed.add(node); fNeedsImport= true; }
protected void rewrite(SimpleName node, ITypeBinding type) { AST ast= node.getAST(); ImportRewriteContext context= new ContextSensitiveImportRewriteContext(node, fCuRewrite.getImportRewrite()); Type result= fCuRewrite.getImportRewrite().addImport(type, fCuRewrite.getAST(), context); fCuRewrite.getImportRemover().registerAddedImport(type.getQualifiedName()); Name dummy= ASTNodeFactory.newName(fCuRewrite.getAST(), ASTFlattener.asString(result)); QualifiedName name= ast.newQualifiedName(dummy, ast.newSimpleName(node.getIdentifier())); fCuRewrite.getASTRewrite().replace(node, name, fCuRewrite.createGroupDescription(REFERENCE_UPDATE)); fCuRewrite.getImportRemover().registerRemovedNode(node); fProcessed.add(node); fNeedsImport= true; }
protected void rewrite(SimpleName node, ITypeBinding type) { AST ast= node.getAST(); ImportRewriteContext context= new ContextSensitiveImportRewriteContext(node, fCuRewrite.getImportRewrite()); Type result= fCuRewrite.getImportRewrite().addImport(type, fCuRewrite.getAST(), context); fCuRewrite.getImportRemover().registerAddedImport(type.getQualifiedName()); Name dummy= ASTNodeFactory.newName(fCuRewrite.getAST(), ASTFlattener.asString(result)); QualifiedName name= ast.newQualifiedName(dummy, ast.newSimpleName(node.getIdentifier())); fCuRewrite.getASTRewrite().replace(node, name, fCuRewrite.createGroupDescription(REFERENCE_UPDATE)); fCuRewrite.getImportRemover().registerRemovedNode(node); fProcessed.add(node); fNeedsImport= true; }
private static ASTRewriteCorrectionProposal createNoSideEffectProposal(IInvocationContext context, SimpleName nodeToQualify, IVariableBinding fieldBinding, String label, int relevance) { AST ast= nodeToQualify.getAST(); Expression qualifier; if (Modifier.isStatic(fieldBinding.getModifiers())) { ITypeBinding declaringClass= fieldBinding.getDeclaringClass(); qualifier= ast.newSimpleName(declaringClass.getTypeDeclaration().getName()); } else { qualifier= ast.newThisExpression(); } ASTRewrite rewrite= ASTRewrite.create(ast); FieldAccess access= ast.newFieldAccess(); access.setName((SimpleName) rewrite.createCopyTarget(nodeToQualify)); access.setExpression(qualifier); rewrite.replace(nodeToQualify, access, null); Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE); return new ASTRewriteCorrectionProposal(label, context.getCompilationUnit(), rewrite, relevance, image); }
private static ASTRewriteCorrectionProposal createNoSideEffectProposal(IInvocationContext context, SimpleName nodeToQualify, IVariableBinding fieldBinding, String label, int relevance) { AST ast= nodeToQualify.getAST(); Expression qualifier; if (Modifier.isStatic(fieldBinding.getModifiers())) { ITypeBinding declaringClass= fieldBinding.getDeclaringClass(); qualifier= ast.newSimpleName(declaringClass.getTypeDeclaration().getName()); } else { qualifier= ast.newThisExpression(); } ASTRewrite rewrite= ASTRewrite.create(ast); FieldAccess access= ast.newFieldAccess(); access.setName((SimpleName) rewrite.createCopyTarget(nodeToQualify)); access.setExpression(qualifier); rewrite.replace(nodeToQualify, access, null); Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE); return new ASTRewriteCorrectionProposal(label, context.getCompilationUnit(), rewrite, relevance, image); }
private static ASTRewriteCorrectionProposal createNoSideEffectProposal(IInvocationContext context, SimpleName nodeToQualify, IVariableBinding fieldBinding, String label, int relevance) { AST ast= nodeToQualify.getAST(); Expression qualifier; if (Modifier.isStatic(fieldBinding.getModifiers())) { ITypeBinding declaringClass= fieldBinding.getDeclaringClass(); qualifier= ast.newSimpleName(declaringClass.getTypeDeclaration().getName()); } else { qualifier= ast.newThisExpression(); } ASTRewrite rewrite= ASTRewrite.create(ast); FieldAccess access= ast.newFieldAccess(); access.setName((SimpleName) rewrite.createCopyTarget(nodeToQualify)); access.setExpression(qualifier); rewrite.replace(nodeToQualify, access, null); Image image= JavaPluginImages.get(JavaPluginImages.IMG_CORRECTION_CHANGE); return new ASTRewriteCorrectionProposal(label, context.getCompilationUnit(), rewrite, relevance, image); }