Search in sources :

Example 1 with ArrayBracketPair

use of com.github.javaparser.ast.ArrayBracketPair in project javaparser by javaparser.

the class ArrayType method unwrapArrayTypes.

/**
 * Takes a type that may be an ArrayType. Unwraps ArrayTypes until the element type is found.
 *
 * @return a pair of the element type, and the unwrapped ArrayTypes, if any.
 */
public static Pair<Type, List<ArrayBracketPair>> unwrapArrayTypes(Type type) {
    final List<ArrayBracketPair> arrayBracketPairs = new ArrayList<>();
    while (type instanceof ArrayType) {
        ArrayType arrayType = (ArrayType) type;
        arrayBracketPairs.add(new ArrayBracketPair(Range.UNKNOWN, arrayType.getAnnotations()));
        type = arrayType.getComponentType();
    }
    return new Pair<>(type, arrayBracketPairs);
}
Also used : ArrayBracketPair(com.github.javaparser.ast.ArrayBracketPair) ArrayList(java.util.ArrayList) ArrayBracketPair(com.github.javaparser.ast.ArrayBracketPair) Pair(com.github.javaparser.utils.Pair)

Aggregations

ArrayBracketPair (com.github.javaparser.ast.ArrayBracketPair)1 Pair (com.github.javaparser.utils.Pair)1 ArrayList (java.util.ArrayList)1