Example usage for org.eclipse.jdt.core.dom ASTNode MODIFIER

List of usage examples for org.eclipse.jdt.core.dom ASTNode MODIFIER

Introduction

In this page you can find the example usage for org.eclipse.jdt.core.dom ASTNode MODIFIER.

Prototype

int MODIFIER

To view the source code for org.eclipse.jdt.core.dom ASTNode MODIFIER.

Click Source Link

Document

Node type constant indicating a node of type Modifier.

Usage

From source file:cideplus.ui.astview.ASTViewLabelProvider.java

License:Open Source License

public Image getImage(Object obj) {
    if (obj instanceof ASTNode) {
        int nodeType = ((ASTNode) obj).getNodeType();
        String image = ISharedImages.IMG_OBJS_CFILE;
        //new JavaElementImageDescriptor()
        switch (nodeType) {
        case ASTNode.ENUM_CONSTANT_DECLARATION:
            image = ISharedImages.IMG_OBJS_ENUM_DEFAULT;
            break;
        case ASTNode.FIELD_DECLARATION:
            image = ISharedImages.IMG_FIELD_DEFAULT;
            break;
        case ASTNode.METHOD_DECLARATION:
            image = ISharedImages.IMG_OBJS_PUBLIC;
            break;
        case ASTNode.MODIFIER:
            image = ISharedImages.IMG_OBJS_DEFAULT;
            break;
        case ASTNode.JAVADOC:
            image = ISharedImages.IMG_OBJS_JAVADOCTAG;
            break;
        case ASTNode.PACKAGE_DECLARATION:
            image = ISharedImages.IMG_OBJS_PACKDECL;
            break;
        case ASTNode.IMPORT_DECLARATION:
            image = ISharedImages.IMG_OBJS_IMPDECL;
            break;
        case ASTNode.ENUM_DECLARATION:
            image = ISharedImages.IMG_OBJS_ENUM;
            break;
        case ASTNode.TYPE_DECLARATION:
            if (((TypeDeclaration) obj).isInterface()) {
                image = ISharedImages.IMG_OBJS_INTERFACE;
            } else {
                image = ISharedImages.IMG_OBJS_CLASS;
            }//from  w  w  w . j a  v a 2s  . c o m
            break;
        }
        if (image != null) {
            return JavaUI.getSharedImages().getImage(image);
        }
        return null;
    } else if (obj instanceof ASTAttribute) {
        Image image = ((ASTAttribute) obj).getImage();
        if (image == null) {
            if (((ASTAttribute) obj).getChildren().length > 0) {
                image = PlatformUI.getWorkbench().getSharedImages()
                        .getImage(org.eclipse.ui.ISharedImages.IMG_OBJ_FOLDER);
            } else {
                image = PlatformUI.getWorkbench().getSharedImages()
                        .getImage(org.eclipse.ui.ISharedImages.IMG_TOOL_FORWARD);
            }
        }
        return image;
    }

    return null;
    //      String imageKey = ISharedImages.IMG_OBJ_ELEMENT;
    //      if (obj instanceof ASTNode) {
    //         imageKey = ISharedImages.IMG_OBJ_FOLDER;
    //      }
    //      return PlatformUI.getWorkbench().getSharedImages().getImage(imageKey);
}

From source file:com.drgarbage.ast.ASTGraphUtil.java

License:Apache License

/**
 * Returns an image corresponding to the AST element.
 * /*from  w  ww  .j  av  a2 s .  com*/
 * @param node the AST-node
 * @return the image
 */
