public class org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl extends org.objectweb.asm.signature.SignatureVisitor
{
private final org.glassfish.hk.classmodel.reflect.impl.TypeBuilder typeBuilder;
private final org.glassfish.hk.classmodel.reflect.MethodModel methodModel;
private final java.util.List parameters;
private final org.glassfish.hk.classmodel.reflect.ParameterizedType returnType;
private final java.util.ArrayDeque parentType;
public void <init>(org.glassfish.hk.classmodel.reflect.impl.TypeBuilder, org.glassfish.hk.classmodel.reflect.MethodModel)
{
org.glassfish.hk.classmodel.reflect.impl.TypeBuilder v;
org.glassfish.hk.classmodel.reflect.MethodModel v;
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
java.util.ArrayDeque v;
java.util.ArrayList v;
org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v := @parameter: org.glassfish.hk.classmodel.reflect.impl.TypeBuilder;
v := @parameter: org.glassfish.hk.classmodel.reflect.MethodModel;
specialinvoke v.<org.objectweb.asm.signature.SignatureVisitor: void <init>(int)>(589824);
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.List parameters> = v;
v = new org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl;
specialinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: void <init>()>();
v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.ParameterizedType returnType> = v;
v = new java.util.ArrayDeque;
specialinvoke v.<java.util.ArrayDeque: void <init>()>();
v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType> = v;
v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.impl.TypeBuilder typeBuilder> = v;
v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.MethodModel methodModel> = v;
return;
}
public java.util.List getParameters()
{
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
java.util.List v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.List parameters>;
return v;
}
public org.glassfish.hk.classmodel.reflect.ParameterizedType getReturnType()
{
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
org.glassfish.hk.classmodel.reflect.ParameterizedType v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.ParameterizedType returnType>;
return v;
}
public org.objectweb.asm.signature.SignatureVisitor visitParameterType()
{
org.glassfish.hk.classmodel.reflect.impl.ParameterImpl v;
java.util.List v, v;
org.glassfish.hk.classmodel.reflect.MethodModel v;
int v;
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
java.util.ArrayDeque v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v = new org.glassfish.hk.classmodel.reflect.impl.ParameterImpl;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.List parameters>;
v = interfaceinvoke v.<java.util.List: int size()>();
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.MethodModel methodModel>;
specialinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterImpl: void <init>(int,java.lang.String,org.glassfish.hk.classmodel.reflect.MethodModel)>(v, null, v);
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.List parameters>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
virtualinvoke v.<java.util.ArrayDeque: boolean add(java.lang.Object)>(v);
return v;
}
public org.objectweb.asm.signature.SignatureVisitor visitReturnType()
{
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
java.util.ArrayDeque v;
org.glassfish.hk.classmodel.reflect.ParameterizedType v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.ParameterizedType returnType>;
virtualinvoke v.<java.util.ArrayDeque: boolean add(java.lang.Object)>(v);
return v;
}
public void visitTypeVariable(java.lang.String)
{
org.glassfish.hk.classmodel.reflect.impl.TypeProxy v, v;
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
java.util.List v;
org.glassfish.hk.classmodel.reflect.ParameterizedType v;
java.lang.Object v;
java.lang.String v, v, v;
java.util.ArrayDeque v, v;
boolean v, v, v;
org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v := @parameter: java.lang.String;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
v = virtualinvoke v.<java.util.ArrayDeque: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
v = virtualinvoke v.<java.util.ArrayDeque: java.lang.Object peekLast()>();
v = v instanceof org.glassfish.hk.classmodel.reflect.impl.ParameterImpl;
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterImpl: org.glassfish.hk.classmodel.reflect.impl.TypeProxy getTypeProxy()>();
if v != null goto label;
v = virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterImpl: java.lang.String getFormalType()>();
if v != null goto label;
virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterImpl: void setFormalType(java.lang.String)>(v);
goto label;
label:
v = v instanceof org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl;
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: org.glassfish.hk.classmodel.reflect.impl.TypeProxy getTypeProxy()>();
if v != null goto label;
v = virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: java.lang.String getFormalType()>();
if v != null goto label;
virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: void setFormalType(java.lang.String)>(v);
goto label;
label:
v = new org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl;
specialinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: void <init>(java.lang.String)>(v);
v = interfaceinvoke v.<org.glassfish.hk.classmodel.reflect.ParameterizedType: java.util.List getParameterizedTypes()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
public void visitClassType(java.lang.String)
{
org.glassfish.hk.classmodel.reflect.impl.TypeBuilder v;
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
org.objectweb.asm.Type v;
org.glassfish.hk.classmodel.reflect.ParameterizedType v;
java.lang.String v, v;
boolean v, v, v;
org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl v;
org.glassfish.hk.classmodel.reflect.impl.TypeProxy v, v, v;
java.util.List v;
java.lang.Object v;
java.util.ArrayDeque v, v, v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v := @parameter: java.lang.String;
v = staticinvoke <org.objectweb.asm.Type: org.objectweb.asm.Type getObjectType(java.lang.String)>(v);
v = virtualinvoke v.<org.objectweb.asm.Type: java.lang.String getClassName()>();
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: org.glassfish.hk.classmodel.reflect.impl.TypeBuilder typeBuilder>;
v = interfaceinvoke v.<org.glassfish.hk.classmodel.reflect.impl.TypeBuilder: org.glassfish.hk.classmodel.reflect.impl.TypeProxy getHolder(java.lang.String)>(v);
if v == null goto label;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
v = virtualinvoke v.<java.util.ArrayDeque: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
v = virtualinvoke v.<java.util.ArrayDeque: java.lang.Object peekLast()>();
v = v instanceof org.glassfish.hk.classmodel.reflect.impl.ParameterImpl;
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterImpl: org.glassfish.hk.classmodel.reflect.impl.TypeProxy getTypeProxy()>();
if v != null goto label;
virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterImpl: void setTypeProxy(org.glassfish.hk.classmodel.reflect.impl.TypeProxy)>(v);
goto label;
label:
v = v instanceof org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl;
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: org.glassfish.hk.classmodel.reflect.impl.TypeProxy getTypeProxy()>();
if v != null goto label;
virtualinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: void setTypeProxy(org.glassfish.hk.classmodel.reflect.impl.TypeProxy)>(v);
goto label;
label:
v = new org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl;
specialinvoke v.<org.glassfish.hk.classmodel.reflect.impl.ParameterizedTypeImpl: void <init>(org.glassfish.hk.classmodel.reflect.impl.TypeProxy)>(v);
v = interfaceinvoke v.<org.glassfish.hk.classmodel.reflect.ParameterizedType: java.util.List getParameterizedTypes()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
virtualinvoke v.<java.util.ArrayDeque: boolean add(java.lang.Object)>(v);
label:
return;
}
public org.objectweb.asm.signature.SignatureVisitor visitTypeArgument(char)
{
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
char v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v := @parameter: char;
return v;
}
public void visitEnd()
{
org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl v;
java.util.ArrayDeque v;
v := @this: org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl;
v = v.<org.glassfish.hk.classmodel.reflect.impl.MethodSignatureVisitorImpl: java.util.ArrayDeque parentType>;
virtualinvoke v.<java.util.ArrayDeque: java.lang.Object pollLast()>();
return;
}
}