Example usage for org.eclipse.jdt.core.dom Initializer modifiers

List of usage examples for org.eclipse.jdt.core.dom Initializer modifiers

Introduction

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

Prototype

public List modifiers() 

Source Link

Document

Returns the live ordered list of modifiers and annotations of this declaration (added in JLS3 API).

Usage

From source file:at.bestsolution.fxide.jdt.corext.dom.ASTFlattener.java

License:Open Source License

@Override
public boolean visit(Initializer node) {
    if (node.getJavadoc() != null) {
        node.getJavadoc().accept(this);
    }// w ww  . j ava2  s. c o m
    if (node.getAST().apiLevel() >= JLS3) {
        printModifiers(node.modifiers());
    }
    node.getBody().accept(this);
    return false;
}

From source file:boa.datagen.util.Java7Visitor.java

License:Apache License

@Override
public boolean visit(Initializer node) {
    List<boa.types.Ast.Method> list = methods.peek();
    Method.Builder b = Method.newBuilder();
    //      b.setPosition(pos.build());
    b.setName("<clinit>");
    for (Object m : node.modifiers()) {
        if (((IExtendedModifier) m).isAnnotation())
            ((Annotation) m).accept(this);
        else//w w  w.j a  v a2s  .c o  m
            ((org.eclipse.jdt.core.dom.Modifier) m).accept(this);
        b.addModifiers(modifiers.pop());
    }
    boa.types.Ast.Type.Builder tb = boa.types.Ast.Type.newBuilder();
    tb.setName(getIndex("void"));
    tb.setKind(boa.types.Ast.TypeKind.OTHER);
    b.setReturnType(tb.build());
    if (node.getBody() != null) {
        statements.push(new ArrayList<boa.types.Ast.Statement>());
        node.getBody().accept(this);
        for (boa.types.Ast.Statement s : statements.pop())
            b.addStatements(s);
    }
    list.add(b.build());
    return false;
}

From source file:coloredide.utils.CopiedNaiveASTFlattener.java

License:Open Source License

public boolean visit(Initializer node) {
    if (node.getJavadoc() != null) {
        node.getJavadoc().accept(this);
    }/*from w w  w .j  a va  2  s .  c o m*/
    if (node.getAST().apiLevel() >= AST.JLS3) {
        printModifiers(node.modifiers());
    }
    node.getBody().accept(this);
    return false;
}

From source file:com.google.devtools.j2cpp.translate.Rewriter.java

License:Open Source License