@SuppressWarnings("restriction")
public static Image getImage(ASTNode node) {
    switch (node.getNodeType()) {
    case ASTNode.COMPILATION_UNIT:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_CUNIT);

    case ASTNode.PACKAGE_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_PACKDECL);

    case ASTNode.IMPORT_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_IMPDECL);

    case ASTNode.TYPE_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_CLASS);

    case ASTNode.ANNOTATION_TYPE_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_ANNOTATION);

    case ASTNode.ANONYMOUS_CLASS_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_INNER_CLASS_DEFAULT);

    case ASTNode.ENUM_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_ENUM);

    case ASTNode.FIELD_DECLARATION:
    case ASTNode.ENUM_CONSTANT_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_FIELD_PROTECTED);

    case ASTNode.METHOD_DECLARATION:
        return JavaPluginImages.get(JavaPluginImages.IMG_MISC_PUBLIC);

    case ASTNode.JAVADOC:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_JAVADOCTAG);

    case ASTNode.VARIABLE_DECLARATION_STATEMENT:
        return JavaPluginImages.get(JavaPluginImages.IMG_OBJS_LOCAL_VARIABLE);

    case ASTNode.BLOCK:
        return blockImage;

    case ASTNode.MODIFIER:
        return JavaPluginImages.get(JavaPluginImages.IMG_FIELD_DEFAULT);
    }

    /* default */
    return JavaPluginImages.get(JavaPluginImages.IMG_FIELD_PRIVATE);
}

From source file:org.autorefactor.refactoring.ASTHelper.java

License:Open Source License

/**
 * Returns whether the two provided nodes structurally match.
 *
 * @param matcher the AST matcher//from  w  ww .j ava  2  s  .  c o  m
 * @param node1 the first node to compare
 * @param node2 the second node to compare
 * @return true if the two provided nodes structurally match, false otherwise
 */
