Example usage for org.eclipse.jdt.core IField isResolved

List of usage examples for org.eclipse.jdt.core IField isResolved

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IField isResolved.

Prototype

boolean isResolved();

Source Link

Document

Returns whether this field represents a resolved field.

Usage

From source file:at.bestsolution.fxide.jdt.text.viewersupport.JavaElementLabelComposer.java

License:Open Source License

/**
 * Appends the style label for a field. Considers the F_* flags.
 *
 * @param field the element to render// w w  w. j  ava2 s.  c om
 * @param flags the rendering flags. Flags with names starting with 'F_' are considered.
 */
public void appendFieldLabel(IField field, long flags) {
    try {

        if (getFlag(flags, JavaElementLabels.F_PRE_TYPE_SIGNATURE) && field.exists()
                && !Flags.isEnum(field.getFlags())) {
            if (getFlag(flags, JavaElementLabels.USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            fBuffer.append(' ');
        }

        // qualification
        if (getFlag(flags, JavaElementLabels.F_FULLY_QUALIFIED)) {
            appendTypeLabel(field.getDeclaringType(),
                    JavaElementLabels.T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            fBuffer.append('.');
        }
        fBuffer.append(getElementName(field));

        if (getFlag(flags, JavaElementLabels.F_APP_TYPE_SIGNATURE) && field.exists()
                && !Flags.isEnum(field.getFlags())) {
            int offset = fBuffer.length();
            fBuffer.append(JavaElementLabels.DECL_STRING);
            if (getFlag(flags, JavaElementLabels.USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            //            if (getFlag(flags, JavaElementLabels.COLORIZE)) {
            //               fBuffer.setStyle(offset, fBuffer.length() - offset, DECORATIONS_STYLE);
            //            }
        }

        // category
        if (getFlag(flags, JavaElementLabels.F_CATEGORY) && field.exists())
            appendCategoryLabel(field, flags);

        // post qualification
        if (getFlag(flags, JavaElementLabels.F_POST_QUALIFIED)) {
            int offset = fBuffer.length();
            fBuffer.append(JavaElementLabels.CONCAT_STRING);
            appendTypeLabel(field.getDeclaringType(),
                    JavaElementLabels.T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            //            if (getFlag(flags, JavaElementLabels.COLORIZE)) {
            //               fBuffer.setStyle(offset, fBuffer.length() - offset, QUALIFIER_STYLE);
            //            }
        }

    } catch (JavaModelException e) {
        // TODO
        e.printStackTrace();
    }
}

From source file:com.codenvy.ide.ext.java.server.javadoc.JavaElementLabelComposer.java

License:Open Source License

/**
 * Appends the style label for a field. Considers the F_* flags.
 *
 * @param field the element to render//w w  w  .  j  a v a  2 s .c  o  m
 * @param flags the rendering flags. Flags with names starting with 'F_' are considered.
 */
public void appendFieldLabel(IField field, long flags) {
    try {

        if (getFlag(flags, JavaElementLabels.F_PRE_TYPE_SIGNATURE) && field.exists()
                && !Flags.isEnum(field.getFlags())) {
            if (getFlag(flags, JavaElementLabels.USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            fBuffer.append(' ');
        }

        // qualification
        if (getFlag(flags, JavaElementLabels.F_FULLY_QUALIFIED)) {
            appendTypeLabel(field.getDeclaringType(),
                    JavaElementLabels.T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            fBuffer.append('.');
        }
        fBuffer.append(getElementName(field));

        if (getFlag(flags, JavaElementLabels.F_APP_TYPE_SIGNATURE) && field.exists()
                && !Flags.isEnum(field.getFlags())) {
            int offset = fBuffer.length();
            fBuffer.append(JavaElementLabels.DECL_STRING);
            if (getFlag(flags, JavaElementLabels.USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            if (getFlag(flags, JavaElementLabels.COLORIZE)) {
                //               fBuffer.setStyle(offset, fBuffer.length() - offset, DECORATIONS_STYLE);
            }
        }

        // category
        if (getFlag(flags, JavaElementLabels.F_CATEGORY) && field.exists())
            appendCategoryLabel(field, flags);

        // post qualification
        if (getFlag(flags, JavaElementLabels.F_POST_QUALIFIED)) {
            int offset = fBuffer.length();
            fBuffer.append(JavaElementLabels.CONCAT_STRING);
            appendTypeLabel(field.getDeclaringType(),
                    JavaElementLabels.T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            if (getFlag(flags, JavaElementLabels.COLORIZE)) {
                //               fBuffer.setStyle(offset, fBuffer.length() - offset, QUALIFIER_STYLE);
            }
        }

    } catch (JavaModelException e) {
        LOG.error(e.getMessage(), e); // NotExistsException will not reach this point
    }
}

From source file:com.microsoft.javapkgsrv.JavaElementLabelComposer.java

License:Open Source License

/**
 * Appends the style label for a field. Considers the F_* flags.
 *
 * @param field the element to render/*w  w  w.  ja  v  a2 s  .c  om*/
 * @param flags the rendering flags. Flags with names starting with 'F_' are considered.
 */
public void appendFieldLabel(IField field, long flags) {
    try {

        if (getFlag(flags, F_PRE_TYPE_SIGNATURE) && field.exists() && !Flags.isEnum(field.getFlags())) {
            if (getFlag(flags, USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            fBuffer.append(' ');
        }

        // qualification
        if (getFlag(flags, F_FULLY_QUALIFIED)) {
            appendTypeLabel(field.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            fBuffer.append('.');
        }
        fBuffer.append(getElementName(field));

        if (getFlag(flags, F_APP_TYPE_SIGNATURE) && field.exists() && !Flags.isEnum(field.getFlags())) {
            int offset = fBuffer.length();
            fBuffer.append(DECL_STRING);
            if (getFlag(flags, USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
        }

        // category
        if (getFlag(flags, F_CATEGORY) && field.exists())
            appendCategoryLabel(field, flags);

        // post qualification
        if (getFlag(flags, F_POST_QUALIFIED)) {
            int offset = fBuffer.length();
            fBuffer.append(CONCAT_STRING);
            appendTypeLabel(field.getDeclaringType(), T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
        }

    } catch (JavaModelException e) {
        e.printStackTrace();
    }
}

From source file:org.eclipse.e4.demo.simpleide.jdt.internal.editor.viewer.JavaElementLabelComposer.java

License:Open Source License

/**
 * Appends the style label for a field. Considers the F_* flags.
 * //from  w w  w  . j av  a  2  s. co  m
 * @param field
 *            the element to render
 * @param flags
 *            the rendering flags. Flags with names starting with 'F_' are
 *            considered.
 */
public void appendFieldLabel(IField field, long flags) {
    try {

        if (getFlag(flags, JavaElementLabels.F_PRE_TYPE_SIGNATURE) && field.exists()
                && !Flags.isEnum(field.getFlags())) {
            if (getFlag(flags, JavaElementLabels.USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            fBuffer.append(' ');
        }

        // qualification
        if (getFlag(flags, JavaElementLabels.F_FULLY_QUALIFIED)) {
            appendTypeLabel(field.getDeclaringType(),
                    JavaElementLabels.T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            fBuffer.append('.');
        }
        fBuffer.append(getElementName(field));

        if (getFlag(flags, JavaElementLabels.F_APP_TYPE_SIGNATURE) && field.exists()
                && !Flags.isEnum(field.getFlags())) {
            int offset = fBuffer.length();
            fBuffer.append(JavaElementLabels.DECL_STRING);
            if (getFlag(flags, JavaElementLabels.USE_RESOLVED) && field.isResolved()) {
                appendTypeSignatureLabel(field, new BindingKey(field.getKey()).toSignature(), flags);
            } else {
                appendTypeSignatureLabel(field, field.getTypeSignature(), flags);
            }
            if (getFlag(flags, JavaElementLabels.COLORIZE)) {
                fBuffer.setStyle(offset, fBuffer.length() - offset, DECORATIONS_STYLE);
            }
        }

        // category
        if (getFlag(flags, JavaElementLabels.F_CATEGORY) && field.exists())
            appendCategoryLabel(field, flags);

        // post qualification
        if (getFlag(flags, JavaElementLabels.F_POST_QUALIFIED)) {
            int offset = fBuffer.length();
            fBuffer.append(JavaElementLabels.CONCAT_STRING);
            appendTypeLabel(field.getDeclaringType(),
                    JavaElementLabels.T_FULLY_QUALIFIED | (flags & QUALIFIER_FLAGS));
            if (getFlag(flags, JavaElementLabels.COLORIZE)) {
                fBuffer.setStyle(offset, fBuffer.length() - offset, QUALIFIER_STYLE);
            }
        }

    } catch (JavaModelException e) {
        logger.error(e);
    }
}

From source file:org.jboss.tools.ws.jaxrs.core.jdt.JdtUtils.java

License:Open Source License

/**
 * Finds the declaring {@link ASTNode} for the given {@link IMember}, using
 * the {@link NodeFinder} if the member was not resolved.
 * //from  w  w w .  j  ava  2  s.co  m
 * @param member
 *            the member to find
 * @param ast
 *            the Compilation Unit
 * @return the associated declaring node
 * @throws JavaModelException
 */
private static ASTNode findDeclaringNode(final IMember member, final CompilationUnit ast)
        throws JavaModelException {
    switch (member.getElementType()) {
    case IJavaElement.TYPE:
        final IType type = (IType) member;
        if (type.isResolved()) {
            final ASTNode typeNode = ast.findDeclaringNode(type.getKey());
            // return if match found
            if (typeNode != null) {
                return typeNode;
            }
        }
        break;
    case IJavaElement.METHOD:
        final IMethod method = (IMethod) member;
        if (method.isResolved()) {
            final ASTNode methodNode = ast.findDeclaringNode(method.getKey());
            // return if match found
            if (methodNode != null) {
                return methodNode;
            }
        }
        break;
    case IJavaElement.FIELD:
        final IField field = (IField) member;
        if (field.isResolved()) {
            // in the case of a Field, the
            // CompilationUnit#findDeclaringNode(String key) method returns
            // a VariableDeclarationFragment in a FieldDeclaration
            final ASTNode variableDeclarationFragment = ast.findDeclaringNode(field.getKey());
            if (variableDeclarationFragment != null) {
                final ASTNode fieldNode = variableDeclarationFragment.getParent();
                if (fieldNode != null) {
                    // return if match found
                    return fieldNode;
                }
            }
        }
        break;
    default:
    }
    // fallback approach if everything above failed.
    final NodeFinder finder = new NodeFinder(ast, member.getSourceRange().getOffset(),
            member.getSourceRange().getLength());
    return finder.getCoveredNode();
}