@Override @Nonnull public NewClassTree initializer() { return (NewClassTree) super.initializer(); }
public VariableTreeImpl newVariableDeclarator(InternalSyntaxToken equalToken, ExpressionTree initializer) { return new VariableTreeImpl(equalToken, initializer); }
public VariableTreeImpl completeModifiersAndType(ModifiersTreeImpl modifiers, TypeTree type) { return completeModifiers(modifiers). completeType(type); }
public VariableTreeImpl newResource(ModifiersTreeImpl modifiers, TypeTree classType, VariableTreeImpl partial, AstNode equalTokenAstNode, ExpressionTree expression) { // TODO modifiers partial.prependChildren(modifiers, (AstNode) classType); partial.addChild(equalTokenAstNode); partial.addChild((AstNode) expression); return partial.completeTypeAndInitializer(classType, expression); }
public VariableTreeImpl newFormalParameter(ModifiersTreeImpl modifiers, TypeTree type, VariableTreeImpl variable) { variable.prependChildren(modifiers, (AstNode) type); return variable.completeType(type); }
@Override public void visitNode(Tree tree) { if (hasSemantic()) { if (tree.is(Tree.Kind.VARIABLE)) { VariableTreeImpl variableTree = (VariableTreeImpl) tree; Type variableType = variableTree.type().symbolType(); PrimitiveCheck primitiveCheck = getPrimitiveCheck(variableType); ExpressionTree initializer = variableTree.initializer(); if (primitiveCheck != null && initializer != null) { primitiveCheck.checkInstantiation(initializer); } } else { MethodInvocationTree methodInvocationTree = (MethodInvocationTree) tree; for (PrimitiveCheck primitiveCheck : primitiveChecks) { primitiveCheck.checkMethodInvocation(methodInvocationTree); } } } }
public Tree newResource(ModifiersTreeImpl modifiers, TypeTree classType, VariableTreeImpl partial, InternalSyntaxToken equalToken, ExpressionTree expression) { if (!modifiers.isEmpty()) { partial.completeModifiers(modifiers); } return partial.completeTypeAndInitializer(classType, equalToken, expression); }
public VariableTreeImpl completeVariableDeclarator(InternalSyntaxToken identifierToken, Optional<List<Tuple<Optional<List<AnnotationTreeImpl>>, Tuple<InternalSyntaxToken, InternalSyntaxToken>>>> dimensions, Optional<VariableTreeImpl> partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); ArrayTypeTreeImpl nestedDimensions = newArrayTypeTreeWithAnnotations(dimensions); if (partial.isPresent()) { return partial.get().completeIdentifierAndDims(identifier, nestedDimensions); } else { return new VariableTreeImpl(identifier, nestedDimensions); } }
private boolean hasObjectParameter() { return parameters.size()==1 && parameters.get(0).type().symbolType().is("java.lang.Object"); }
@Override public void visitVariable(VariableTree tree) { scan(tree.modifiers()); completeMetadata(((VariableTreeImpl) tree).getSymbol(), tree.modifiers().annotations()); //skip type, it has been resolved in second pass if (tree.initializer() != null) { resolveAs(tree.initializer(), JavaSymbol.VAR); } }
public FormalParametersListTreeImpl completeTypeFormalParameters(ModifiersTreeImpl modifiers, TypeTree type, FormalParametersListTreeImpl partial) { VariableTreeImpl variable = partial.get(0); variable.completeModifiersAndType(modifiers, type); return partial; }
public VariableDeclaratorListTreeImpl completeFieldDeclaration(TypeTree type, VariableDeclaratorListTreeImpl partial, InternalSyntaxToken semicolonToken) { for (VariableTreeImpl variable : partial) { variable.completeType(type); } // store the semicolon as endToken for the last variable partial.get(partial.size() - 1).setEndToken(semicolonToken); return partial; }
public VariableDeclaratorListTreeImpl completeLocalVariableDeclaration( ModifiersTreeImpl modifiers, TypeTree type, VariableDeclaratorListTreeImpl variables, InternalSyntaxToken semicolonSyntaxToken) { for (VariableTreeImpl variable : variables) { variable.completeModifiersAndType(modifiers, type); } // store the semicolon as endToken for the last variable variables.get(variables.size() - 1).setEndToken(semicolonSyntaxToken); return variables; }
public JavaTree completeMember(ModifiersTreeImpl modifiers, JavaTree partial) { if (partial instanceof ClassTreeImpl) { ((ClassTreeImpl) partial).completeModifiers(modifiers); } else if (partial instanceof VariableDeclaratorListTreeImpl) { for (VariableTreeImpl variable : (VariableDeclaratorListTreeImpl) partial) { variable.completeModifiers(modifiers); } } else if (partial instanceof MethodTreeImpl) { ((MethodTreeImpl) partial).completeWithModifiers(modifiers); } else { throw new IllegalArgumentException(); } return partial; }
public VariableTreeImpl completeVariableDeclarator(AstNode identifierAstNode, Optional<List<Tuple<AstNode, AstNode>>> dimensions, Optional<VariableTreeImpl> partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(InternalSyntaxToken.create(identifierAstNode)); List<AstNode> children = Lists.newArrayList(); if (dimensions.isPresent()) { for (Tuple<AstNode, AstNode> dimension : dimensions.get()) { children.add(dimension.first()); children.add(dimension.second()); } } if (partial.isPresent()) { children.add(0, identifier); partial.get().prependChildren(children); return partial.get().completeIdentifierAndDims(identifier, dimensions.isPresent() ? dimensions.get().size() : 0); } else { return new VariableTreeImpl( identifier, dimensions.isPresent() ? dimensions.get().size() : 0, children); } }
public VariableTreeImpl completeTypeAndInitializer(TypeTree type, InternalSyntaxToken equalToken, ExpressionTree initializer) { this.initializer = initializer; this.equalToken = equalToken; return completeType(type); }
argTypes.add(param.getType()); if(((VariableTreeImpl)variableTree).isVararg()) { symbol.flags |= Flags.VARARGS;
@Override public void visitNode(Tree tree) { if (hasSemantic()) { if (tree.is(Tree.Kind.VARIABLE)) { VariableTreeImpl variableTree = (VariableTreeImpl) tree; Type variableType = variableTree.type().symbolType(); PrimitiveCheck primitiveCheck = getPrimitiveCheck(variableType); ExpressionTree initializer = variableTree.initializer(); if (primitiveCheck != null && initializer != null) { primitiveCheck.checkInstantiation(initializer); } } else { MethodInvocationTree methodInvocationTree = (MethodInvocationTree) tree; for (PrimitiveCheck primitiveCheck : primitiveChecks) { primitiveCheck.checkMethodInvocation(methodInvocationTree); } } } }
public VariableTreeImpl newResource(ModifiersTreeImpl modifiers, TypeTree classType, VariableTreeImpl partial, InternalSyntaxToken equalToken, ExpressionTree expression) { if (!modifiers.isEmpty()) { partial.completeModifiers(modifiers); } return partial.completeTypeAndInitializer(classType, equalToken, expression); }