Interface ElementUtils
-
-
Method Summary
Static Methods Modifier and Type Method Description static <E extends javax.lang.model.element.Element>
java.util.List<E>filterElements(java.util.List<E> elements, java.util.function.Predicate<? super E>... elementPredicates)static booleanhasModifiers(javax.lang.model.element.Element member, javax.lang.model.element.Modifier... modifiers)static booleanisClass(javax.lang.model.element.ElementKind kind)Returnstrueif this is a kind of class: eitherCLASSorENUMorRECORD.static booleanisDeclaredType(javax.lang.model.element.ElementKind kind){@return {@code true} if this is a kind of declared type, a {@linkplain ElementKind#isClass() class} or an {@linkplain ElementKind#isInterface() interface}, and {@code false} otherwise}static booleanisExecutable(javax.lang.model.element.ElementKind kind)Returnstrueif this is a kind of executable: eitherMETHODorCONSTRUCTORorSTATIC_INITorINSTANCE_INIT.static booleanisField(javax.lang.model.element.ElementKind kind)Returnstrueif this is a kind of field: eitherFIELDorENUM_CONSTANT.static booleanisInitializer(javax.lang.model.element.ElementKind kind)Returnstrueif this is a kind of initializer: eitherSTATIC_INITorINSTANCE_INIT.static booleanisInterface(javax.lang.model.element.ElementKind kind)Returnstrueif this is a kind of interface: eitherINTERFACEorANNOTATION_TYPE.static booleanisMember(javax.lang.model.element.ElementKind kind){@return {@code true} if this is a kind of {@linkplain ElementKind#isField() field} or {@linkplain ElementKind#isExecutable() executable}, and {@code false} otherwise}static booleanisPublicNonStatic(javax.lang.model.element.Element member)static booleanisVariable(javax.lang.model.element.ElementKind kind)Returnstrueif this is a kind of variable: includingENUM_CONSTANT,FIELD,PARAMETER,LOCAL_VARIABLE,EXCEPTION_PARAMETER,RESOURCE_VARIABLE, andBINDING_VARIABLE.static booleanmatchesElementKind(javax.lang.model.element.Element member, javax.lang.model.element.ElementKind kind)static booleanmatchesElementType(javax.lang.model.element.ElementKind elementKind, java.lang.annotation.ElementType elementType)Checks whether the specifiedElementKindmatches the specifiedElementType.static booleanmatchesElementType(javax.lang.model.element.ElementKind elementKind, java.lang.annotation.ElementType... elementTypes)Checks whether the specifiedElementKindmatches any of the specifiedElementTypes.static booleanmatchesElementType(javax.lang.model.element.Element element, java.lang.annotation.ElementType... elementTypes)Checks whether the specifiedElementmatches the specifiedElementType.static booleanmatchParameterTypeNames(java.util.List<? extends javax.lang.model.element.VariableElement> parameters, java.lang.CharSequence... parameterTypeNames)static booleanmatchParameterTypes(java.util.List<? extends javax.lang.model.element.VariableElement> parameters, java.lang.reflect.Type... parameterTypes)static booleanmatchParameterTypes(javax.lang.model.element.ExecutableElement executableElement, java.lang.reflect.Type... parameterTypes)static javax.lang.model.element.ElementKindtoElementKind(java.lang.annotation.ElementType elementType)Converts the specifiedElementTypeto an equivalentElementKind.
-
-
-
Method Detail
-
isClass
static boolean isClass(javax.lang.model.element.ElementKind kind)
Returnstrueif this is a kind of class: eitherCLASSorENUMorRECORD.- Returns:
trueif this is a kind of class- See Also:
ElementKind.isClass()
-
isInterface
static boolean isInterface(javax.lang.model.element.ElementKind kind)
Returnstrueif this is a kind of interface: eitherINTERFACEorANNOTATION_TYPE.- Parameters:
kind-ElementKind- Returns:
trueif this is a kind of interface
-
isDeclaredType
static boolean isDeclaredType(javax.lang.model.element.ElementKind kind)
{@return {@code true} if this is a kind of declared type, a {@linkplain ElementKind#isClass() class} or an {@linkplain ElementKind#isInterface() interface}, and {@code false} otherwise}- Parameters:
kind-ElementKind- See Also:
ElementKind#isDeclaredType()
-
isField
static boolean isField(javax.lang.model.element.ElementKind kind)
Returnstrueif this is a kind of field: eitherFIELDorENUM_CONSTANT.- Parameters:
kind-ElementKind- Returns:
trueif this is a kind of field- See Also:
ElementKind.isField()
-
isExecutable
static boolean isExecutable(javax.lang.model.element.ElementKind kind)
Returnstrueif this is a kind of executable: eitherMETHODorCONSTRUCTORorSTATIC_INITorINSTANCE_INIT.- Parameters:
kind-ElementKind- Returns:
trueif this is a kind of executable- See Also:
ElementKind#isExecutable()
-
isMember
static boolean isMember(javax.lang.model.element.ElementKind kind)
{@return {@code true} if this is a kind of {@linkplain ElementKind#isField() field} or {@linkplain ElementKind#isExecutable() executable}, and {@code false} otherwise}- Parameters:
kind-ElementKindkind-- Returns:
- See Also:
ElementKind#isDeclaredType()
-
isInitializer
static boolean isInitializer(javax.lang.model.element.ElementKind kind)
Returnstrueif this is a kind of initializer: eitherSTATIC_INITorINSTANCE_INIT.- Parameters:
kind-ElementKind- Returns:
trueif this is a kind of initializer- See Also:
ElementKind#isInitializer()
-
isVariable
static boolean isVariable(javax.lang.model.element.ElementKind kind)
Returnstrueif this is a kind of variable: includingENUM_CONSTANT,FIELD,PARAMETER,LOCAL_VARIABLE,EXCEPTION_PARAMETER,RESOURCE_VARIABLE, andBINDING_VARIABLE.- Parameters:
kind-ElementKind- Returns:
trueif this is a kind of variable- See Also:
ElementKind#isVariable()
-
toElementKind
static javax.lang.model.element.ElementKind toElementKind(java.lang.annotation.ElementType elementType)
Converts the specifiedElementTypeto an equivalentElementKind.If the provided
elementTypeisnull, this method returnsElementKind.OTHER.- Parameters:
elementType- the ElementType to convert, may benull- Returns:
- the corresponding ElementKind, never
null
-
matchesElementType
static boolean matchesElementType(javax.lang.model.element.ElementKind elementKind, java.lang.annotation.ElementType elementType)Checks whether the specifiedElementKindmatches the specifiedElementType.- Parameters:
elementKind- the ElementKind to checkelementType- the ElementType to check- Returns:
trueif the ElementKind matches the ElementType,falseotherwise
-
matchesElementType
static boolean matchesElementType(javax.lang.model.element.ElementKind elementKind, java.lang.annotation.ElementType... elementTypes)Checks whether the specifiedElementKindmatches any of the specifiedElementTypes.- Parameters:
elementKind- the ElementKind to checkelementTypes- the ElementTypes to check- Returns:
trueif the ElementKind matches any of the ElementTypes,falseotherwise
-
matchesElementType
static boolean matchesElementType(javax.lang.model.element.Element element, java.lang.annotation.ElementType... elementTypes)Checks whether the specifiedElementmatches the specifiedElementType.- Parameters:
element- theElementto checkelementTypes- the ElementTypes to check- Returns:
trueif the Element matches the ElementType,falseotherwise
-
matchesElementKind
static boolean matchesElementKind(javax.lang.model.element.Element member, javax.lang.model.element.ElementKind kind)
-
isPublicNonStatic
static boolean isPublicNonStatic(javax.lang.model.element.Element member)
-
hasModifiers
static boolean hasModifiers(javax.lang.model.element.Element member, javax.lang.model.element.Modifier... modifiers)
-
filterElements
static <E extends javax.lang.model.element.Element> java.util.List<E> filterElements(java.util.List<E> elements, java.util.function.Predicate<? super E>... elementPredicates)
-
matchParameterTypes
static boolean matchParameterTypes(javax.lang.model.element.ExecutableElement executableElement, java.lang.reflect.Type... parameterTypes)
-
matchParameterTypes
static boolean matchParameterTypes(java.util.List<? extends javax.lang.model.element.VariableElement> parameters, java.lang.reflect.Type... parameterTypes)
-
matchParameterTypeNames
static boolean matchParameterTypeNames(java.util.List<? extends javax.lang.model.element.VariableElement> parameters, java.lang.CharSequence... parameterTypeNames)
-
-