public VariableTreeImpl receiverParameterId(Optional<List<Tuple<InternalSyntaxToken, InternalSyntaxToken>>> optional, InternalSyntaxToken thisToken) { if(optional.isPresent()) { // FIXME qualified id of outer class for receiver type. } return new VariableTreeImpl(new IdentifierTreeImpl(thisToken), null); }
public ClassTreeImpl completeAnnotationType(InternalSyntaxToken atToken, InternalSyntaxToken interfaceToken, InternalSyntaxToken identifier, ClassTreeImpl partial) { return partial.complete( atToken, interfaceToken, new IdentifierTreeImpl(identifier)); }
public AssignmentExpressionTreeImpl newElementValuePair(InternalSyntaxToken identifierToken, InternalSyntaxToken operator, ExpressionTree elementValue) { return new AssignmentExpressionTreeImpl( kindMaps.getAssignmentOperator((JavaPunctuator) operator.getGrammarRuleKey()), new IdentifierTreeImpl(identifierToken), operator, elementValue); }
public ModuleNameTree newModuleName(InternalSyntaxToken firstIdentifier, Optional<List<Tuple<InternalSyntaxToken, InternalSyntaxToken>>> rest) { List<IdentifierTree> identifiers = new ArrayList<>(); List<SyntaxToken> separators = new ArrayList<>(); identifiers.add(new IdentifierTreeImpl(firstIdentifier)); if (rest.isPresent()) { for (Tuple<InternalSyntaxToken, InternalSyntaxToken> modulePart : rest.get()) { separators.add(modulePart.first()); identifiers.add(new IdentifierTreeImpl(modulePart.second())); } } return new ModuleNameTreeImpl(Collections.unmodifiableList(identifiers), Collections.unmodifiableList(separators)); }
public VariableTreeImpl newVariableDeclaratorId(InternalSyntaxToken identifierToken, Optional<List<Tuple<Optional<List<AnnotationTreeImpl>>, Tuple<InternalSyntaxToken, InternalSyntaxToken>>>> dims) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); ArrayTypeTreeImpl nestedDimensions = newArrayTypeTreeWithAnnotations(dims); return new VariableTreeImpl(identifier, nestedDimensions); }
public ExpressionTree newDotClassSelector(Optional<List<Tuple<InternalSyntaxToken, InternalSyntaxToken>>> dimensions, InternalSyntaxToken dotToken, InternalSyntaxToken classToken) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(classToken); ArrayTypeTreeImpl nestedDimensions = newArrayTypeTree(dimensions); return new MemberSelectExpressionTreeImpl(nestedDimensions, dotToken, identifier); }
public ExpressionTree newDotClassSelector(Optional<List<Tuple<InternalSyntaxToken, InternalSyntaxToken>>> dimensions, InternalSyntaxToken dotToken, InternalSyntaxToken classToken) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(classToken); ArrayTypeTreeImpl nestedDimensions = newArrayTypeTree(dimensions); return new MemberSelectExpressionTreeImpl(nestedDimensions, dotToken, identifier); }
public BreakStatementTreeImpl breakStatement(InternalSyntaxToken breakToken, Optional<InternalSyntaxToken> identifierToken, InternalSyntaxToken semicolonSyntaxToken) { IdentifierTreeImpl identifier = null; if (identifierToken.isPresent()) { identifier = new IdentifierTreeImpl(identifierToken.get()); } return new BreakStatementTreeImpl(breakToken, identifier, semicolonSyntaxToken); }
public ContinueStatementTreeImpl continueStatement(InternalSyntaxToken continueToken, Optional<InternalSyntaxToken> identifierToken, InternalSyntaxToken semicolonToken) { IdentifierTreeImpl identifier = null; if (identifierToken.isPresent()) { identifier = new IdentifierTreeImpl(identifierToken.get()); } return new ContinueStatementTreeImpl(continueToken, identifier, semicolonToken); }
public ExpressionTree newAnnotatedParameterizedIdentifier( Optional<List<AnnotationTreeImpl>> annotations, InternalSyntaxToken identifierToken, Optional<TypeArgumentListTreeImpl> typeArguments) { List<AnnotationTree> annotationList = ImmutableList.copyOf(annotations.or(ImmutableList.of())); ExpressionTree result = new IdentifierTreeImpl(identifierToken); if (typeArguments.isPresent()) { result = new ParameterizedTypeTreeImpl((TypeTree) result, typeArguments.get()); } ((JavaTree.AnnotatedTypeTree) result).complete(annotationList); return result; }
public ExpressionTree basicClassExpression(PrimitiveTypeTreeImpl basicType, Optional<List<Tuple<InternalSyntaxToken, InternalSyntaxToken>>> dimensions, InternalSyntaxToken dotToken, InternalSyntaxToken classToken) { // 15.8.2. Class Literals // int.class // int[].class IdentifierTreeImpl classIdentifier = new IdentifierTreeImpl(classToken); ArrayTypeTreeImpl nestedDimensions = newArrayTypeTree(dimensions); TypeTree typeTree = applyDim(basicType, nestedDimensions); return new MemberSelectExpressionTreeImpl((ExpressionTree) typeTree, dotToken, classIdentifier); }
public BreakStatementTreeImpl breakStatement(InternalSyntaxToken breakToken, Optional<InternalSyntaxToken> identifierToken, InternalSyntaxToken semicolonSyntaxToken) { IdentifierTreeImpl identifier = null; if (identifierToken.isPresent()) { identifier = new IdentifierTreeImpl(identifierToken.get()); } return new BreakStatementTreeImpl(breakToken, identifier, semicolonSyntaxToken); }
public ExpressionTree newAnnotatedParameterizedIdentifier( Optional<List<AnnotationTreeImpl>> annotations, InternalSyntaxToken identifierToken, Optional<TypeArgumentListTreeImpl> typeArguments) { List<AnnotationTree> annotationList = ImmutableList.copyOf(annotations.or(ImmutableList.of())); ExpressionTree result = new IdentifierTreeImpl(identifierToken); if (typeArguments.isPresent()) { result = new ParameterizedTypeTreeImpl((TypeTree) result, typeArguments.get()); } ((JavaTree.AnnotatedTypeTree) result).complete(annotationList); return result; }
public AstNode completeAnnotationMethod(TypeTree type, AstNode identifierAstNode, MethodTreeImpl partial, AstNode semiTokenAstNode) { partial.complete(type, new IdentifierTreeImpl(InternalSyntaxToken.create(identifierAstNode))); partial.addChild(semiTokenAstNode); return partial; }
public ExpressionTree newIdentifierOrMethodInvocation(Optional<TypeArgumentListTreeImpl> typeArguments, InternalSyntaxToken identifierToken, Optional<ArgumentListTreeImpl> arguments) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); ExpressionTree result = identifier; if (arguments.isPresent()) { result = new MethodInvocationTreeImpl(identifier, typeArguments.orNull(), arguments.get()); } return result; }
public ClassTreeImpl completeAnnotationType(AstNode atTokenAstNode, AstNode interfaceTokenAstNode, AstNode identifier, ClassTreeImpl partial) { return partial.complete( InternalSyntaxToken.create(atTokenAstNode), InternalSyntaxToken.create(interfaceTokenAstNode), new IdentifierTreeImpl(InternalSyntaxToken.create(identifier))); }
public EnumConstantTreeImpl newEnumConstant( Optional<List<AnnotationTreeImpl>> annotations, InternalSyntaxToken identifierToken, Optional<ArgumentListTreeImpl> arguments, Optional<ClassTreeImpl> classBody, Optional<InternalSyntaxToken> commaToken) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); ArgumentListTreeImpl defaultArguments = new ArgumentListTreeImpl(ImmutableList.<ExpressionTree>of(), ImmutableList.<SyntaxToken>of()); NewClassTreeImpl newClass = new NewClassTreeImpl(arguments.or(defaultArguments), classBody.orNull()); newClass.completeWithIdentifier(identifier); return new EnumConstantTreeImpl(modifiers((Optional<List<ModifierTree>>) (Optional<?>) annotations), identifier, newClass, commaToken.orNull()); }
public TypeParameterTreeImpl completeTypeParameter(Optional<List<AnnotationTreeImpl>> annotations, InternalSyntaxToken identifierToken, Optional<TypeParameterTreeImpl> partial) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(identifierToken); completeTypeTreeWithAnnotations(identifier, annotations); return partial.isPresent() ? partial.get().complete(identifier) : new TypeParameterTreeImpl(identifier); }
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); } }
public ImportTreeImpl newImportDeclaration(InternalSyntaxToken importToken, Optional<InternalSyntaxToken> staticToken, ExpressionTree qualifiedIdentifier, Optional<Tuple<InternalSyntaxToken, InternalSyntaxToken>> dotStar, InternalSyntaxToken semicolonToken) { ExpressionTree target = qualifiedIdentifier; if (dotStar.isPresent()) { IdentifierTreeImpl identifier = new IdentifierTreeImpl(dotStar.get().second()); InternalSyntaxToken dotToken = dotStar.get().first(); target = new MemberSelectExpressionTreeImpl(qualifiedIdentifier, dotToken, identifier); } InternalSyntaxToken staticKeyword = staticToken.orNull(); return new ImportTreeImpl(importToken, staticKeyword, target, semicolonToken); }