.class public final Lcom/google/common/collect/Comparators; .super Ljava/lang/Object; .source "Comparators.java" # annotations .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation build Lcom/google/common/annotations/GwtCompatible; .end annotation .annotation runtime Lcom/google/common/collect/ElementTypesAreNonnullByDefault; .end annotation # direct methods .method private constructor ()V .locals 0 .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static isInOrder(Ljava/lang/Iterable;Ljava/util/Comparator;)Z .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable<", "+TT;>;", "Ljava/util/Comparator<", "TT;>;)Z" } .end annotation .line 1 invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; .line 2 invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object p0 .line 3 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_1 .line 4 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 .line 5 :goto_0 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_1 .line 6 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 .line 7 invoke-interface {p1, v0, v1}, Ljava/util/Comparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I move-result v0 if-lez v0, :cond_0 const/4 p0, 0x0 return p0 :cond_0 move-object v0, v1 goto :goto_0 :cond_1 const/4 p0, 0x1 return p0 .end method .method public static isInStrictOrder(Ljava/lang/Iterable;Ljava/util/Comparator;)Z .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Iterable<", "+TT;>;", "Ljava/util/Comparator<", "TT;>;)Z" } .end annotation .line 1 invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; .line 2 invoke-interface {p0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object p0 .line 3 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_1 .line 4 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 .line 5 :goto_0 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_1 .line 6 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 .line 7 invoke-interface {p1, v0, v1}, Ljava/util/Comparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I move-result v0 if-ltz v0, :cond_0 const/4 p0, 0x0 return p0 :cond_0 move-object v0, v1 goto :goto_0 :cond_1 const/4 p0, 0x1 return p0 .end method .method public static lexicographical(Ljava/util/Comparator;)Ljava/util/Comparator; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Comparator<", "TT;>;)", "Ljava/util/Comparator<", "Ljava/lang/Iterable<", "TS;>;>;" } .end annotation .line 1 new-instance v0, Lcom/google/common/collect/LexicographicalOrdering; invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p0 check-cast p0, Ljava/util/Comparator; invoke-direct {v0, p0}, Lcom/google/common/collect/LexicographicalOrdering;->(Ljava/util/Comparator;)V return-object v0 .end method .method public static max(Ljava/lang/Comparable;Ljava/lang/Comparable;)Ljava/lang/Comparable; .locals 1 .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation system Ldalvik/annotation/Signature; value = { ";>(TT;TT;)TT;" } .end annotation .line 1 invoke-interface {p0, p1}, Ljava/lang/Comparable;->compareTo(Ljava/lang/Object;)I move-result v0 if-ltz v0, :cond_0 goto :goto_0 :cond_0 move-object p0, p1 :goto_0 return-object p0 .end method .method public static max(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/Comparator;)Ljava/lang/Object; .locals 0 .param p0 # Ljava/lang/Object; .annotation runtime Lcom/google/common/collect/ParametricNullness; .end annotation .end param .param p1 # Ljava/lang/Object; .annotation runtime Lcom/google/common/collect/ParametricNullness; .end annotation .end param .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation runtime Lcom/google/common/collect/ParametricNullness; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(TT;TT;", "Ljava/util/Comparator<", "TT;>;)TT;" } .end annotation .line 2 invoke-interface {p2, p0, p1}, Ljava/util/Comparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I move-result p2 if-ltz p2, :cond_0 goto :goto_0 :cond_0 move-object p0, p1 :goto_0 return-object p0 .end method .method public static min(Ljava/lang/Comparable;Ljava/lang/Comparable;)Ljava/lang/Comparable; .locals 1 .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation system Ldalvik/annotation/Signature; value = { ";>(TT;TT;)TT;" } .end annotation .line 1 invoke-interface {p0, p1}, Ljava/lang/Comparable;->compareTo(Ljava/lang/Object;)I move-result v0 if-gtz v0, :cond_0 goto :goto_0 :cond_0 move-object p0, p1 :goto_0 return-object p0 .end method .method public static min(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/Comparator;)Ljava/lang/Object; .locals 0 .param p0 # Ljava/lang/Object; .annotation runtime Lcom/google/common/collect/ParametricNullness; .end annotation .end param .param p1 # Ljava/lang/Object; .annotation runtime Lcom/google/common/collect/ParametricNullness; .end annotation .end param .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation runtime Lcom/google/common/collect/ParametricNullness; .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(TT;TT;", "Ljava/util/Comparator<", "TT;>;)TT;" } .end annotation .line 2 invoke-interface {p2, p0, p1}, Ljava/util/Comparator;->compare(Ljava/lang/Object;Ljava/lang/Object;)I move-result p2 if-gtz p2, :cond_0 goto :goto_0 :cond_0 move-object p0, p1 :goto_0 return-object p0 .end method