public abstract class oadd.com.google.common.reflect.Invokable extends oadd.com.google.common.reflect.Element implements java.lang.reflect.GenericDeclaration
{
void <init>(java.lang.reflect.AccessibleObject)
{
oadd.com.google.common.reflect.Invokable v;
java.lang.reflect.AccessibleObject v;
v := @this: oadd.com.google.common.reflect.Invokable;
v := @parameter: java.lang.reflect.AccessibleObject;
specialinvoke v.<oadd.com.google.common.reflect.Element: void <init>(java.lang.reflect.AccessibleObject)>(v);
return;
}
public static oadd.com.google.common.reflect.Invokable 'from'(java.lang.reflect.Method)
{
oadd.com.google.common.reflect.Invokable$MethodInvokable v;
java.lang.reflect.Method v;
v := @parameter: java.lang.reflect.Method;
v = new oadd.com.google.common.reflect.Invokable$MethodInvokable;
specialinvoke v.<oadd.com.google.common.reflect.Invokable$MethodInvokable: void <init>(java.lang.reflect.Method)>(v);
return v;
}
public static oadd.com.google.common.reflect.Invokable 'from'(java.lang.reflect.Constructor)
{
java.lang.reflect.Constructor v;
oadd.com.google.common.reflect.Invokable$ConstructorInvokable v;
v := @parameter: java.lang.reflect.Constructor;
v = new oadd.com.google.common.reflect.Invokable$ConstructorInvokable;
specialinvoke v.<oadd.com.google.common.reflect.Invokable$ConstructorInvokable: void <init>(java.lang.reflect.Constructor)>(v);
return v;
}
public abstract boolean isOverridable();
public abstract boolean isVarArgs();
public final transient java.lang.Object invoke(java.lang.Object, java.lang.Object[]) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException
{
java.lang.Object[] v;
oadd.com.google.common.reflect.Invokable v;
java.lang.Object v, v, v;
v := @this: oadd.com.google.common.reflect.Invokable;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object[];
v = staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.Object invokeInternal(java.lang.Object,java.lang.Object[])>(v, v);
return v;
}
public final oadd.com.google.common.reflect.TypeToken getReturnType()
{
oadd.com.google.common.reflect.Invokable v;
java.lang.reflect.Type v;
oadd.com.google.common.reflect.TypeToken v;
v := @this: oadd.com.google.common.reflect.Invokable;
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.reflect.Type getGenericReturnType()>();
v = staticinvoke <oadd.com.google.common.reflect.TypeToken: oadd.com.google.common.reflect.TypeToken of(java.lang.reflect.Type)>(v);
return v;
}
public final oadd.com.google.common.collect.ImmutableList getParameters()
{
java.lang.'annotation'.Annotation[][] v;
java.lang.reflect.AnnotatedType v;
oadd.com.google.common.reflect.Invokable v;
oadd.com.google.common.reflect.Parameter v;
oadd.com.google.common.collect.ImmutableList$Builder v;
java.lang.'annotation'.Annotation[] v;
java.lang.reflect.Type v;
oadd.com.google.common.reflect.TypeToken v;
int v, v;
java.lang.reflect.Type[] v;
oadd.com.google.common.collect.ImmutableList v;
java.lang.reflect.AnnotatedType[] v;
v := @this: oadd.com.google.common.reflect.Invokable;
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.reflect.Type[] getGenericParameterTypes()>();
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.'annotation'.Annotation[][] getParameterAnnotations()>();
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.reflect.AnnotatedType[] getAnnotatedParameterTypes()>();
v = staticinvoke <oadd.com.google.common.collect.ImmutableList: oadd.com.google.common.collect.ImmutableList$Builder builder()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = new oadd.com.google.common.reflect.Parameter;
v = v[v];
v = staticinvoke <oadd.com.google.common.reflect.TypeToken: oadd.com.google.common.reflect.TypeToken of(java.lang.reflect.Type)>(v);
v = v[v];
v = v[v];
specialinvoke v.<oadd.com.google.common.reflect.Parameter: void <init>(oadd.com.google.common.reflect.Invokable,int,oadd.com.google.common.reflect.TypeToken,java.lang.'annotation'.Annotation[],java.lang.reflect.AnnotatedType)>(v, v, v, v, v);
virtualinvoke v.<oadd.com.google.common.collect.ImmutableList$Builder: oadd.com.google.common.collect.ImmutableList$Builder add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList$Builder: oadd.com.google.common.collect.ImmutableList build()>();
return v;
}
public final oadd.com.google.common.collect.ImmutableList getExceptionTypes()
{
oadd.com.google.common.reflect.Invokable v;
oadd.com.google.common.collect.ImmutableList$Builder v;
java.lang.reflect.Type v;
oadd.com.google.common.reflect.TypeToken v;
int v, v;
java.lang.reflect.Type[] v;
oadd.com.google.common.collect.ImmutableList v;
v := @this: oadd.com.google.common.reflect.Invokable;
v = staticinvoke <oadd.com.google.common.collect.ImmutableList: oadd.com.google.common.collect.ImmutableList$Builder builder()>();
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.reflect.Type[] getGenericExceptionTypes()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <oadd.com.google.common.reflect.TypeToken: oadd.com.google.common.reflect.TypeToken of(java.lang.reflect.Type)>(v);
virtualinvoke v.<oadd.com.google.common.collect.ImmutableList$Builder: oadd.com.google.common.collect.ImmutableList$Builder add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList$Builder: oadd.com.google.common.collect.ImmutableList build()>();
return v;
}
public final oadd.com.google.common.reflect.Invokable returning(java.lang.Class)
{
oadd.com.google.common.reflect.TypeToken v;
oadd.com.google.common.reflect.Invokable v, v;
java.lang.Class v;
v := @this: oadd.com.google.common.reflect.Invokable;
v := @parameter: java.lang.Class;
v = staticinvoke <oadd.com.google.common.reflect.TypeToken: oadd.com.google.common.reflect.TypeToken of(java.lang.Class)>(v);
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: oadd.com.google.common.reflect.Invokable returning(oadd.com.google.common.reflect.TypeToken)>(v);
return v;
}
public final oadd.com.google.common.reflect.Invokable returning(oadd.com.google.common.reflect.TypeToken)
{
oadd.com.google.common.reflect.Invokable v;
oadd.com.google.common.reflect.TypeToken v, v, v;
int v, v, v, v;
java.lang.String v, v, v, v, v;
boolean v;
java.lang.IllegalArgumentException v;
java.lang.StringBuilder v;
v := @this: oadd.com.google.common.reflect.Invokable;
v := @parameter: oadd.com.google.common.reflect.TypeToken;
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: oadd.com.google.common.reflect.TypeToken getReturnType()>();
v = virtualinvoke v.<oadd.com.google.common.reflect.TypeToken: boolean isSupertypeOf(oadd.com.google.common.reflect.TypeToken)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: oadd.com.google.common.reflect.TypeToken getReturnType()>();
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
v = 35 + v;
v = staticinvoke <java.lang.String: java.lang.String valueOf(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invokable is known to return \u, not \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
}
public final java.lang.Class getDeclaringClass()
{
oadd.com.google.common.reflect.Invokable v;
java.lang.Class v;
v := @this: oadd.com.google.common.reflect.Invokable;
v = specialinvoke v.<oadd.com.google.common.reflect.Element: java.lang.Class getDeclaringClass()>();
return v;
}
public oadd.com.google.common.reflect.TypeToken getOwnerType()
{
oadd.com.google.common.reflect.Invokable v;
java.lang.Class v;
oadd.com.google.common.reflect.TypeToken v;
v := @this: oadd.com.google.common.reflect.Invokable;
v = virtualinvoke v.<oadd.com.google.common.reflect.Invokable: java.lang.Class getDeclaringClass()>();
v = staticinvoke <oadd.com.google.common.reflect.TypeToken: oadd.com.google.common.reflect.TypeToken of(java.lang.Class)>(v);
return v;
}
abstract java.lang.Object invokeInternal(java.lang.Object, java.lang.Object[]) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException;
abstract java.lang.reflect.Type[] getGenericParameterTypes();
abstract java.lang.reflect.AnnotatedType[] getAnnotatedParameterTypes();
abstract java.lang.reflect.Type[] getGenericExceptionTypes();
abstract java.lang.'annotation'.Annotation[][] getParameterAnnotations();
abstract java.lang.reflect.Type getGenericReturnType();
public abstract java.lang.reflect.AnnotatedType getAnnotatedReturnType();
}