public final class com.google.common.collect.ImmutableRangeSet extends com.google.common.collect.AbstractRangeSet implements java.io.Serializable
{
private static final com.google.common.collect.ImmutableRangeSet EMPTY;
private static final com.google.common.collect.ImmutableRangeSet ALL;
private final transient com.google.common.collect.ImmutableList ranges;
private transient com.google.common.collect.ImmutableRangeSet complement;
public static java.util.stream.Collector toImmutableRangeSet()
{
java.util.stream.Collector v;
v = staticinvoke <com.google.common.collect.CollectCollectors: java.util.stream.Collector toImmutableRangeSet()>();
return v;
}
public static com.google.common.collect.ImmutableRangeSet of()
{
com.google.common.collect.ImmutableRangeSet v;
v = <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet EMPTY>;
return v;
}
public static com.google.common.collect.ImmutableRangeSet of(com.google.common.collect.Range)
{
com.google.common.collect.Range v, v;
com.google.common.collect.ImmutableList v;
com.google.common.collect.ImmutableRangeSet v, v, v;
boolean v, v;
v := @parameter: com.google.common.collect.Range;
staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet of()>();
return v;
label:
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Range all()>();
v = virtualinvoke v.<com.google.common.collect.Range: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet all()>();
return v;
label:
v = new com.google.common.collect.ImmutableRangeSet;
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList of(java.lang.Object)>(v);
specialinvoke v.<com.google.common.collect.ImmutableRangeSet: void <init>(com.google.common.collect.ImmutableList)>(v);
return v;
}
static com.google.common.collect.ImmutableRangeSet all()
{
com.google.common.collect.ImmutableRangeSet v;
v = <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet ALL>;
return v;
}
public static com.google.common.collect.ImmutableRangeSet copyOf(com.google.common.collect.RangeSet)
{
com.google.common.collect.RangeSet v;
com.google.common.collect.Range v;
java.util.Set v;
com.google.common.collect.ImmutableList v;
com.google.common.collect.ImmutableRangeSet v, v, v;
boolean v, v, v, v;
v := @parameter: com.google.common.collect.RangeSet;
staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = interfaceinvoke v.<com.google.common.collect.RangeSet: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet of()>();
return v;
label:
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Range all()>();
v = interfaceinvoke v.<com.google.common.collect.RangeSet: boolean encloses(com.google.common.collect.Range)>(v);
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet all()>();
return v;
label:
v = v instanceof com.google.common.collect.ImmutableRangeSet;
if v == 0 goto label;
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: boolean isPartialView()>();
if v != 0 goto label;
return v;
label:
v = new com.google.common.collect.ImmutableRangeSet;
v = interfaceinvoke v.<com.google.common.collect.RangeSet: java.util.Set asRanges()>();
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList copyOf(java.util.Collection)>(v);
specialinvoke v.<com.google.common.collect.ImmutableRangeSet: void <init>(com.google.common.collect.ImmutableList)>(v);
return v;
}
public static com.google.common.collect.ImmutableRangeSet copyOf(java.lang.Iterable)
{
com.google.common.collect.ImmutableRangeSet$Builder v, v;
com.google.common.collect.ImmutableRangeSet v;
java.lang.Iterable v;
v := @parameter: java.lang.Iterable;
v = new com.google.common.collect.ImmutableRangeSet$Builder;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet$Builder: void <init>()>();
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet$Builder: com.google.common.collect.ImmutableRangeSet$Builder addAll(java.lang.Iterable)>(v);
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet$Builder: com.google.common.collect.ImmutableRangeSet build()>();
return v;
}
public static com.google.common.collect.ImmutableRangeSet unionOf(java.lang.Iterable)
{
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.TreeRangeSet v;
java.lang.Iterable v;
v := @parameter: java.lang.Iterable;
v = staticinvoke <com.google.common.collect.TreeRangeSet: com.google.common.collect.TreeRangeSet create(java.lang.Iterable)>(v);
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet copyOf(com.google.common.collect.RangeSet)>(v);
return v;
}
void <init>(com.google.common.collect.ImmutableList)
{
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.ImmutableList v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.ImmutableList;
specialinvoke v.<com.google.common.collect.AbstractRangeSet: void <init>()>();
v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges> = v;
return;
}
private void <init>(com.google.common.collect.ImmutableList, com.google.common.collect.ImmutableRangeSet)
{
com.google.common.collect.ImmutableRangeSet v, v;
com.google.common.collect.ImmutableList v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.ImmutableList;
v := @parameter: com.google.common.collect.ImmutableRangeSet;
specialinvoke v.<com.google.common.collect.AbstractRangeSet: void <init>()>();
v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges> = v;
v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet complement> = v;
return;
}
public boolean intersects(com.google.common.collect.Range)
{
com.google.common.collect.SortedLists$KeyPresentBehavior v;
com.google.common.collect.SortedLists$KeyAbsentBehavior v;
com.google.common.collect.ImmutableList v, v, v, v, v, v;
int v, v, v, v;
com.google.common.collect.ImmutableRangeSet v;
boolean v, v, v, v, v;
com.google.common.collect.Cut v;
com.google.common.base.Function v;
com.google.common.collect.Range v, v, v;
com.google.common.collect.Ordering v;
java.lang.Object v, v, v, v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.Range;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.base.Function lowerBoundFn()>();
v = v.<com.google.common.collect.Range: com.google.common.collect.Cut lowerBound>;
v = staticinvoke <com.google.common.collect.Ordering: com.google.common.collect.Ordering natural()>();
v = <com.google.common.collect.SortedLists$KeyPresentBehavior: com.google.common.collect.SortedLists$KeyPresentBehavior ANY_PRESENT>;
v = <com.google.common.collect.SortedLists$KeyAbsentBehavior: com.google.common.collect.SortedLists$KeyAbsentBehavior NEXT_HIGHER>;
v = staticinvoke <com.google.common.collect.SortedLists: int binarySearch(java.util.List,com.google.common.base.Function,java.lang.Object,java.util.Comparator,com.google.common.collect.SortedLists$KeyPresentBehavior,com.google.common.collect.SortedLists$KeyAbsentBehavior)>(v, v, v, v, v, v);
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: int size()>();
if v >= v goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean isConnected(com.google.common.collect.Range)>(v);
if v == 0 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: com.google.common.collect.Range intersection(com.google.common.collect.Range)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean isEmpty()>();
if v != 0 goto label;
return 1;
label:
if v <= 0 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = v - 1;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean isConnected(com.google.common.collect.Range)>(v);
if v == 0 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = v - 1;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: com.google.common.collect.Range intersection(com.google.common.collect.Range)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean isEmpty()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean encloses(com.google.common.collect.Range)
{
com.google.common.collect.Cut v;
com.google.common.base.Function v;
com.google.common.collect.SortedLists$KeyPresentBehavior v;
com.google.common.collect.Range v;
com.google.common.collect.SortedLists$KeyAbsentBehavior v;
com.google.common.collect.ImmutableList v, v;
com.google.common.collect.Ordering v;
int v, v;
java.lang.Object v;
com.google.common.collect.ImmutableRangeSet v;
boolean v, v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.Range;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.base.Function lowerBoundFn()>();
v = v.<com.google.common.collect.Range: com.google.common.collect.Cut lowerBound>;
v = staticinvoke <com.google.common.collect.Ordering: com.google.common.collect.Ordering natural()>();
v = <com.google.common.collect.SortedLists$KeyPresentBehavior: com.google.common.collect.SortedLists$KeyPresentBehavior ANY_PRESENT>;
v = <com.google.common.collect.SortedLists$KeyAbsentBehavior: com.google.common.collect.SortedLists$KeyAbsentBehavior NEXT_LOWER>;
v = staticinvoke <com.google.common.collect.SortedLists: int binarySearch(java.util.List,com.google.common.base.Function,java.lang.Object,java.util.Comparator,com.google.common.collect.SortedLists$KeyPresentBehavior,com.google.common.collect.SortedLists$KeyAbsentBehavior)>(v, v, v, v, v, v);
v = (int) -1;
if v == v goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean encloses(com.google.common.collect.Range)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public com.google.common.collect.Range rangeContaining(java.lang.Comparable)
{
com.google.common.collect.Cut v;
com.google.common.base.Function v;
com.google.common.collect.SortedLists$KeyPresentBehavior v;
com.google.common.collect.Range v;
com.google.common.collect.SortedLists$KeyAbsentBehavior v;
com.google.common.collect.ImmutableList v, v;
com.google.common.collect.Ordering v;
int v, v;
java.lang.Comparable v;
java.lang.Object v;
com.google.common.collect.ImmutableRangeSet v;
boolean v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: java.lang.Comparable;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.base.Function lowerBoundFn()>();
v = staticinvoke <com.google.common.collect.Cut: com.google.common.collect.Cut belowValue(java.lang.Comparable)>(v);
v = staticinvoke <com.google.common.collect.Ordering: com.google.common.collect.Ordering natural()>();
v = <com.google.common.collect.SortedLists$KeyPresentBehavior: com.google.common.collect.SortedLists$KeyPresentBehavior ANY_PRESENT>;
v = <com.google.common.collect.SortedLists$KeyAbsentBehavior: com.google.common.collect.SortedLists$KeyAbsentBehavior NEXT_LOWER>;
v = staticinvoke <com.google.common.collect.SortedLists: int binarySearch(java.util.List,com.google.common.base.Function,java.lang.Object,java.util.Comparator,com.google.common.collect.SortedLists$KeyPresentBehavior,com.google.common.collect.SortedLists$KeyAbsentBehavior)>(v, v, v, v, v, v);
v = (int) -1;
if v == v goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean contains(java.lang.Comparable)>(v);
if v == 0 goto label;
v = v;
goto label;
label:
v = null;
label:
return v;
label:
return null;
}
public com.google.common.collect.Range span()
{
com.google.common.collect.Cut v, v;
com.google.common.collect.Range v;
com.google.common.collect.ImmutableList v, v, v, v;
int v, v;
java.lang.Object v, v;
com.google.common.collect.ImmutableRangeSet v;
java.util.NoSuchElementException v;
boolean v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isEmpty()>();
if v == 0 goto label;
v = new java.util.NoSuchElementException;
specialinvoke v.<java.util.NoSuchElementException: void <init>()>();
throw v;
label:
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(0);
v = v.<com.google.common.collect.Range: com.google.common.collect.Cut lowerBound>;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: int size()>();
v = v - 1;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = v.<com.google.common.collect.Range: com.google.common.collect.Cut upperBound>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Range create(com.google.common.collect.Cut,com.google.common.collect.Cut)>(v, v);
return v;
}
public boolean isEmpty()
{
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.ImmutableList v;
boolean v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isEmpty()>();
return v;
}
public void add(com.google.common.collect.Range)
{
com.google.common.collect.Range v;
java.lang.UnsupportedOperationException v;
com.google.common.collect.ImmutableRangeSet v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.Range;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public void addAll(com.google.common.collect.RangeSet)
{
java.lang.UnsupportedOperationException v;
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.RangeSet v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.RangeSet;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public void addAll(java.lang.Iterable)
{
java.lang.UnsupportedOperationException v;
com.google.common.collect.ImmutableRangeSet v;
java.lang.Iterable v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: java.lang.Iterable;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public void remove(com.google.common.collect.Range)
{
com.google.common.collect.Range v;
java.lang.UnsupportedOperationException v;
com.google.common.collect.ImmutableRangeSet v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.Range;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public void removeAll(com.google.common.collect.RangeSet)
{
java.lang.UnsupportedOperationException v;
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.RangeSet v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.RangeSet;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public void removeAll(java.lang.Iterable)
{
java.lang.UnsupportedOperationException v;
com.google.common.collect.ImmutableRangeSet v;
java.lang.Iterable v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: java.lang.Iterable;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
}
public com.google.common.collect.ImmutableSet asRanges()
{
com.google.common.collect.ImmutableSet v;
com.google.common.collect.ImmutableList v, v;
com.google.common.collect.Ordering v;
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.RegularImmutableSortedSet v;
boolean v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableSet: com.google.common.collect.ImmutableSet of()>();
return v;
label:
v = new com.google.common.collect.RegularImmutableSortedSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Ordering rangeLexOrdering()>();
specialinvoke v.<com.google.common.collect.RegularImmutableSortedSet: void <init>(com.google.common.collect.ImmutableList,java.util.Comparator)>(v, v);
return v;
}
public com.google.common.collect.ImmutableSet asDescendingSetOfRanges()
{
com.google.common.collect.ImmutableSet v;
com.google.common.collect.ImmutableList v, v, v;
com.google.common.collect.Ordering v, v;
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.RegularImmutableSortedSet v;
boolean v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableSet: com.google.common.collect.ImmutableSet of()>();
return v;
label:
v = new com.google.common.collect.RegularImmutableSortedSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList reverse()>();
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Ordering rangeLexOrdering()>();
v = virtualinvoke v.<com.google.common.collect.Ordering: com.google.common.collect.Ordering reverse()>();
specialinvoke v.<com.google.common.collect.RegularImmutableSortedSet: void <init>(com.google.common.collect.ImmutableList,java.util.Comparator)>(v, v);
return v;
}
public com.google.common.collect.ImmutableRangeSet complement()
{
com.google.common.collect.Range v;
com.google.common.collect.ImmutableList v, v, v;
int v;
com.google.common.collect.ImmutableRangeSet$ComplementRanges v;
java.lang.Object v;
com.google.common.collect.ImmutableRangeSet v, v, v, v, v;
boolean v, v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet complement>;
if v == null goto label;
return v;
label:
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet all()>();
v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet complement> = v;
return v;
label:
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: int size()>();
if v != 1 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: java.lang.Object get(int)>(0);
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Range all()>();
v = virtualinvoke v.<com.google.common.collect.Range: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet of()>();
v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet complement> = v;
return v;
label:
v = new com.google.common.collect.ImmutableRangeSet$ComplementRanges;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet$ComplementRanges: void <init>(com.google.common.collect.ImmutableRangeSet)>(v);
v = new com.google.common.collect.ImmutableRangeSet;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet: void <init>(com.google.common.collect.ImmutableList,com.google.common.collect.ImmutableRangeSet)>(v, v);
v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet complement> = v;
return v;
}
public com.google.common.collect.ImmutableRangeSet union(com.google.common.collect.RangeSet)
{
com.google.common.collect.ImmutableSet v;
com.google.common.collect.RangeSet v;
java.util.Set v;
com.google.common.collect.ImmutableRangeSet v, v;
java.lang.Iterable v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.RangeSet;
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableSet asRanges()>();
v = interfaceinvoke v.<com.google.common.collect.RangeSet: java.util.Set asRanges()>();
v = staticinvoke <com.google.common.collect.Iterables: java.lang.Iterable concat(java.lang.Iterable,java.lang.Iterable)>(v, v);
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet unionOf(java.lang.Iterable)>(v);
return v;
}
public com.google.common.collect.ImmutableRangeSet intersection(com.google.common.collect.RangeSet)
{
com.google.common.collect.RangeSet v, v;
com.google.common.collect.ImmutableRangeSet v, v;
com.google.common.collect.TreeRangeSet v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.RangeSet;
v = staticinvoke <com.google.common.collect.TreeRangeSet: com.google.common.collect.TreeRangeSet create(com.google.common.collect.RangeSet)>(v);
v = interfaceinvoke v.<com.google.common.collect.RangeSet: com.google.common.collect.RangeSet complement()>();
interfaceinvoke v.<com.google.common.collect.RangeSet: void removeAll(com.google.common.collect.RangeSet)>(v);
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet copyOf(com.google.common.collect.RangeSet)>(v);
return v;
}
public com.google.common.collect.ImmutableRangeSet difference(com.google.common.collect.RangeSet)
{
com.google.common.collect.RangeSet v;
com.google.common.collect.ImmutableRangeSet v, v;
com.google.common.collect.TreeRangeSet v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.RangeSet;
v = staticinvoke <com.google.common.collect.TreeRangeSet: com.google.common.collect.TreeRangeSet create(com.google.common.collect.RangeSet)>(v);
interfaceinvoke v.<com.google.common.collect.RangeSet: void removeAll(com.google.common.collect.RangeSet)>(v);
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet copyOf(com.google.common.collect.RangeSet)>(v);
return v;
}
private com.google.common.collect.ImmutableList intersectRanges(com.google.common.collect.Range)
{
com.google.common.collect.SortedLists$KeyPresentBehavior v, v;
com.google.common.collect.SortedLists$KeyAbsentBehavior v, v;
com.google.common.collect.ImmutableList v, v, v, v, v, v, v;
int v, v, v;
com.google.common.collect.ImmutableRangeSet v;
boolean v, v, v, v, v;
com.google.common.collect.Cut v, v;
com.google.common.base.Function v, v;
com.google.common.collect.ImmutableRangeSet$1 v;
com.google.common.collect.Range v, v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.Range;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<com.google.common.collect.Range: boolean isEmpty()>();
if v == 0 goto label;
label:
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList of()>();
return v;
label:
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.Range span()>();
v = virtualinvoke v.<com.google.common.collect.Range: boolean encloses(com.google.common.collect.Range)>(v);
if v == 0 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
return v;
label:
v = virtualinvoke v.<com.google.common.collect.Range: boolean hasLowerBound()>();
if v == 0 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.base.Function upperBoundFn()>();
v = v.<com.google.common.collect.Range: com.google.common.collect.Cut lowerBound>;
v = <com.google.common.collect.SortedLists$KeyPresentBehavior: com.google.common.collect.SortedLists$KeyPresentBehavior FIRST_AFTER>;
v = <com.google.common.collect.SortedLists$KeyAbsentBehavior: com.google.common.collect.SortedLists$KeyAbsentBehavior NEXT_HIGHER>;
v = staticinvoke <com.google.common.collect.SortedLists: int binarySearch(java.util.List,com.google.common.base.Function,java.lang.Comparable,com.google.common.collect.SortedLists$KeyPresentBehavior,com.google.common.collect.SortedLists$KeyAbsentBehavior)>(v, v, v, v, v);
goto label;
label:
v = 0;
label:
v = virtualinvoke v.<com.google.common.collect.Range: boolean hasUpperBound()>();
if v == 0 goto label;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = staticinvoke <com.google.common.collect.Range: com.google.common.base.Function lowerBoundFn()>();
v = v.<com.google.common.collect.Range: com.google.common.collect.Cut upperBound>;
v = <com.google.common.collect.SortedLists$KeyPresentBehavior: com.google.common.collect.SortedLists$KeyPresentBehavior FIRST_PRESENT>;
v = <com.google.common.collect.SortedLists$KeyAbsentBehavior: com.google.common.collect.SortedLists$KeyAbsentBehavior NEXT_HIGHER>;
v = staticinvoke <com.google.common.collect.SortedLists: int binarySearch(java.util.List,com.google.common.base.Function,java.lang.Comparable,com.google.common.collect.SortedLists$KeyPresentBehavior,com.google.common.collect.SortedLists$KeyAbsentBehavior)>(v, v, v, v, v);
goto label;
label:
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: int size()>();
label:
v = v - v;
if v != 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList of()>();
return v;
label:
v = new com.google.common.collect.ImmutableRangeSet$1;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet$1: void <init>(com.google.common.collect.ImmutableRangeSet,int,int,com.google.common.collect.Range)>(v, v, v, v);
return v;
}
public com.google.common.collect.ImmutableRangeSet subRangeSet(com.google.common.collect.Range)
{
com.google.common.collect.Range v, v;
com.google.common.collect.ImmutableList v;
com.google.common.collect.ImmutableRangeSet v, v, v;
boolean v, v, v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.Range;
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.Range span()>();
v = virtualinvoke v.<com.google.common.collect.Range: boolean encloses(com.google.common.collect.Range)>(v);
if v == 0 goto label;
return v;
label:
v = virtualinvoke v.<com.google.common.collect.Range: boolean isConnected(com.google.common.collect.Range)>(v);
if v == 0 goto label;
v = new com.google.common.collect.ImmutableRangeSet;
v = specialinvoke v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList intersectRanges(com.google.common.collect.Range)>(v);
specialinvoke v.<com.google.common.collect.ImmutableRangeSet: void <init>(com.google.common.collect.ImmutableList)>(v);
return v;
label:
v = staticinvoke <com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet of()>();
return v;
}
public com.google.common.collect.ImmutableSortedSet asSet(com.google.common.collect.DiscreteDomain)
{
com.google.common.collect.ImmutableSortedSet v;
com.google.common.collect.Range v, v;
java.lang.IllegalArgumentException v, v;
com.google.common.collect.DiscreteDomain v;
com.google.common.collect.ImmutableRangeSet$AsSet v;
com.google.common.collect.ImmutableRangeSet v;
java.util.NoSuchElementException v;
boolean v, v, v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v := @parameter: com.google.common.collect.DiscreteDomain;
staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <com.google.common.collect.ImmutableSortedSet: com.google.common.collect.ImmutableSortedSet of()>();
return v;
label:
v = virtualinvoke v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.Range span()>();
v = virtualinvoke v.<com.google.common.collect.Range: com.google.common.collect.Range canonical(com.google.common.collect.DiscreteDomain)>(v);
v = virtualinvoke v.<com.google.common.collect.Range: boolean hasLowerBound()>();
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Neither the DiscreteDomain nor this range set are bounded below");
throw v;
label:
v = virtualinvoke v.<com.google.common.collect.Range: boolean hasUpperBound()>();
if v != 0 goto label;
label:
virtualinvoke v.<com.google.common.collect.DiscreteDomain: java.lang.Comparable maxValue()>();
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Neither the DiscreteDomain nor this range set are bounded above");
throw v;
label:
v = new com.google.common.collect.ImmutableRangeSet$AsSet;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet$AsSet: void <init>(com.google.common.collect.ImmutableRangeSet,com.google.common.collect.DiscreteDomain)>(v, v);
return v;
catch java.util.NoSuchElementException from label to label with label;
}
boolean isPartialView()
{
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.ImmutableList v;
boolean v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
v = virtualinvoke v.<com.google.common.collect.ImmutableList: boolean isPartialView()>();
return v;
}
public static com.google.common.collect.ImmutableRangeSet$Builder builder()
{
com.google.common.collect.ImmutableRangeSet$Builder v;
v = new com.google.common.collect.ImmutableRangeSet$Builder;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet$Builder: void <init>()>();
return v;
}
java.lang.Object writeReplace()
{
com.google.common.collect.ImmutableRangeSet v;
com.google.common.collect.ImmutableRangeSet$SerializedForm v;
com.google.common.collect.ImmutableList v;
v := @this: com.google.common.collect.ImmutableRangeSet;
v = new com.google.common.collect.ImmutableRangeSet$SerializedForm;
v = v.<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableList ranges>;
specialinvoke v.<com.google.common.collect.ImmutableRangeSet$SerializedForm: void <init>(com.google.common.collect.ImmutableList)>(v);
return v;
}
static void <clinit>()
{
com.google.common.collect.ImmutableList v, v;
com.google.common.collect.Range v;
com.google.common.collect.ImmutableRangeSet v, v;
v = new com.google.common.collect.ImmutableRangeSet;
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList of()>();
specialinvoke v.<com.google.common.collect.ImmutableRangeSet: void <init>(com.google.common.collect.ImmutableList)>(v);
<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet EMPTY> = v;
v = new com.google.common.collect.ImmutableRangeSet;
v = staticinvoke <com.google.common.collect.Range: com.google.common.collect.Range all()>();
v = staticinvoke <com.google.common.collect.ImmutableList: com.google.common.collect.ImmutableList of(java.lang.Object)>(v);
specialinvoke v.<com.google.common.collect.ImmutableRangeSet: void <init>(com.google.common.collect.ImmutableList)>(v);
<com.google.common.collect.ImmutableRangeSet: com.google.common.collect.ImmutableRangeSet ALL> = v;
return;
}
}