public VariableTreeImpl newFormalParameter(ModifiersTreeImpl modifiers, TypeTree type, VariableTreeImpl variable) { variable.prependChildren(modifiers, (AstNode) type); return variable.completeType(type); }
public VariableTreeImpl newCatchFormalParameter(Optional<ModifiersTreeImpl> modifiers, TypeTree type, VariableTreeImpl parameter) { // TODO modifiers if (modifiers.isPresent()) { parameter.prependChildren(modifiers.get(), (AstNode) type); } else { parameter.prependChildren((AstNode) type); } return parameter.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 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); } }