public class net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers extends java.lang.Object implements net.bytebuddy.asm.MemberSubstitution$Replacement
{
private final net.bytebuddy.matcher.ElementMatcher fieldMatcher;
private final net.bytebuddy.matcher.ElementMatcher methodMatcher;
private final boolean matchFieldRead;
private final boolean matchFieldWrite;
private final boolean includeVirtualCalls;
private final boolean includeSuperCalls;
private final net.bytebuddy.asm.MemberSubstitution$Substitution substitution;
protected void <init>(net.bytebuddy.matcher.ElementMatcher, net.bytebuddy.matcher.ElementMatcher, boolean, boolean, boolean, boolean, net.bytebuddy.asm.MemberSubstitution$Substitution)
{
net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers v;
net.bytebuddy.asm.MemberSubstitution$Substitution v;
net.bytebuddy.matcher.ElementMatcher v, v;
boolean v, v, v, v;
v := @this: net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers;
v := @parameter: net.bytebuddy.matcher.ElementMatcher;
v := @parameter: net.bytebuddy.matcher.ElementMatcher;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: net.bytebuddy.asm.MemberSubstitution$Substitution;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher fieldMatcher> = v;
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher methodMatcher> = v;
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldRead> = v;
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldWrite> = v;
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeVirtualCalls> = v;
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeSuperCalls> = v;
v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.asm.MemberSubstitution$Substitution substitution> = v;
return;
}
public net.bytebuddy.asm.MemberSubstitution$Replacement$Binding bind(net.bytebuddy.description.type.TypeDescription, net.bytebuddy.description.method.MethodDescription, net.bytebuddy.description.field.FieldDescription$InDefinedShape, boolean)
{
net.bytebuddy.description.field.FieldDescription$InDefinedShape v;
net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers v;
net.bytebuddy.asm.MemberSubstitution$Substitution v;
net.bytebuddy.description.method.MethodDescription v;
net.bytebuddy.matcher.ElementMatcher v;
net.bytebuddy.asm.MemberSubstitution$Replacement$Binding v;
net.bytebuddy.description.type.TypeDescription v, v;
net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Resolved v;
boolean v, v, v, v;
v := @this: net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers;
v := @parameter: net.bytebuddy.description.type.TypeDescription;
v := @parameter: net.bytebuddy.description.method.MethodDescription;
v := @parameter: net.bytebuddy.description.field.FieldDescription$InDefinedShape;
v := @parameter: boolean;
if v == 0 goto label;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldWrite>;
if v == 0 goto label;
goto label;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldRead>;
if v == 0 goto label;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher fieldMatcher>;
v = interfaceinvoke v.<net.bytebuddy.matcher.ElementMatcher: boolean matches(java.lang.Object)>(v);
if v == 0 goto label;
v = new net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Resolved;
v = v;
v = interfaceinvoke v.<net.bytebuddy.description.field.FieldDescription$InDefinedShape: net.bytebuddy.description.type.TypeDescription getDeclaringType()>();
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.asm.MemberSubstitution$Substitution substitution>;
specialinvoke v.<net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Resolved: void <init>(net.bytebuddy.description.type.TypeDescription,net.bytebuddy.description.ByteCodeElement$Member,net.bytebuddy.asm.MemberSubstitution$Substitution)>(v, v, v);
goto label;
label:
v = <net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Unresolved: net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Unresolved INSTANCE>;
label:
return v;
}
public net.bytebuddy.asm.MemberSubstitution$Replacement$Binding bind(net.bytebuddy.description.type.TypeDescription, net.bytebuddy.description.method.MethodDescription, net.bytebuddy.description.type.TypeDescription, net.bytebuddy.description.method.MethodDescription, net.bytebuddy.asm.MemberSubstitution$Replacement$InvocationType)
{
net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers v;
net.bytebuddy.asm.MemberSubstitution$Replacement$InvocationType v;
net.bytebuddy.asm.MemberSubstitution$Substitution v;
net.bytebuddy.description.method.MethodDescription v, v;
net.bytebuddy.matcher.ElementMatcher v;
net.bytebuddy.asm.MemberSubstitution$Replacement$Binding v;
net.bytebuddy.description.type.TypeDescription v, v;
net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Resolved v;
boolean v, v, v, v;
v := @this: net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers;
v := @parameter: net.bytebuddy.description.type.TypeDescription;
v := @parameter: net.bytebuddy.description.method.MethodDescription;
v := @parameter: net.bytebuddy.description.type.TypeDescription;
v := @parameter: net.bytebuddy.description.method.MethodDescription;
v := @parameter: net.bytebuddy.asm.MemberSubstitution$Replacement$InvocationType;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeVirtualCalls>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeSuperCalls>;
v = virtualinvoke v.<net.bytebuddy.asm.MemberSubstitution$Replacement$InvocationType: boolean matches(boolean,boolean)>(v, v);
if v == 0 goto label;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher methodMatcher>;
v = interfaceinvoke v.<net.bytebuddy.matcher.ElementMatcher: boolean matches(java.lang.Object)>(v);
if v == 0 goto label;
v = new net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Resolved;
v = v;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.asm.MemberSubstitution$Substitution substitution>;
specialinvoke v.<net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Resolved: void <init>(net.bytebuddy.description.type.TypeDescription,net.bytebuddy.description.ByteCodeElement$Member,net.bytebuddy.asm.MemberSubstitution$Substitution)>(v, v, v);
goto label;
label:
v = <net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Unresolved: net.bytebuddy.asm.MemberSubstitution$Replacement$Binding$Unresolved INSTANCE>;
label:
return v;
}
public boolean equals(java.lang.Object)
{
net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers v;
boolean v, v, v, v, v, v, v, v, v, v, v;
net.bytebuddy.asm.MemberSubstitution$Substitution v, v;
net.bytebuddy.matcher.ElementMatcher v, v, v, v;
java.lang.Class v, v;
java.lang.Object v;
v := @this: net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers;
v := @parameter: java.lang.Object;
if v != v goto label;
return 1;
label:
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v == v goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldRead>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldRead>;
if v == v goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldWrite>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldWrite>;
if v == v goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeVirtualCalls>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeVirtualCalls>;
if v == v goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeSuperCalls>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeSuperCalls>;
if v == v goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher fieldMatcher>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher fieldMatcher>;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher methodMatcher>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher methodMatcher>;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.asm.MemberSubstitution$Substitution substitution>;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.asm.MemberSubstitution$Substitution substitution>;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
return 1;
}
public int hashCode()
{
net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean v, v, v, v;
net.bytebuddy.asm.MemberSubstitution$Substitution v;
net.bytebuddy.matcher.ElementMatcher v, v;
java.lang.Class v;
v := @this: net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers;
v = virtualinvoke v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: int hashCode()>();
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher fieldMatcher>;
v = virtualinvoke v.<java.lang.Object: int hashCode()>();
v = v + v;
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.matcher.ElementMatcher methodMatcher>;
v = virtualinvoke v.<java.lang.Object: int hashCode()>();
v = v + v;
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldRead>;
v = v + v;
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean matchFieldWrite>;
v = v + v;
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeVirtualCalls>;
v = v + v;
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: boolean includeSuperCalls>;
v = v + v;
v = v * 31;
v = v.<net.bytebuddy.asm.MemberSubstitution$Replacement$ForElementMatchers: net.bytebuddy.asm.MemberSubstitution$Substitution substitution>;
v = virtualinvoke v.<java.lang.Object: int hashCode()>();
v = v + v;
return v;
}
}