@Override
public boolean visit(FieldDeclaration node) {
    int mods = node.getModifiers();
    if (Modifier.isStatic(mods)) {
        ASTNode parent = node.getParent();
        @SuppressWarnings("unchecked")
        List<BodyDeclaration> classMembers = parent instanceof AbstractTypeDeclaration
                ? ((AbstractTypeDeclaration) parent).bodyDeclarations()
                : ((AnonymousClassDeclaration) parent).bodyDeclarations(); // safe by specification
        int indexOfNewMember = classMembers.indexOf(node) + 1;

        @SuppressWarnings("unchecked")
        List<VariableDeclarationFragment> fragments = node.fragments(); // safe by specification
        for (VariableDeclarationFragment var : fragments) {
            IVariableBinding binding = Types.getVariableBinding(var);
            if (Types.isPrimitiveConstant(binding) && Modifier.isPrivate(binding.getModifiers())) {
                // Don't define accessors for private constants, since they can be
                // directly referenced.
                continue;
            }/*from   w  w w .j av  a2  s.  co m*/

            // rename varName to varName_, per Obj-C style guide
            SimpleName oldName = var.getName();
            ITypeBinding type = ((AbstractTypeDeclaration) node.getParent()).resolveBinding();
            String varName = NameTable.getStaticVarQualifiedName(type, oldName.getIdentifier());
            NameTable.rename(binding, varName);
            ITypeBinding typeBinding = binding.getType();
            var.setExtraDimensions(0); // if array, type was corrected above

            // add accessor(s)
            if (needsReader(var, classMembers)) {
                classMembers.add(indexOfNewMember++, makeStaticReader(var, mods));
            }
            if (!Modifier.isFinal(node.getModifiers()) && needsWriter(var, classMembers)) {
                classMembers.add(indexOfNewMember++,
                        makeStaticWriter(var, oldName.getIdentifier(), node.getType(), mods));
            }

            // move non-constant initialization to init block
            Expression initializer = var.getInitializer();
            if (initializer != null && initializer.resolveConstantExpressionValue() == null) {
                var.setInitializer(null);

                AST ast = var.getAST();
                SimpleName newName = ast.newSimpleName(varName);
                Types.addBinding(newName, binding);
                Assignment assign = ast.newAssignment();
                assign.setLeftHandSide(newName);
                Expression newInit = NodeCopier.copySubtree(ast, initializer);
                assign.setRightHandSide(newInit);
                Types.addBinding(assign, typeBinding);

                Block initBlock = ast.newBlock();
                @SuppressWarnings("unchecked")
                List<Statement> stmts = initBlock.statements(); // safe by definition
                stmts.add(ast.newExpressionStatement(assign));
                Initializer staticInitializer = ast.newInitializer();
                staticInitializer.setBody(initBlock);
                @SuppressWarnings("unchecked")
                List<IExtendedModifier> initMods = staticInitializer.modifiers(); // safe by definition
                initMods.add(ast.newModifier(ModifierKeyword.STATIC_KEYWORD));
                classMembers.add(indexOfNewMember++, staticInitializer);
            }
        }
    }
    return true;
}

From source file:com.google.googlejavaformat.java.JavaInputAstVisitor.java

License:Apache License

/** Visitor method for {@link Initializer}s. */
@Override/*w w w .j  av  a 2  s .  c om*/
public boolean visit(Initializer node) {
    sync(node);
    visitAndBreakModifiers(node.modifiers(), Direction.VERTICAL, Optional.<BreakTag>absent());
    node.getBody().accept(this);
    builder.guessToken(";");
    return false;
}

From source file:edu.uci.ics.sourcerer.tools.java.extractor.eclipse.ReferenceExtractorVisitor.java

License:Open Source License

/**
 * This method writes://from   w  ww. ja v a 2s  . co m
 * <ul>
 *   <li>Initializer entity to <code>IEntityWriter</code>
 *   <ul>
 *     <li>Inside relation to <code>IRelationWriter</code></li>
 *   </ul></li>
 * </ul>
 * 
 * Enum constant fully qualified names (FQNs) adhere to the following format:<br> 
 * parent fqn + . + simple name
 */
@Override
public boolean visit(Initializer node) {
    // Get the fqn
    String fqn = fqnStack.peek(EnclosingDeclaredType.class).getInitializerFqn();

    String parentFqn = fqnStack.getFqn();

    // Visit the children
    fqnStack.push(fqn, Entity.INITIALIZER);
    accept(node.getJavadoc());
    accept(node.modifiers());
    accept(node.getBody());

    // Write the entity
    entityWriter.writeEntity(Entity.INITIALIZER, fqn, node.getModifiers(), createMetrics(node),
            createLocation(node));

    // Write the contains relation
    relationWriter.writeRelation(Relation.CONTAINS, parentFqn, fqn, createUnknownLocation());

    fqnStack.pop();

    return false;
}

From source file:org.codemucker.jmutate.ast.JAstFlattener.java

License:Open Source License

public boolean visit(Initializer node) {
    if (node.getJavadoc() != null) {
        node.getJavadoc().accept(this);
    }//from   w  w  w  . j a  va 2  s .c o  m
    if (node.getAST().apiLevel() == JLS2) {
        printModifiers(node.getModifiers());
    }
    if (node.getAST().apiLevel() >= JLS3) {
        printModifiers(node.modifiers());
    }
    node.getBody().accept(this);
    return false;
}

From source file:org.eclipse.xtend.core.javaconverter.JavaASTFlattener.java

License:Open Source License

