public static String packageNameAsString(@Nullable PackageDeclarationTree tree) { if (tree == null) { return ""; } Deque<String> pieces = new LinkedList<>(); ExpressionTree expr = tree.packageName(); while (expr.is(Tree.Kind.MEMBER_SELECT)) { MemberSelectExpressionTree mse = (MemberSelectExpressionTree) expr; pieces.push(mse.identifier().name()); pieces.push(mse.operatorToken().text()); expr = mse.expression(); } if (expr.is(Tree.Kind.IDENTIFIER)) { IdentifierTree idt = (IdentifierTree) expr; pieces.push(idt.name()); } StringBuilder sb = new StringBuilder(); for (String piece : pieces) { sb.append(piece); } return sb.toString(); } }
public static String packageNameAsString(@Nullable PackageDeclarationTree tree) { if (tree == null) { return ""; } Deque<String> pieces = new LinkedList<>(); ExpressionTree expr = tree.packageName(); while (expr.is(Tree.Kind.MEMBER_SELECT)) { MemberSelectExpressionTree mse = (MemberSelectExpressionTree) expr; pieces.push(mse.identifier().name()); pieces.push(mse.operatorToken().text()); expr = mse.expression(); } if (expr.is(Tree.Kind.IDENTIFIER)) { IdentifierTree idt = (IdentifierTree) expr; pieces.push(idt.name()); } StringBuilder sb = new StringBuilder(); for (String piece : pieces) { sb.append(piece); } return sb.toString(); } }
public static String packageNameAsString(@Nullable PackageDeclarationTree tree) { if (tree == null) { return ""; } Deque<String> pieces = new LinkedList<>(); ExpressionTree expr = tree.packageName(); while (expr.is(Tree.Kind.MEMBER_SELECT)) { MemberSelectExpressionTree mse = (MemberSelectExpressionTree) expr; pieces.push(mse.identifier().name()); pieces.push(mse.operatorToken().text()); expr = mse.expression(); } if (expr.is(Tree.Kind.IDENTIFIER)) { IdentifierTree idt = (IdentifierTree) expr; pieces.push(idt.name()); } StringBuilder sb = new StringBuilder(); for (String piece : pieces) { sb.append(piece); } return sb.toString(); } }