NodeWithTypeParameters.java revision 9ae1febaec3c5e23af34be61334b3ee54d359eef
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage com.github.javaparser.ast.nodeTypes;
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.github.javaparser.ast.Node;
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.github.javaparser.ast.NodeList;
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.github.javaparser.ast.type.TypeParameter;
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * A node that can have type parameters.
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * <pre>
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *     class X {}        --> typeParameters == []
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *     class X&lt;> {}      --> does not occur.
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *     class X&lt;C,D> {}   --> typeParameters = [C,D]
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * </pre>
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic interface NodeWithTypeParameters<T extends Node> {
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    NodeList<TypeParameter> getTypeParameters();
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    T setTypeParameters(NodeList<TypeParameter> typeParameters);
19a48a1a87ba17f20f7006eaab21dcedf86c015c13Romain Guy
20a48a1a87ba17f20f7006eaab21dcedf86c015c13Romain Guy    default boolean isGeneric() {
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return getTypeParameters().size() > 0;
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project