final class com.google.common.io.ByteSource$ConcatenatedByteSource extends com.google.common.io.ByteSource
{
final java.lang.Iterable sources;
void <init>(java.lang.Iterable)
{
java.lang.Object v;
com.google.common.io.ByteSource$ConcatenatedByteSource v;
java.lang.Iterable v;
v := @this: com.google.common.io.ByteSource$ConcatenatedByteSource;
v := @parameter: java.lang.Iterable;
specialinvoke v.<com.google.common.io.ByteSource: void <init>()>();
v = staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources> = v;
return;
}
public java.io.InputStream openStream() throws java.io.IOException
{
java.util.Iterator v;
com.google.common.io.ByteSource$ConcatenatedByteSource v;
com.google.common.io.MultiInputStream v;
java.lang.Iterable v;
v := @this: com.google.common.io.ByteSource$ConcatenatedByteSource;
v = new com.google.common.io.MultiInputStream;
v = v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources>;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
specialinvoke v.<com.google.common.io.MultiInputStream: void <init>(java.util.Iterator)>(v);
return v;
}
public boolean isEmpty() throws java.io.IOException
{
java.util.Iterator v;
com.google.common.io.ByteSource$ConcatenatedByteSource v;
java.lang.Object v;
java.lang.Iterable v;
boolean v, v;
v := @this: com.google.common.io.ByteSource$ConcatenatedByteSource;
v = v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources>;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<com.google.common.io.ByteSource: boolean isEmpty()>();
if v != 0 goto label;
return 0;
label:
return 1;
}
public com.google.common.base.Optional sizeIfKnown()
{
long v, v;
java.lang.Iterable v, v;
byte v;
java.lang.Long v, v;
com.google.common.base.Optional v, v, v, v, v;
boolean v, v, v;
java.util.Iterator v;
com.google.common.io.ByteSource$ConcatenatedByteSource v;
java.lang.Object v, v;
v := @this: com.google.common.io.ByteSource$ConcatenatedByteSource;
v = v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources>;
v = v instanceof java.util.Collection;
if v != 0 goto label;
v = staticinvoke <com.google.common.base.Optional: com.google.common.base.Optional absent()>();
return v;
label:
v = 0L;
v = v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources>;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<com.google.common.io.ByteSource: com.google.common.base.Optional sizeIfKnown()>();
v = virtualinvoke v.<com.google.common.base.Optional: boolean isPresent()>();
if v != 0 goto label;
v = staticinvoke <com.google.common.base.Optional: com.google.common.base.Optional absent()>();
return v;
label:
v = virtualinvoke v.<com.google.common.base.Optional: java.lang.Object get()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = v + v;
v = v cmp 0L;
if v >= 0 goto label;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(9223372036854775807L);
v = staticinvoke <com.google.common.base.Optional: com.google.common.base.Optional of(java.lang.Object)>(v);
return v;
label:
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = staticinvoke <com.google.common.base.Optional: com.google.common.base.Optional of(java.lang.Object)>(v);
return v;
}
public long size() throws java.io.IOException
{
java.util.Iterator v;
long v, v;
java.lang.Iterable v;
byte v;
com.google.common.io.ByteSource$ConcatenatedByteSource v;
java.lang.Object v;
boolean v;
v := @this: com.google.common.io.ByteSource$ConcatenatedByteSource;
v = 0L;
v = v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources>;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<com.google.common.io.ByteSource: long size()>();
v = v + v;
v = v cmp 0L;
if v >= 0 goto label;
return 9223372036854775807L;
label:
return v;
}
public java.lang.String toString()
{
java.lang.Iterable v;
com.google.common.io.ByteSource$ConcatenatedByteSource v;
int v, v;
java.lang.StringBuilder v;
java.lang.String v, v, v;
v := @this: com.google.common.io.ByteSource$ConcatenatedByteSource;
v = v.<com.google.common.io.ByteSource$ConcatenatedByteSource: java.lang.Iterable sources>;
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 = 19 + v;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(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[])>("ByteSource.concat(\u)");
return v;
}
}