/** * Appends the label for a initializer to a {@link StringBuffer}. Considers the I_* flags. * @param initializer The element to render. * @param flags The rendering flags. Flags with names starting with 'I_' are considered. * @param buf The buffer to append the resulting label to. */ public static void getInitializerLabel(IInitializer initializer, long flags, StringBuffer buf) { // qualification if (getFlag(flags, I_FULLY_QUALIFIED)) { getTypeLabel(initializer.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf); buf.append('.'); } buf.append(JavaUIMessages.JavaElementLabels_initializer); // post qualification if (getFlag(flags, I_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getTypeLabel(initializer.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf); } }
private static void getInternalArchiveLabel(IPackageFragmentRoot root, long flags, StringBuffer buf) { IResource resource= root.getResource(); boolean rootQualified= getFlag(flags, ROOT_QUALIFIED); boolean referencedQualified= getFlag(flags, REFERENCED_ROOT_POST_QUALIFIED) && isReferenced(root); if (rootQualified) { buf.append(root.getPath().makeRelative().toString()); } else { buf.append(root.getElementName()); if (referencedQualified) { buf.append(CONCAT_STRING); buf.append(resource.getParent().getFullPath().makeRelative().toString()); } else if (getFlag(flags, ROOT_POST_QUALIFIED)) { buf.append(CONCAT_STRING); buf.append(root.getParent().getPath().makeRelative().toString()); } } }
if (getFlag(flags, F_PRE_TYPE_SIGNATURE)) { getTypeSignatureLabel(localVariable.getTypeSignature(), flags, buf); buf.append(' '); if (getFlag(flags, F_FULLY_QUALIFIED)) { getElementLabel(localVariable.getParent(), M_PARAMETER_TYPES | M_FULLY_QUALIFIED | T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf); buf.append('.'); if (getFlag(flags, F_APP_TYPE_SIGNATURE)) { buf.append(DECL_STRING); getTypeSignatureLabel(localVariable.getTypeSignature(), flags, buf); if (getFlag(flags, F_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getElementLabel(localVariable.getParent(), M_PARAMETER_TYPES | M_FULLY_QUALIFIED | T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf);
if (getFlag(flags, P_QUALIFIED)) { getPackageFragmentRootLabel((IPackageFragmentRoot) pack.getParent(), ROOT_QUALIFIED, buf); buf.append('/'); if (pack.isDefaultPackage()) { buf.append(DEFAULT_PACKAGE); } else if (getFlag(flags, P_COMPRESSED) && fgPkgNameLength >= 0) { String name= pack.getElementName(); int start= 0; buf.append(pack.getElementName()); if (getFlag(flags, P_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getPackageFragmentRootLabel((IPackageFragmentRoot) pack.getParent(), ROOT_QUALIFIED, buf);
/** * Appends the label for a class file to a {@link StringBuffer}. Considers the CF_* flags. * @param classFile The element to render. * @param flags The rendering flags. Flags with names starting with 'CF_' are considered. * @param buf The buffer to append the resulting label to. */ public static void getClassFileLabel(IClassFile classFile, long flags, StringBuffer buf) { if (getFlag(flags, CF_QUALIFIED)) { IPackageFragment pack= (IPackageFragment) classFile.getParent(); if (!pack.isDefaultPackage()) { getPackageFragmentLabel(pack, (flags & QUALIFIER_FLAGS), buf); buf.append('.'); } } buf.append(classFile.getElementName()); if (getFlag(flags, CF_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getPackageFragmentLabel((IPackageFragment) classFile.getParent(), flags & QUALIFIER_FLAGS, buf); } }
/** * Appends the label for a compilation unit to a {@link StringBuffer}. Considers the CU_* flags. * @param cu The element to render. * @param flags The rendering flags. Flags with names starting with 'CU_' are considered. * @param buf The buffer to append the resulting label to. */ public static void getCompilationUnitLabel(ICompilationUnit cu, long flags, StringBuffer buf) { if (getFlag(flags, CU_QUALIFIED)) { IPackageFragment pack= (IPackageFragment) cu.getParent(); if (!pack.isDefaultPackage()) { getPackageFragmentLabel(pack, (flags & QUALIFIER_FLAGS), buf); buf.append('.'); } } buf.append(cu.getElementName()); if (getFlag(flags, CU_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getPackageFragmentLabel((IPackageFragment) cu.getParent(), flags & QUALIFIER_FLAGS, buf); } }
/** * Appends the label for a import container, import or package declaration to a {@link StringBuffer}. Considers the D_* flags. * @param declaration The element to render. * @param flags The rendering flags. Flags with names starting with 'D_' are considered. * @param buf The buffer to append the resulting label to. */ public static void getDeclarationLabel(IJavaElement declaration, long flags, StringBuffer buf) { if (getFlag(flags, D_QUALIFIED)) { IJavaElement openable= (IJavaElement) declaration.getOpenable(); if (openable != null) { buf.append(getElementLabel(openable, CF_QUALIFIED | CU_QUALIFIED | (flags & QUALIFIER_FLAGS))); buf.append('/'); } } if (declaration.getElementType() == IJavaElement.IMPORT_CONTAINER) { buf.append(JavaUIMessages.JavaElementLabels_import_container); } else { buf.append(declaration.getElementName()); } // post qualification if (getFlag(flags, D_POST_QUALIFIED)) { IJavaElement openable= (IJavaElement) declaration.getOpenable(); if (openable != null) { buf.append(CONCAT_STRING); buf.append(getElementLabel(openable, CF_QUALIFIED | CU_QUALIFIED | (flags & QUALIFIER_FLAGS))); } } }
private static void getFolderLabel(IPackageFragmentRoot root, long flags, StringBuffer buf) { IResource resource= root.getResource(); boolean rootQualified= getFlag(flags, ROOT_QUALIFIED); boolean referencedQualified= getFlag(flags, REFERENCED_ROOT_POST_QUALIFIED) && isReferenced(root); if (rootQualified) { buf.append(root.getPath().makeRelative().toString()); } else { if (resource != null) { IPath projectRelativePath= resource.getProjectRelativePath(); if (projectRelativePath.segmentCount() == 0) { buf.append(resource.getName()); referencedQualified= false; } else { buf.append(projectRelativePath.toString()); } } else buf.append(root.getElementName()); if (referencedQualified) { buf.append(CONCAT_STRING); buf.append(resource.getProject().getName()); } else if (getFlag(flags, ROOT_POST_QUALIFIED)) { buf.append(CONCAT_STRING); buf.append(root.getParent().getElementName()); } } }
private static void getExternalArchiveLabel(IPackageFragmentRoot root, long flags, StringBuffer buf) { IPath path= root.getPath(); if (getFlag(flags, REFERENCED_ROOT_POST_QUALIFIED)) { int segements= path.segmentCount(); if (segements > 0) { buf.append(path.segment(segements - 1)); if (segements > 1 || path.getDevice() != null) { buf.append(CONCAT_STRING); buf.append(path.removeLastSegments(1).toOSString()); } } else { buf.append(path.toOSString()); } } else { buf.append(path.toOSString()); } }
private static void getArchiveLabel(IPackageFragmentRoot root, long flags, StringBuffer buf) { // Handle variables different if (getFlag(flags, ROOT_VARIABLE) && getVariableLabel(root, flags, buf)) return; boolean external= root.isExternal(); if (external) getExternalArchiveLabel(root, flags, buf); else getInternalArchiveLabel(root, flags, buf); }
if (rawEntry != null && rawEntry.getEntryKind() == IClasspathEntry.CPE_VARIABLE) { IPath path= rawEntry.getPath().makeRelative(); if (getFlag(flags, REFERENCED_ROOT_POST_QUALIFIED)) { int segements= path.segmentCount(); if (segements > 0) {
try { if (getFlag(flags, F_PRE_TYPE_SIGNATURE) && field.exists() && !Flags.isEnum(field.getFlags())) { if (getFlag(flags, USE_RESOLVED) && field.isResolved()) { getTypeSignatureLabel(new BindingKey(field.getKey()).toSignature(), flags, buf); } else { if (getFlag(flags, F_FULLY_QUALIFIED)) { getTypeLabel(field.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf); buf.append('.'); if (getFlag(flags, F_APP_TYPE_SIGNATURE) && field.exists() && !Flags.isEnum(field.getFlags())) { buf.append(DECL_STRING); if (getFlag(flags, USE_RESOLVED) && field.isResolved()) { getTypeSignatureLabel(new BindingKey(field.getKey()).toSignature(), flags, buf); } else { if (getFlag(flags, F_CATEGORY) && field.exists()) getCategoryLabel(field, buf); if (getFlag(flags, F_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getTypeLabel(field.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf);
BindingKey resolvedKey= getFlag(flags, USE_RESOLVED) && method.isResolved() ? new BindingKey(method.getKey()) : null; String resolvedSig= (resolvedKey != null) ? resolvedKey.toSignature() : null; if (getFlag(flags, M_PRE_TYPE_PARAMETERS)) { if (resolvedKey != null) { if (resolvedKey.isParameterizedMethod()) { if (getFlag(flags, M_PRE_RETURNTYPE) && method.exists() && !method.isConstructor()) { String returnTypeSig= resolvedSig != null ? Signature.getReturnType(resolvedSig) : method.getReturnType(); getTypeSignatureLabel(returnTypeSig, flags, buf); if (getFlag(flags, M_FULLY_QUALIFIED)) { getTypeLabel(method.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS), buf); buf.append('.'); if (getFlag(flags, M_PARAMETER_TYPES | M_PARAMETER_NAMES)) { String[] types= null; int nParams= 0; boolean renderVarargs= false; if (getFlag(flags, M_PARAMETER_TYPES)) { if (resolvedSig != null) { types= Signature.getParameterTypes(resolvedSig); if (getFlag(flags, M_PARAMETER_NAMES) && method.exists()) { names= method.getParameterNames(); if (types == null) { if (getFlag(flags, M_EXCEPTIONS)) { String[] types;
if (getFlag(flags, T_FULLY_QUALIFIED)) { IPackageFragment pack= type.getPackageFragment(); if (!pack.isDefaultPackage()) { if (getFlag(flags, T_FULLY_QUALIFIED | T_CONTAINER_QUALIFIED)) { IType declaringType= type.getDeclaringType(); if (declaringType != null) { if (getFlag(flags, T_TYPE_PARAMETERS)) { if (getFlag(flags, USE_RESOLVED) && type.isResolved()) { BindingKey key= new BindingKey(type.getKey()); if (key.isParameterizedType()) { if (getFlag(flags, T_CATEGORY) && type.exists()) { try { getCategoryLabel(type, buf); if (getFlag(flags, T_POST_QUALIFIED)) { buf.append(CONCAT_STRING); IType declaringType= type.getDeclaringType();