Interface IDTypeInfoProvider
public interface IDTypeInfoProvider
Type information provider interface.
-
Method Summary
Modifier and TypeMethodDescriptionRetrieve a field declared in the provided type.Retrieve a field.findMethod(String typename, String methodname, String descNoReturnType) Retrieve a method declared in the provided type.findMethod(String typename, String methodname, String descNoReturnType, boolean declared, String[] adeclType) Retrieve a method.findTypesWithSuperMethods(String typename, String methodname, String methoddesc, boolean directOnly) booleanbooleanisCompatible(String typename, String candidateParentTypename) isFunctionalType(String typename) Determine if the provided is a functional type: a type that implements a functional interface.
-
Method Details
-
isCompatible
- Parameters:
typename- jvm canonical type name of a primitive, object, or array of anycandidateParentTypename- jvm canonical type name of a primitive, object, or array of any- Returns:
-
isChildOf
- Parameters:
typename- must be a non-array object typecandidateParentTypename- must be a non-array object type- Returns:
- true if the provided type descends from the provided candidate super type
-
findTypesWithSuperMethods
List<String> findTypesWithSuperMethods(String typename, String methodname, String methoddesc, boolean directOnly) - Parameters:
typename- must be a non-array object typemethodname-methoddesc-directOnly-- Returns:
- a list of types (binary form) containing super implementations or super declarations for the provided method
-
isFunctionalType
Determine if the provided is a functional type: a type that implements a functional interface.- Parameters:
typename-- Returns:
-
findType
- Parameters:
typename-- Returns:
-
findMethod
Retrieve a method declared in the provided type.- Parameters:
typename- jvm type namemethodname- simple method namedescNoReturnType- jvm descriptor without return type, that is the paren.-enclosed list of parameters, e.g.(I[J[[Ljava/lang/String;)- Returns:
- a method or null if not found
-
findMethod
IJLSMethod findMethod(String typename, String methodname, String descNoReturnType, boolean declared, String[] adeclType) Retrieve a method. Constructor methods can be retrieved as well. Type hierarchies can be examined.- Parameters:
typename- jvm type namemethodname- simple method namedescNoReturnType- jvm descriptor without return type, that is the paren.-enclosed list of parameters, e.g.(I[J[[Ljava/lang/String;)declared- if true, methods declared in the provided types will be examined (inherited methods will not be examined); if not, all public methods (declared and inherited) will be examined; if the method is a constructor method (<init>or<clinit>), inherited methods are never examinedadeclType-- Returns:
- a method or null if not found
-
findField
Retrieve a field declared in the provided type.- Parameters:
typename- jvm type namefieldname- simple field name- Returns:
- a field or null if not found
-
findField
Retrieve a field. Type hierarchies can be examined.- Parameters:
typename- jvm type namefieldname- simple field namedeclared- if true, fields declared in the provided type will be examined (inherited fields will not be examined); if not, all public fields (declared and inherited) will be examinedadeclType-- Returns:
- a field or null if not found
-