public static boolean match(ASTMatcher matcher, ASTNode node1, ASTNode node2) {
    if (sameClass(node1, node2)) {
        // FIXME JNR implement all expressions
        // TODO JNR
        // can we match "this.ast" and the unqualified "ast" for example?
        // can we match "MyClass.CONSTANT" and the unqualified "CONSTANT" for example?
        // can we use IVariableBindings to compare them?
        switch (node1.getNodeType()) {
        case ASTNode.ANNOTATION_TYPE_DECLARATION:
            return matcher.match((AnnotationTypeDeclaration) node1, node2);
        case ASTNode.ANNOTATION_TYPE_MEMBER_DECLARATION:
            return matcher.match((AnnotationTypeMemberDeclaration) node1, node2);
        case ASTNode.ANONYMOUS_CLASS_DECLARATION:
            return matcher.match((AnonymousClassDeclaration) node1, node2);
        case ASTNode.ARRAY_ACCESS:
            return matcher.match((ArrayAccess) node1, node2);
        case ASTNode.ARRAY_CREATION:
            return matcher.match((ArrayCreation) node1, node2);
        case ASTNode.ARRAY_INITIALIZER:
            return matcher.match((ArrayInitializer) node1, node2);
        case ASTNode.ARRAY_TYPE:
            return matcher.match((ArrayType) node1, node2);
        case ASTNode.ASSERT_STATEMENT:
            return matcher.match((AssertStatement) node1, node2);
        case ASTNode.ASSIGNMENT:
            return matcher.match((Assignment) node1, node2);
        case ASTNode.BLOCK:
            return matcher.match((Block) node1, node2);
        case ASTNode.BLOCK_COMMENT:
            return matcher.match((BlockComment) node1, node2);
        case ASTNode.BOOLEAN_LITERAL:
            return matcher.match((BooleanLiteral) node1, node2);
        case ASTNode.BREAK_STATEMENT:
            return matcher.match((BreakStatement) node1, node2);
        case ASTNode.CAST_EXPRESSION:
            return matcher.match((CastExpression) node1, node2);
        case ASTNode.CATCH_CLAUSE:
            return matcher.match((CatchClause) node1, node2);
        case ASTNode.CHARACTER_LITERAL:
            return matcher.match((CharacterLiteral) node1, node2);
        case ASTNode.CLASS_INSTANCE_CREATION:
            return matcher.match((ClassInstanceCreation) node1, node2);
        case ASTNode.COMPILATION_UNIT:
            return matcher.match((CompilationUnit) node1, node2);
        case ASTNode.CONDITIONAL_EXPRESSION:
            return matcher.match((ConditionalExpression) node1, node2);
        case ASTNode.CONSTRUCTOR_INVOCATION:
            return matcher.match((ConstructorInvocation) node1, node2);
        case ASTNode.CONTINUE_STATEMENT:
            return matcher.match((ContinueStatement) node1, node2);
        case ASTNode.DO_STATEMENT:
            return matcher.match((DoStatement) node1, node2);
        case ASTNode.EMPTY_STATEMENT:
            return matcher.match((EmptyStatement) node1, node2);
        case ASTNode.ENHANCED_FOR_STATEMENT:
            return matcher.match((EnhancedForStatement) node1, node2);
        case ASTNode.ENUM_DECLARATION:
            return matcher.match((EnumDeclaration) node1, node2);
        case ASTNode.ENUM_CONSTANT_DECLARATION:
            return matcher.match((EnumConstantDeclaration) node1, node2);
        case ASTNode.EXPRESSION_STATEMENT:
            return matcher.match((ExpressionStatement) node1, node2);
        case ASTNode.FIELD_ACCESS:
            return matcher.match((FieldAccess) node1, node2);
        case ASTNode.FIELD_DECLARATION:
            return matcher.match((FieldDeclaration) node1, node2);
        case ASTNode.FOR_STATEMENT:
            return matcher.match((ForStatement) node1, node2);
        case ASTNode.IF_STATEMENT:
            return matcher.match((IfStatement) node1, node2);
        case ASTNode.IMPORT_DECLARATION:
            return matcher.match((ImportDeclaration) node1, node2);
        case ASTNode.INFIX_EXPRESSION:
            return matcher.match((InfixExpression) node1, node2);
        case ASTNode.INITIALIZER:
            return matcher.match((Initializer) node1, node2);
        case ASTNode.INSTANCEOF_EXPRESSION:
            return matcher.match((InstanceofExpression) node1, node2);
        case ASTNode.JAVADOC:
            return matcher.match((Javadoc) node1, node2);
        case ASTNode.LABELED_STATEMENT:
            return matcher.match((LabeledStatement) node1, node2);
        case ASTNode.LINE_COMMENT:
            return matcher.match((LineComment) node1, node2);
        case ASTNode.MARKER_ANNOTATION:
            return matcher.match((MarkerAnnotation) node1, node2);
        case ASTNode.MEMBER_REF:
            return matcher.match((MemberRef) node1, node2);
        case ASTNode.MEMBER_VALUE_PAIR:
            return matcher.match((MemberValuePair) node1, node2);
        case ASTNode.METHOD_DECLARATION:
            return matcher.match((MethodDeclaration) node1, node2);
        case ASTNode.METHOD_INVOCATION:
            return matcher.match((MethodInvocation) node1, node2);
        case ASTNode.METHOD_REF:
            return matcher.match((MethodRef) node1, node2);
        case ASTNode.METHOD_REF_PARAMETER:
            return matcher.match((MethodRefParameter) node1, node2);
        case ASTNode.MODIFIER:
            return matcher.match((Modifier) node1, node2);
        case ASTNode.NORMAL_ANNOTATION:
            return matcher.match((NormalAnnotation) node1, node2);
        case ASTNode.NULL_LITERAL:
            return matcher.match((NullLiteral) node1, node2);
        case ASTNode.NUMBER_LITERAL:
            return matcher.match((NumberLiteral) node1, node2);
        case ASTNode.PACKAGE_DECLARATION:
            return matcher.match((PackageDeclaration) node1, node2);
        case ASTNode.PARAMETERIZED_TYPE:
            return matcher.match((ParameterizedType) node1, node2);
        case ASTNode.PARENTHESIZED_EXPRESSION:
            return matcher.match((ParenthesizedExpression) node1, node2);
        case ASTNode.POSTFIX_EXPRESSION:
            return matcher.match((PostfixExpression) node1, node2);
        case ASTNode.PREFIX_EXPRESSION:
            return matcher.match((PrefixExpression) node1, node2);
        case ASTNode.PRIMITIVE_TYPE:
            return matcher.match((PrimitiveType) node1, node2);
        case ASTNode.QUALIFIED_NAME:
            return matcher.match((QualifiedName) node1, node2);
        case ASTNode.QUALIFIED_TYPE:
            return matcher.match((QualifiedType) node1, node2);
        case ASTNode.RETURN_STATEMENT:
            return matcher.match((ReturnStatement) node1, node2);
        case ASTNode.SIMPLE_NAME:
            return matcher.match((SimpleName) node1, node2);
        case ASTNode.SIMPLE_TYPE:
            return matcher.match((SimpleType) node1, node2);
        case ASTNode.SINGLE_MEMBER_ANNOTATION:
            return matcher.match((SingleMemberAnnotation) node1, node2);
        case ASTNode.SINGLE_VARIABLE_DECLARATION:
            return matcher.match((SingleVariableDeclaration) node1, node2);
        case ASTNode.STRING_LITERAL:
            return matcher.match((StringLiteral) node1, node2);
        case ASTNode.SUPER_CONSTRUCTOR_INVOCATION:
            return matcher.match((SuperConstructorInvocation) node1, node2);
        case ASTNode.SUPER_FIELD_ACCESS:
            return matcher.match((SuperFieldAccess) node1, node2);
        case ASTNode.SUPER_METHOD_INVOCATION:
            return matcher.match((SuperMethodInvocation) node1, node2);
        case ASTNode.SWITCH_CASE:
            return matcher.match((SwitchCase) node1, node2);
        case ASTNode.SWITCH_STATEMENT:
            return matcher.match((SwitchStatement) node1, node2);
        case ASTNode.SYNCHRONIZED_STATEMENT:
            return matcher.match((SynchronizedStatement) node1, node2);
        case ASTNode.TAG_ELEMENT:
            return matcher.match((TagElement) node1, node2);
        case ASTNode.TEXT_ELEMENT:
            return matcher.match((TextElement) node1, node2);
        case ASTNode.THIS_EXPRESSION:
            return matcher.match((ThisExpression) node1, node2);
        case ASTNode.THROW_STATEMENT:
            return matcher.match((ThrowStatement) node1, node2);
        case ASTNode.TRY_STATEMENT:
            return matcher.match((TryStatement) node1, node2);
        case ASTNode.TYPE_DECLARATION:
            return matcher.match((TypeDeclaration) node1, node2);
        case ASTNode.TYPE_DECLARATION_STATEMENT:
            return matcher.match((TypeDeclarationStatement) node1, node2);
        case ASTNode.TYPE_LITERAL:
            return matcher.match((TypeLiteral) node1, node2);
        case ASTNode.TYPE_PARAMETER:
            return matcher.match((TypeParameter) node1, node2);
        case ASTNode.UNION_TYPE:
            return matcher.match((UnionType) node1, node2);
        case ASTNode.VARIABLE_DECLARATION_EXPRESSION:
            return matcher.match((VariableDeclarationExpression) node1, node2);
        case ASTNode.VARIABLE_DECLARATION_FRAGMENT:
            return matcher.match((VariableDeclarationFragment) node1, node2);
        case ASTNode.VARIABLE_DECLARATION_STATEMENT:
            return matcher.match((VariableDeclarationStatement) node1, node2);
        case ASTNode.WHILE_STATEMENT:
            return matcher.match((WhileStatement) node1, node2);
        case ASTNode.WILDCARD_TYPE:
            return matcher.match((WildcardType) node1, node2);
        default:
            throw new NotImplementedException(node1);
        }
    }
    return false;
}