Class JavassistMethodDeclaration
- java.lang.Object
-
- com.github.javaparser.symbolsolver.javassistmodel.JavassistMethodDeclaration
-
- All Implemented Interfaces:
AssociableToAST,HasAccessSpecifier,ResolvedDeclaration,ResolvedMethodDeclaration,ResolvedMethodLikeDeclaration,ResolvedTypeParametrizable,TypeVariableResolutionCapability
public class JavassistMethodDeclaration extends java.lang.Object implements ResolvedMethodDeclaration, TypeVariableResolutionCapability
-
-
Field Summary
Fields Modifier and Type Field Description private javassist.CtMethodctMethodprivate JavassistMethodLikeDeclarationAdaptermethodLikeAdaperprivate TypeSolvertypeSolver
-
Constructor Summary
Constructors Constructor Description JavassistMethodDeclaration(javassist.CtMethod ctMethod, TypeSolver typeSolver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AccessSpecifieraccessSpecifier()The access specifier of this element.ResolvedReferenceTypeDeclarationdeclaringType()The type in which the method is declared.java.lang.StringgetName()Should return the name or return null if the name is not available.intgetNumberOfParams()Number of params.intgetNumberOfSpecifiedExceptions()Number of exceptions listed in the throws clause.ResolvedParameterDeclarationgetParam(int i)Get the ParameterDeclaration at the corresponding position or throw IllegalArgumentException.ResolvedTypegetReturnType()The type of the value returned by the current method.ResolvedTypegetSpecifiedException(int index)Type of the corresponding entry in the throws clause.java.util.List<ResolvedTypeParameterDeclaration>getTypeParameters()The list of type parameters defined on this element.MethodUsagegetUsage(Node node)booleanisAbstract()Is the method abstract? All interface methods not marked as default are abstract.booleanisDefaultMethod()Is this a default method?booleanisField()Does this declaration represents a class field?booleanisParameter()Does this declaration represents a method parameter?booleanisStatic()booleanisType()Does this declaration represents a type?MethodUsageresolveTypeVariables(Context context, java.util.List<ResolvedType> parameterTypes)java.lang.StringtoDescriptor()java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.github.javaparser.resolution.declarations.AssociableToAST
toAst, toAst
-
Methods inherited from interface com.github.javaparser.resolution.declarations.ResolvedDeclaration
asEnumConstant, asField, asMethod, asParameter, asType, asTypePattern, hasName, isEnumConstant, isMethod, isTypePattern, isVariable
-
Methods inherited from interface com.github.javaparser.resolution.declarations.ResolvedMethodDeclaration
isReturnTypeSubstituable
-
Methods inherited from interface com.github.javaparser.resolution.declarations.ResolvedMethodLikeDeclaration
findTypeParameter, formalParameterTypes, getClassName, getLastParam, getPackageName, getQualifiedName, getQualifiedSignature, getSignature, getSpecifiedExceptions, hasVariadicParameter
-
Methods inherited from interface com.github.javaparser.resolution.declarations.ResolvedTypeParametrizable
isGeneric
-
-
-
-
Field Detail
-
ctMethod
private javassist.CtMethod ctMethod
-
typeSolver
private TypeSolver typeSolver
-
methodLikeAdaper
private final JavassistMethodLikeDeclarationAdapter methodLikeAdaper
-
-
Constructor Detail
-
JavassistMethodDeclaration
public JavassistMethodDeclaration(javassist.CtMethod ctMethod, TypeSolver typeSolver)
-
-
Method Detail
-
isDefaultMethod
public boolean isDefaultMethod()
Description copied from interface:ResolvedMethodDeclarationIs this a default method?- Specified by:
isDefaultMethodin interfaceResolvedMethodDeclaration
-
isStatic
public boolean isStatic()
- Specified by:
isStaticin interfaceResolvedMethodDeclaration
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getName
public java.lang.String getName()
Description copied from interface:ResolvedDeclarationShould return the name or return null if the name is not available.- Specified by:
getNamein interfaceResolvedDeclaration
-
isField
public boolean isField()
Description copied from interface:ResolvedDeclarationDoes this declaration represents a class field?- Specified by:
isFieldin interfaceResolvedDeclaration
-
isParameter
public boolean isParameter()
Description copied from interface:ResolvedDeclarationDoes this declaration represents a method parameter?- Specified by:
isParameterin interfaceResolvedDeclaration
-
isType
public boolean isType()
Description copied from interface:ResolvedDeclarationDoes this declaration represents a type?- Specified by:
isTypein interfaceResolvedDeclaration
-
declaringType
public ResolvedReferenceTypeDeclaration declaringType()
Description copied from interface:ResolvedMethodLikeDeclarationThe type in which the method is declared.- Specified by:
declaringTypein interfaceResolvedMethodLikeDeclaration
-
getReturnType
public ResolvedType getReturnType()
Description copied from interface:ResolvedMethodDeclarationThe type of the value returned by the current method. This method can also be invoked for methods returning void.- Specified by:
getReturnTypein interfaceResolvedMethodDeclaration
-
getNumberOfParams
public int getNumberOfParams()
Description copied from interface:ResolvedMethodLikeDeclarationNumber of params.- Specified by:
getNumberOfParamsin interfaceResolvedMethodLikeDeclaration
-
getParam
public ResolvedParameterDeclaration getParam(int i)
Description copied from interface:ResolvedMethodLikeDeclarationGet the ParameterDeclaration at the corresponding position or throw IllegalArgumentException.- Specified by:
getParamin interfaceResolvedMethodLikeDeclaration
-
getUsage
public MethodUsage getUsage(Node node)
-
resolveTypeVariables
public MethodUsage resolveTypeVariables(Context context, java.util.List<ResolvedType> parameterTypes)
- Specified by:
resolveTypeVariablesin interfaceTypeVariableResolutionCapability
-
isAbstract
public boolean isAbstract()
Description copied from interface:ResolvedMethodDeclarationIs the method abstract? All interface methods not marked as default are abstract.- Specified by:
isAbstractin interfaceResolvedMethodDeclaration
-
getTypeParameters
public java.util.List<ResolvedTypeParameterDeclaration> getTypeParameters()
Description copied from interface:ResolvedTypeParametrizableThe list of type parameters defined on this element.- Specified by:
getTypeParametersin interfaceResolvedTypeParametrizable
-
accessSpecifier
public AccessSpecifier accessSpecifier()
Description copied from interface:HasAccessSpecifierThe access specifier of this element.- Specified by:
accessSpecifierin interfaceHasAccessSpecifier
-
getNumberOfSpecifiedExceptions
public int getNumberOfSpecifiedExceptions()
Description copied from interface:ResolvedMethodLikeDeclarationNumber of exceptions listed in the throws clause.- Specified by:
getNumberOfSpecifiedExceptionsin interfaceResolvedMethodLikeDeclaration
-
getSpecifiedException
public ResolvedType getSpecifiedException(int index)
Description copied from interface:ResolvedMethodLikeDeclarationType of the corresponding entry in the throws clause.- Specified by:
getSpecifiedExceptionin interfaceResolvedMethodLikeDeclaration
-
toDescriptor
public java.lang.String toDescriptor()
- Specified by:
toDescriptorin interfaceResolvedMethodDeclaration
-
-