public ClassTreeImpl completeAnnotationType(InternalSyntaxToken atToken, InternalSyntaxToken interfaceToken, InternalSyntaxToken identifier, ClassTreeImpl partial) { return partial.complete( atToken, interfaceToken, new IdentifierTreeImpl(identifier)); }
public ClassTreeImpl complete(InternalSyntaxToken atToken, InternalSyntaxToken interfaceToken, IdentifierTree simpleName) { Preconditions.checkState(this.simpleName == null); completeIdentifier(simpleName); this.atToken = atToken; completeDeclarationKeyword(interfaceToken); return this; }
public ClassTreeImpl newTypeDeclaration(ModifiersTreeImpl modifiers, ClassTreeImpl partial) { return partial.completeModifiers(modifiers); }
public ClassTreeImpl newTypeDeclaration(ModifiersTreeImpl modifiers, ClassTreeImpl partial) { partial.prependChildren(modifiers); return partial.completeModifiers(modifiers); }
public ClassTreeImpl completeInterfaceDeclaration( InternalSyntaxToken interfaceToken, InternalSyntaxToken identifierToken, Optional<TypeParameterListTreeImpl> typeParameters, Optional<Tuple<InternalSyntaxToken, QualifiedIdentifierListTreeImpl>> extendsClause, ClassTreeImpl partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); partial.completeDeclarationKeyword(interfaceToken); partial.completeIdentifier(identifier); if (typeParameters.isPresent()) { partial.completeTypeParameters(typeParameters.get()); } if (extendsClause.isPresent()) { InternalSyntaxToken extendsKeyword = extendsClause.get().first(); QualifiedIdentifierListTreeImpl interfaces = extendsClause.get().second(); partial.completeInterfaces(extendsKeyword, interfaces); } return partial; }
public ClassTreeImpl completeInterfaceDeclaration( AstNode interfaceTokenAstNode, AstNode identifierAstNode, Optional<TypeParameterListTreeImpl> typeParameters, Optional<Tuple<AstNode, QualifiedIdentifierListTreeImpl>> extendsClause, ClassTreeImpl partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(InternalSyntaxToken.create(identifierAstNode)); List<AstNode> children = Lists.newArrayList(); children.add(interfaceTokenAstNode); children.add(identifier); partial.completeIdentifier(identifier); if (typeParameters.isPresent()) { children.add(typeParameters.get()); partial.completeTypeParameters(typeParameters.get()); } if (extendsClause.isPresent()) { children.add(extendsClause.get().first()); children.add(extendsClause.get().second()); partial.completeInterfaces(extendsClause.get().second()); } partial.prependChildren(children); return partial; }
result.completeDeclarationKeyword(enumToken); result.completeIdentifier(identifier); result.completeInterfaces(implementsKeyword, interfaces);
result.completeIdentifier(identifier); children.add(identifier); children.add(implementsClause.get().second()); result.completeInterfaces(implementsClause.get().second()); result.prependChildren(children);
private static ClassTreeImpl newClassBody(Kind kind, InternalSyntaxToken openBraceSyntaxToken, Optional<List<JavaTree>> members, InternalSyntaxToken closeBraceTokenSyntaxToken) { ImmutableList.Builder<Tree> builder = ImmutableList.builder(); if (members.isPresent()) { for (JavaTree member : members.get()) { if (member instanceof VariableDeclaratorListTreeImpl) { for (VariableTreeImpl variable : (VariableDeclaratorListTreeImpl) member) { builder.add(variable); } } else { builder.add(member); } } } return new ClassTreeImpl(kind, openBraceSyntaxToken, builder.build(), closeBraceTokenSyntaxToken); }
((ClassTreeImpl) tree).setSymbol(symbol);
@Nullable private SyntaxToken getBrace(JavaPunctuator leftOrRightBrace) { if (is(Kind.ANNOTATION_TYPE)) { return new InternalSyntaxToken(getAstNode().getFirstChild(leftOrRightBrace).getToken()); } else if (getAstNode().is(Kind.CLASS, Kind.ENUM, Kind.INTERFACE)) { return new InternalSyntaxToken(getAstNode().getFirstChild(leftOrRightBrace).getToken()); } return new InternalSyntaxToken(getAstNode().getFirstChild(JavaLexer.CLASS_BODY, JavaLexer.INTERFACE_BODY, JavaLexer.ENUM_BODY) .getFirstChild(leftOrRightBrace).getToken()); }
public ClassTreeImpl completeInterfaces(SyntaxToken keyword, QualifiedIdentifierListTreeImpl interfaces) { if (is(Kind.INTERFACE)) { extendsKeyword = keyword; } else { implementsKeyword = keyword; } this.superInterfaces = interfaces; return this; }
@Override public Iterable<Tree> children() { return Iterables.concat( Collections.singletonList(modifiers), addIfNotNull(atToken), addIfNotNull(declarationKeyword), addIfNotNull(simpleName), Collections.singletonList(typeParameters), addIfNotNull(extendsKeyword), addIfNotNull(superClass), addIfNotNull(implementsKeyword), Collections.singletonList(superInterfaces), addIfNotNull(openBraceToken), members, addIfNotNull(closeBraceToken) ); }
public ClassTreeImpl completeInterfaceDeclaration( InternalSyntaxToken interfaceToken, InternalSyntaxToken identifierToken, Optional<TypeParameterListTreeImpl> typeParameters, Optional<Tuple<InternalSyntaxToken, QualifiedIdentifierListTreeImpl>> extendsClause, ClassTreeImpl partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); partial.completeDeclarationKeyword(interfaceToken); partial.completeIdentifier(identifier); if (typeParameters.isPresent()) { partial.completeTypeParameters(typeParameters.get()); } if (extendsClause.isPresent()) { InternalSyntaxToken extendsKeyword = extendsClause.get().first(); QualifiedIdentifierListTreeImpl interfaces = extendsClause.get().second(); partial.completeInterfaces(extendsKeyword, interfaces); } return partial; }
public ClassTreeImpl completeClassDeclaration( AstNode classTokenAstNode, AstNode identifierAstNode, Optional<TypeParameterListTreeImpl> typeParameters, Optional<Tuple<AstNode, TypeTree>> extendsClause, Optional<Tuple<AstNode, QualifiedIdentifierListTreeImpl>> implementsClause, ClassTreeImpl partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(InternalSyntaxToken.create(identifierAstNode)); List<AstNode> children = Lists.newArrayList(); children.add(classTokenAstNode); children.add(identifier); partial.completeIdentifier(identifier); if (typeParameters.isPresent()) { children.add(typeParameters.get()); partial.completeTypeParameters(typeParameters.get()); } if (extendsClause.isPresent()) { children.add(extendsClause.get().first()); children.add((AstNode) extendsClause.get().second()); partial.completeSuperclass(extendsClause.get().second()); } if (implementsClause.isPresent()) { children.add(implementsClause.get().first()); children.add(implementsClause.get().second()); partial.completeInterfaces(implementsClause.get().second()); } partial.prependChildren(children); return partial; }
result.completeDeclarationKeyword(enumToken); result.completeIdentifier(identifier); result.completeInterfaces(implementsKeyword, interfaces);
private static ClassTreeImpl newClassBody(Kind kind, InternalSyntaxToken openBraceSyntaxToken, Optional<List<JavaTree>> members, InternalSyntaxToken closeBraceTokenSyntaxToken) { ImmutableList.Builder<Tree> builder = ImmutableList.builder(); if (members.isPresent()) { for (JavaTree member : members.get()) { if (member instanceof VariableDeclaratorListTreeImpl) { for (VariableTreeImpl variable : (VariableDeclaratorListTreeImpl) member) { builder.add(variable); } } else { builder.add(member); } } } return new ClassTreeImpl(kind, openBraceSyntaxToken, builder.build(), closeBraceTokenSyntaxToken); }
((ClassTreeImpl) tree).setSymbol(symbol);
public BlockStatementListTreeImpl newInnerClassOrEnum(ModifiersTreeImpl modifiers, ClassTreeImpl classTree) { classTree.prependChildren(modifiers); classTree.completeModifiers(modifiers); return new BlockStatementListTreeImpl(ImmutableList.<StatementTree>of(classTree), ImmutableList.<AstNode>of(classTree)); }
public ClassTreeImpl completeInterfaces(SyntaxToken keyword, QualifiedIdentifierListTreeImpl interfaces) { if (is(Kind.INTERFACE)) { extendsKeyword = keyword; } else { implementsKeyword = keyword; } this.superInterfaces = interfaces; return this; }