final class com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl extends com.google.common.collect.ImmutableSet$SetBuilderImpl
{
private final java.util.Set delegate;
void <init>(com.google.common.collect.ImmutableSet$SetBuilderImpl)
{
com.google.common.collect.ImmutableSet$SetBuilderImpl v;
java.lang.Object[] v;
java.util.Set v;
java.util.HashSet v;
int v, v, v;
java.lang.Object v, v;
com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl v;
v := @this: com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl;
v := @parameter: com.google.common.collect.ImmutableSet$SetBuilderImpl;
specialinvoke v.<com.google.common.collect.ImmutableSet$SetBuilderImpl: void <init>(com.google.common.collect.ImmutableSet$SetBuilderImpl)>(v);
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: int distinct>;
v = staticinvoke <com.google.common.collect.Sets: java.util.HashSet newHashSetWithExpectedSize(int)>(v);
v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.util.Set delegate> = v;
v = 0;
label:
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: int distinct>;
if v >= v goto label;
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.util.Set delegate>;
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.lang.Object[] dedupedElements>;
v = v[v];
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
return;
}
com.google.common.collect.ImmutableSet$SetBuilderImpl add(java.lang.Object)
{
java.util.Set v;
java.lang.Object v;
boolean v;
com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl v;
v := @this: com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl;
v := @parameter: java.lang.Object;
staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.util.Set delegate>;
v = interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
if v == 0 goto label;
virtualinvoke v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: void addDedupedElement(java.lang.Object)>(v);
label:
return v;
}
com.google.common.collect.ImmutableSet$SetBuilderImpl copy()
{
com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl v, v;
v := @this: com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl;
v = new com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl;
specialinvoke v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: void <init>(com.google.common.collect.ImmutableSet$SetBuilderImpl)>(v);
return v;
}
com.google.common.collect.ImmutableSet build()
{
com.google.common.collect.JdkBackedImmutableSet v;
com.google.common.collect.ImmutableSet v, v;
java.lang.Object[] v, v;
java.util.Set v;
com.google.common.collect.ImmutableList v;
int v, v;
java.lang.Object v, v;
com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl v;
v := @this: com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl;
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: int distinct>;
lookupswitch(v)
{
case 0: goto label;
case 1: goto label;
default: goto label;
};
label:
v = staticinvoke <com.google.common.collect.ImmutableSet: com.google.common.collect.ImmutableSet of()>();
return v;
label:
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.lang.Object[] dedupedElements>;
v = v[0];
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object)>(v);
v = staticinvoke <com.google.common.collect.ImmutableSet: com.google.common.collect.ImmutableSet of(java.lang.Object)>(v);
return v;
label:
v = new com.google.common.collect.JdkBackedImmutableSet;
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.util.Set delegate>;
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: java.lang.Object[] dedupedElements>;
v = v.<com.google.common.collect.ImmutableSet$JdkBackedSetBuilderImpl: int distinct>;
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList asImmutableList(java.lang.Object[],int)>(v, v);
specialinvoke v.<com.google.common.collect.JdkBackedImmutableSet: void <init>(java.util.Set,com.google.common.collect.ImmutableList)>(v, v);
return v;
}
}