gw.lang.reflect.java.IJavaClassMethod Maven / Gradle / Ivy
/*
* Copyright 2014 Guidewire Software, Inc.
*/
package gw.lang.reflect.java;
import gw.lang.reflect.IType;
import gw.lang.reflect.gs.IGenericTypeVariable;
import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
public interface IJavaClassMethod extends IJavaAnnotatedElement, Comparable, Serializable {
IJavaClassInfo getReturnClassInfo();
IJavaClassType getGenericReturnType();
String getReturnTypeName();
IType getReturnType();
IJavaClassType[] getGenericParameterTypes();
IJavaClassInfo[] getParameterTypes();
String getName();
List getParameterInfos();
int getModifiers();
IJavaClassInfo[] getExceptionTypes();
Object getDefaultValue();
Object invoke(Object ctx, Object[] args) throws InvocationTargetException, IllegalAccessException;
IGenericTypeVariable[] getTypeVariables(IJavaMethodInfo javaMethodInfo);
boolean isSynthetic();
boolean isBridge();
}