Refine search
private boolean hasAddedStaticImport(SimpleName name) { IBinding binding= name.resolveBinding(); if (binding instanceof IVariableBinding) { IVariableBinding variable= (IVariableBinding) binding; return hasAddedStaticImport(variable.getDeclaringClass().getQualifiedName(), variable.getName(), true); } else if (binding instanceof IMethodBinding) { IMethodBinding method= (IMethodBinding) binding; return hasAddedStaticImport(method.getDeclaringClass().getQualifiedName(), method.getName(), false); } return false; }
private static String asString(IVariableBinding variableBinding) { if (! variableBinding.isField()) return variableBinding.toString(); if (variableBinding.getDeclaringClass() == null) { Assert.isTrue(variableBinding.getName().equals("length"));//$NON-NLS-1$ return ARRAY_LENGTH_FIELD_BINDING_STRING; } StringBuffer result= new StringBuffer(); result.append(variableBinding.getDeclaringClass().getName()); result.append(':'); result.append(variableBinding.getName()); return result.toString(); }
private void createSignature(final IMethodBinding constructor, StringBuilder buffer, Object[] selection) { ITypeBinding types[]= constructor.getParameterTypes(); for (int index= 0; index < types.length; index++) buffer.append(types[index].getName()); if (selection != null) { for (int index= 0; index < selection.length; index++) if (selection[index] instanceof IVariableBinding) buffer.append(((IVariableBinding) selection[index]).getType().getErasure().getName()); } }
IVariableBinding binding = variable.resolveBinding(); if (!binding.isField() && !binding.isEnumConstant() && !binding.isParameter()) { ILocalVariable local = (ILocalVariable) binding.getJavaElement(); }
/** * Returns the kind of the given binding. * * @param binding variable binding * @return one of the <code>NamingConventions.VK_*</code> constants * @since 3.5 */ private static int getKind(IVariableBinding binding) { if (binding.isField()) return getFieldKind(binding.getModifiers()); if (binding.isParameter()) return NamingConventions.VK_PARAMETER; return NamingConventions.VK_LOCAL; }
@Override RefactoringStatus checkMember(Object memberBinding) { RefactoringStatus status= new RefactoringStatus(); IVariableBinding variableBinding= (IVariableBinding)memberBinding; ITypeBinding fieldsType= variableBinding.getType(); if (fieldsType.isArray()) fieldsType= fieldsType.getElementType(); if (!fieldsType.isPrimitive() && !fieldsType.isEnum() && !alreadyCheckedMemberTypes.contains(fieldsType) && !fieldsType.equals(fTypeBinding)) { status.merge(checkHashCodeEqualsExists(fieldsType, false, ActionMessages.GenerateHashCodeEqualsAction_field_type)); alreadyCheckedMemberTypes.add(fieldsType); } if (Modifier.isTransient(variableBinding.getModifiers())) status.addWarning(Messages.format(ActionMessages.GenerateHashCodeEqualsAction_transient_field_included_error, BasicElementLabels.getJavaElementName(variableBinding.getName())), createRefactoringStatusContext(variableBinding.getJavaElement())); return status; }
private static IMethodBinding findGetter(ProposalParameter context) { ITypeBinding returnType= context.variableBinding.getType(); String getterName= GetterSetterUtil.getGetterName(context.variableBinding, context.compilationUnit.getJavaProject(), null, isBoolean(context)); ITypeBinding declaringType= context.variableBinding.getDeclaringClass(); IMethodBinding getter= Bindings.findMethodInHierarchy(declaringType, getterName, new ITypeBinding[0]); if (getter != null && getter.getReturnType().isAssignmentCompatible(returnType) && Modifier.isStatic(getter.getModifiers()) == Modifier.isStatic(context.variableBinding.getModifiers())) return getter; return null; }
private static boolean isInterfaceOrAnnotationMember(IBinding binding) { ITypeBinding declaringType= null; if (binding instanceof IVariableBinding) { declaringType= ((IVariableBinding) binding).getDeclaringClass(); } else if (binding instanceof IMethodBinding) { declaringType= ((IMethodBinding) binding).getDeclaringClass(); } else if (binding instanceof ITypeBinding) { declaringType= ((ITypeBinding) binding).getDeclaringClass(); } return declaringType != null && (declaringType.isInterface() || declaringType.isAnnotation()); }
private boolean isSourceAccess(IBinding binding) { if (binding instanceof IMethodBinding) { IMethodBinding method= (IMethodBinding)binding; return Modifier.isStatic(method.getModifiers()) && Bindings.equals(fSource, method.getDeclaringClass()); } else if (binding instanceof ITypeBinding) { ITypeBinding type= (ITypeBinding)binding; return Modifier.isStatic(type.getModifiers()) && Bindings.equals(fSource, type.getDeclaringClass()); } else if (binding instanceof IVariableBinding) { IVariableBinding field= (IVariableBinding)binding; return field.isField() && Modifier.isStatic(field.getModifiers()) && Bindings.equals(fSource, field.getDeclaringClass()); } return false; }
private static IBinding getDeclaration(IBinding binding) { if (binding instanceof ITypeBinding) { return ((ITypeBinding) binding).getTypeDeclaration(); } else if (binding instanceof IMethodBinding) { return ((IMethodBinding) binding).getMethodDeclaration(); } else if (binding instanceof IVariableBinding) { return ((IVariableBinding) binding).getVariableDeclaration(); } return binding; } }
private void appendVariableQualification(IVariableBinding variable, long flags) { if (variable.isField()) { appendTypeBindingLabel(variable.getDeclaringClass(), flags); } else { IMethodBinding declaringMethod= variable.getDeclaringMethod(); if (declaringMethod != null) { IBinding declaringMember= declaringMethod.getDeclaringMember(); if (declaringMember != null) { appendLambdaLabel(declaringMethod, flags); fBuffer.append(' '); appendMethodBindingLabel(declaringMethod.getMethodDeclaration(), (flags & QUALIFIER_FLAGS) | M_ALL_QUALIFIED); } else { appendMethodBindingLabel(declaringMethod, flags | M_ALL_QUALIFIED); } } else { // workaround for: local variable inside initializer doesn't yet expose the #getDeclaringMethod(); IJavaElement element= variable.getJavaElement(); if (element != null && element.getParent() != null) appendElementLabel(element.getParent(), flags); else fBuffer.append(MISSING_LABEL); } } }
private void addArgumentsForLocalsUsedInInnerClass(ClassInstanceCreation newClassCreation) { IVariableBinding[] usedLocals= getUsedLocalVariables(); for (int i= 0; i < usedLocals.length; i++) { final AST ast= fAnonymousInnerClassNode.getAST(); final IVariableBinding binding= usedLocals[i]; Name name= null; if (binding.isEnumConstant()) name= ast.newQualifiedName(ast.newSimpleName(binding.getDeclaringClass().getName()), ast.newSimpleName(binding.getName())); else name= ast.newSimpleName(binding.getName()); newClassCreation.arguments().add(name); } }
public static String removePrefixAndSuffixForVariable(IJavaProject project, IVariableBinding binding) { if (binding.isEnumConstant()) { return binding.getName(); } else if (binding.isField()) { if (Modifier.isStatic(binding.getModifiers()) && Modifier.isFinal(binding.getModifiers())) { return getCamelCaseFromUpper(binding.getName()); } else { return NamingConventions.removePrefixAndSuffixForFieldName(project, binding.getName(), binding.getModifiers()); } } else if (binding.isParameter()) { return NamingConventions.removePrefixAndSuffixForArgumentName(project, binding.getName()); } else { return NamingConventions.removePrefixAndSuffixForLocalVariableName(project, binding.getName()); } }
private static ITypeBinding getDeclaringClassBinding(SimpleName memberName) { IBinding binding= memberName.resolveBinding(); if (binding instanceof IMethodBinding) return ((IMethodBinding) binding).getDeclaringClass(); if (binding instanceof IVariableBinding) return ((IVariableBinding) binding).getDeclaringClass(); if (binding instanceof ITypeBinding) return ((ITypeBinding) binding).getDeclaringClass(); Assert.isTrue(false); return null; }
private static boolean hasMethodWithName(ITypeBinding typeBinding, String name) { IVariableBinding[] fields= typeBinding.getDeclaredFields(); for (int i= 0; i < fields.length; i++) { if (fields[i].getName().equals(name)) { return true; } } ITypeBinding superclass= typeBinding.getSuperclass(); if (superclass != null) { return hasMethodWithName(superclass, name); } return false; }
public StructuralEntity ensureStructuralEntityFromExpression(Expression expression) { if (expression instanceof SimpleName) { IBinding simpleNameBinding = ((SimpleName) expression).resolveBinding(); if (simpleNameBinding instanceof IVariableBinding) { IVariableBinding binding = ((IVariableBinding) simpleNameBinding).getVariableDeclaration(); if (binding.isField()) return ensureAttributeForVariableBinding(binding); if (binding.isParameter()) return ensureParameterWithinCurrentMethodFromVariableBinding(binding); if (binding.isEnumConstant()) return ensureEnumValueFromVariableBinding(binding); } } return null; }
private static ITypeBinding getDeclaringTypeBinding(IBinding accessBinding) { if (accessBinding instanceof IMethodBinding) { return ((IMethodBinding) accessBinding).getDeclaringClass(); } else if (accessBinding instanceof IVariableBinding) { return ((IVariableBinding) accessBinding).getDeclaringClass(); } return null; }
private boolean isInstanceFieldReference(SimpleName name) { IBinding binding = name.resolveBinding(); if (IBinding.VARIABLE != binding.getKind()) return false; return ((IVariableBinding)binding).isField(); }
public final ASTNode getArgumentNode(final IVariableBinding argument, final boolean last) throws JavaModelException { Assert.isNotNull(argument); if (elements.containsKey(argument.getKey())) return rewrite.createCopyTarget((ASTNode) elements.get(argument.getKey())); return JavadocUtil.createParamTag(argument.getName(), declaration.getAST(), fMethod.getJavaProject()); }