@Override
public boolean visit(final Initializer it) {
    Javadoc _javadoc = it.getJavadoc();// w  w  w.  j  a v  a2s .  co  m
    boolean _tripleNotEquals = (_javadoc != null);
    if (_tripleNotEquals) {
        it.getJavadoc().accept(this);
    }
    this.appendModifiers(it, it.modifiers());
    boolean _isStatic = this._aSTFlattenerUtils.isStatic(it.modifiers());
    if (_isStatic) {
        if (((it.getParent() instanceof TypeDeclaration)
                && IterableExtensions.<FieldDeclaration>forall(IterableExtensions.<FieldDeclaration>filter(
                        ((Iterable<FieldDeclaration>) Conversions
                                .doWrapArray(((TypeDeclaration) it.getParent()).getFields())),
                        ((Function1<FieldDeclaration, Boolean>) (FieldDeclaration it_1) -> {
                            return Boolean.valueOf((this._aSTFlattenerUtils.isStatic(it_1.modifiers())
                                    && this._aSTFlattenerUtils.isFinal(it_1.modifiers())));
                        })), ((Function1<FieldDeclaration, Boolean>) (FieldDeclaration f) -> {
                            final Function1<VariableDeclarationFragment, Boolean> _function = (
                                    VariableDeclarationFragment fragment) -> {
                                Boolean _isAssignedInBody = this._aSTFlattenerUtils
                                        .isAssignedInBody(it.getBody(), fragment);
                                return Boolean.valueOf((!(_isAssignedInBody).booleanValue()));
                            };
                            return Boolean.valueOf(IterableExtensions
                                    .<VariableDeclarationFragment>forall(f.fragments(), _function));
                        })))) {
            this.appendToBuffer(" final Void static_initializer = {");
            this.appendLineWrapToBuffer();
            it.getBody().accept(this);
            this.appendToBuffer("null }");
            this.appendLineWrapToBuffer();
        } else {
            this.addProblem(it, "Static initializer is not fully supported");
            this.appendToBuffer("{/*FIXME ");
            it.getBody().accept(this);
            this.appendToBuffer("*/}");
        }
    } else {
        ASTNode _parent = it.getParent();
        if ((_parent instanceof AnonymousClassDeclaration)) {
            StringConcatenation _builder = new StringConcatenation();
            _builder.append("Initializer is not supported in ");
            String _simpleName = ASTNode.nodeClassForType(it.getParent().getNodeType()).getSimpleName();
            _builder.append(_simpleName);
            this.addProblem(it, _builder.toString());
        }
        it.getBody().accept(this);
    }
    return false;
}

From source file:org.whole.lang.java.util.JDTTransformerVisitor.java

License:Open Source License

@Override
public boolean visit(Initializer node) {
    org.whole.lang.java.model.Initializer initializer;
    appendBodyDeclaration(initializer = lf.create(JavaEntityDescriptorEnum.Initializer));

    if (acceptChild(node.getJavadoc()))
        initializer.setJavadoc(this.javadoc);

    List<?> modifiers = node.modifiers();
    if (!modifiers.isEmpty()) {
        initializer.setModifiers(lf.create(JavaEntityDescriptorEnum.ExtendedModifiers));
        setExtendedModifiers(initializer.getModifiers(), modifiers);
    }//  w  w  w  .j  ava2 s  .c  o  m

    acceptChild(node.getBody());
    initializer.setBody((org.whole.lang.java.model.Block) stm);

    return false;
}

From source file:ptolemy.backtrack.eclipse.ast.ASTFormatter.java

License:Open Source License

/** Visit an ast node, and return whether its children should be further
 *  visited./*from  w w w  .j ava2  s . c o  m*/
 *
 *  @param node The AST node.
 *  @return Whether its children should be further visited.
 */
public boolean visit(Initializer node) {
    if (node.getJavadoc() != null) {
        node.getJavadoc().accept(this);
    }

    _outputModifiers(node.modifiers());

    _output(_indent);
    node.getBody().accept(this);
    _output("\n");
    return false;
}