.class public abstract Lcom/google/common/base/CharMatcher; .super Ljava/lang/Object; .source "CharMatcher.java" # interfaces .implements Lcom/google/common/base/Predicate; # annotations .annotation build Lcom/google/common/annotations/Beta; .end annotation .annotation build Lcom/google/common/annotations/GwtCompatible; emulated = true .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/google/common/base/CharMatcher$BitSetMatcher;, Lcom/google/common/base/CharMatcher$NegatedFastMatcher;, Lcom/google/common/base/CharMatcher$FastMatcher;, Lcom/google/common/base/CharMatcher$Or;, Lcom/google/common/base/CharMatcher$And;, Lcom/google/common/base/CharMatcher$NegatedMatcher;, Lcom/google/common/base/CharMatcher$RangesMatcher; } .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/lang/Object;", "Lcom/google/common/base/Predicate", "<", "Ljava/lang/Character;", ">;" } .end annotation # static fields .field public static final ANY:Lcom/google/common/base/CharMatcher; .field public static final ASCII:Lcom/google/common/base/CharMatcher; .field public static final BREAKING_WHITESPACE:Lcom/google/common/base/CharMatcher; .field public static final DIGIT:Lcom/google/common/base/CharMatcher; .field private static final DISTINCT_CHARS:I = 0x10000 .field public static final INVISIBLE:Lcom/google/common/base/CharMatcher; .field public static final JAVA_DIGIT:Lcom/google/common/base/CharMatcher; .field public static final JAVA_ISO_CONTROL:Lcom/google/common/base/CharMatcher; .field public static final JAVA_LETTER:Lcom/google/common/base/CharMatcher; .field public static final JAVA_LETTER_OR_DIGIT:Lcom/google/common/base/CharMatcher; .field public static final JAVA_LOWER_CASE:Lcom/google/common/base/CharMatcher; .field public static final JAVA_UPPER_CASE:Lcom/google/common/base/CharMatcher; .field private static final NINES:Ljava/lang/String; .field public static final NONE:Lcom/google/common/base/CharMatcher; .field public static final SINGLE_WIDTH:Lcom/google/common/base/CharMatcher; .field public static final WHITESPACE:Lcom/google/common/base/CharMatcher; .field static final WHITESPACE_MULTIPLIER:I = 0x6449bf0a .field static final WHITESPACE_SHIFT:I .field static final WHITESPACE_TABLE:Ljava/lang/String; = "\u2002\u3000\r\u0085\u200a\u2005\u2000\u3000\u2029\u000b\u3000\u2008\u2003\u205f\u3000\u1680\t \u2006\u2001\u202f\u00a0\u000c\u2009\u3000\u2004\u3000\u3000\u2028\n\u2007\u3000" .field private static final ZEROES:Ljava/lang/String; = "0\u0660\u06f0\u07c0\u0966\u09e6\u0a66\u0ae6\u0b66\u0be6\u0c66\u0ce6\u0d66\u0e50\u0ed0\u0f20\u1040\u1090\u17e0\u1810\u1946\u19d0\u1b50\u1bb0\u1c40\u1c50\ua620\ua8d0\ua900\uaa50\uff10" # instance fields .field final description:Ljava/lang/String; # direct methods .method static constructor ()V .locals 6 .prologue const/16 v5, 0x7f const/4 v1, 0x0 .line 67 new-instance v0, Lcom/google/common/base/CharMatcher$1; invoke-direct {v0}, Lcom/google/common/base/CharMatcher$1;->()V sput-object v0, Lcom/google/common/base/CharMatcher;->BREAKING_WHITESPACE:Lcom/google/common/base/CharMatcher; .line 100 const-string v0, "CharMatcher.ASCII" invoke-static {v1, v5, v0}, Lcom/google/common/base/CharMatcher;->inRange(CCLjava/lang/String;)Lcom/google/common/base/CharMatcher; move-result-object v0 sput-object v0, Lcom/google/common/base/CharMatcher;->ASCII:Lcom/google/common/base/CharMatcher; .line 138 new-instance v2, Ljava/lang/StringBuilder; const-string v0, "0\u0660\u06f0\u07c0\u0966\u09e6\u0a66\u0ae6\u0b66\u0be6\u0c66\u0ce6\u0d66\u0e50\u0ed0\u0f20\u1040\u1090\u17e0\u1810\u1946\u19d0\u1b50\u1bb0\u1c40\u1c50\ua620\ua8d0\ua900\uaa50\uff10" invoke-virtual {v0}, Ljava/lang/String;->length()I move-result v0 invoke-direct {v2, v0}, Ljava/lang/StringBuilder;->(I)V move v0, v1 .line 139 :goto_0 const-string v3, "0\u0660\u06f0\u07c0\u0966\u09e6\u0a66\u0ae6\u0b66\u0be6\u0c66\u0ce6\u0d66\u0e50\u0ed0\u0f20\u1040\u1090\u17e0\u1810\u1946\u19d0\u1b50\u1bb0\u1c40\u1c50\ua620\ua8d0\ua900\uaa50\uff10" invoke-virtual {v3}, Ljava/lang/String;->length()I move-result v3 if-ge v0, v3, :cond_0 .line 140 const-string v3, "0\u0660\u06f0\u07c0\u0966\u09e6\u0a66\u0ae6\u0b66\u0be6\u0c66\u0ce6\u0d66\u0e50\u0ed0\u0f20\u1040\u1090\u17e0\u1810\u1946\u19d0\u1b50\u1bb0\u1c40\u1c50\ua620\ua8d0\ua900\uaa50\uff10" invoke-virtual {v3, v0}, Ljava/lang/String;->charAt(I)C move-result v3 add-int/lit8 v3, v3, 0x9 int-to-char v3, v3 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; .line 139 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 142 :cond_0 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/google/common/base/CharMatcher;->NINES:Ljava/lang/String; .line 150 new-instance v0, Lcom/google/common/base/CharMatcher$RangesMatcher; const-string v2, "CharMatcher.DIGIT" const-string v3, "0\u0660\u06f0\u07c0\u0966\u09e6\u0a66\u0ae6\u0b66\u0be6\u0c66\u0ce6\u0d66\u0e50\u0ed0\u0f20\u1040\u1090\u17e0\u1810\u1946\u19d0\u1b50\u1bb0\u1c40\u1c50\ua620\ua8d0\ua900\uaa50\uff10" invoke-virtual {v3}, Ljava/lang/String;->toCharArray()[C move-result-object v3 sget-object v4, Lcom/google/common/base/CharMatcher;->NINES:Ljava/lang/String; invoke-virtual {v4}, Ljava/lang/String;->toCharArray()[C move-result-object v4 invoke-direct {v0, v2, v3, v4}, Lcom/google/common/base/CharMatcher$RangesMatcher;->(Ljava/lang/String;[C[C)V sput-object v0, Lcom/google/common/base/CharMatcher;->DIGIT:Lcom/google/common/base/CharMatcher; .line 158 new-instance v0, Lcom/google/common/base/CharMatcher$2; const-string v2, "CharMatcher.JAVA_DIGIT" invoke-direct {v0, v2}, Lcom/google/common/base/CharMatcher$2;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->JAVA_DIGIT:Lcom/google/common/base/CharMatcher; .line 169 new-instance v0, Lcom/google/common/base/CharMatcher$3; const-string v2, "CharMatcher.JAVA_LETTER" invoke-direct {v0, v2}, Lcom/google/common/base/CharMatcher$3;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->JAVA_LETTER:Lcom/google/common/base/CharMatcher; .line 179 new-instance v0, Lcom/google/common/base/CharMatcher$4; const-string v2, "CharMatcher.JAVA_LETTER_OR_DIGIT" invoke-direct {v0, v2}, Lcom/google/common/base/CharMatcher$4;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->JAVA_LETTER_OR_DIGIT:Lcom/google/common/base/CharMatcher; .line 190 new-instance v0, Lcom/google/common/base/CharMatcher$5; const-string v2, "CharMatcher.JAVA_UPPER_CASE" invoke-direct {v0, v2}, Lcom/google/common/base/CharMatcher$5;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->JAVA_UPPER_CASE:Lcom/google/common/base/CharMatcher; .line 201 new-instance v0, Lcom/google/common/base/CharMatcher$6; const-string v2, "CharMatcher.JAVA_LOWER_CASE" invoke-direct {v0, v2}, Lcom/google/common/base/CharMatcher$6;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->JAVA_LOWER_CASE:Lcom/google/common/base/CharMatcher; .line 212 const/16 v0, 0x1f invoke-static {v1, v0}, Lcom/google/common/base/CharMatcher;->inRange(CC)Lcom/google/common/base/CharMatcher; move-result-object v0 const/16 v1, 0x9f invoke-static {v5, v1}, Lcom/google/common/base/CharMatcher;->inRange(CC)Lcom/google/common/base/CharMatcher; move-result-object v1 invoke-virtual {v0, v1}, Lcom/google/common/base/CharMatcher;->or(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher; move-result-object v0 const-string v1, "CharMatcher.JAVA_ISO_CONTROL" invoke-virtual {v0, v1}, Lcom/google/common/base/CharMatcher;->withToString(Ljava/lang/String;)Lcom/google/common/base/CharMatcher; move-result-object v0 sput-object v0, Lcom/google/common/base/CharMatcher;->JAVA_ISO_CONTROL:Lcom/google/common/base/CharMatcher; .line 222 new-instance v0, Lcom/google/common/base/CharMatcher$RangesMatcher; const-string v1, "CharMatcher.INVISIBLE" const-string v2, "\u0000\u007f\u00ad\u0600\u061c\u06dd\u070f\u1680\u180e\u2000\u2028\u205f\u2066\u2067\u2068\u2069\u206a\u3000\ud800\ufeff\ufff9\ufffa" invoke-virtual {v2}, Ljava/lang/String;->toCharArray()[C move-result-object v2 const-string v3, " \u00a0\u00ad\u0604\u061c\u06dd\u070f\u1680\u180e\u200f\u202f\u2064\u2066\u2067\u2068\u2069\u206f\u3000\uf8ff\ufeff\ufff9\ufffb" invoke-virtual {v3}, Ljava/lang/String;->toCharArray()[C move-result-object v3 invoke-direct {v0, v1, v2, v3}, Lcom/google/common/base/CharMatcher$RangesMatcher;->(Ljava/lang/String;[C[C)V sput-object v0, Lcom/google/common/base/CharMatcher;->INVISIBLE:Lcom/google/common/base/CharMatcher; .line 247 new-instance v0, Lcom/google/common/base/CharMatcher$RangesMatcher; const-string v1, "CharMatcher.SINGLE_WIDTH" const-string v2, "\u0000\u05be\u05d0\u05f3\u0600\u0750\u0e00\u1e00\u2100\ufb50\ufe70\uff61" invoke-virtual {v2}, Ljava/lang/String;->toCharArray()[C move-result-object v2 const-string v3, "\u04f9\u05be\u05ea\u05f4\u06ff\u077f\u0e7f\u20af\u213a\ufdff\ufeff\uffdc" invoke-virtual {v3}, Ljava/lang/String;->toCharArray()[C move-result-object v3 invoke-direct {v0, v1, v2, v3}, Lcom/google/common/base/CharMatcher$RangesMatcher;->(Ljava/lang/String;[C[C)V sput-object v0, Lcom/google/common/base/CharMatcher;->SINGLE_WIDTH:Lcom/google/common/base/CharMatcher; .line 252 new-instance v0, Lcom/google/common/base/CharMatcher$7; const-string v1, "CharMatcher.ANY" invoke-direct {v0, v1}, Lcom/google/common/base/CharMatcher$7;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->ANY:Lcom/google/common/base/CharMatcher; .line 328 new-instance v0, Lcom/google/common/base/CharMatcher$8; const-string v1, "CharMatcher.NONE" invoke-direct {v0, v1}, Lcom/google/common/base/CharMatcher$8;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->NONE:Lcom/google/common/base/CharMatcher; .line 1358 const-string v0, "\u2002\u3000\r\u0085\u200a\u2005\u2000\u3000\u2029\u000b\u3000\u2008\u2003\u205f\u3000\u1680\t \u2006\u2001\u202f\u00a0\u000c\u2009\u3000\u2004\u3000\u3000\u2028\n\u2007\u3000" invoke-virtual {v0}, Ljava/lang/String;->length()I move-result v0 add-int/lit8 v0, v0, -0x1 invoke-static {v0}, Ljava/lang/Integer;->numberOfLeadingZeros(I)I move-result v0 sput v0, Lcom/google/common/base/CharMatcher;->WHITESPACE_SHIFT:I .line 1371 new-instance v0, Lcom/google/common/base/CharMatcher$15; const-string v1, "WHITESPACE" invoke-direct {v0, v1}, Lcom/google/common/base/CharMatcher$15;->(Ljava/lang/String;)V sput-object v0, Lcom/google/common/base/CharMatcher;->WHITESPACE:Lcom/google/common/base/CharMatcher; return-void .end method .method protected constructor ()V .locals 1 .prologue .line 608 invoke-direct {p0}, Ljava/lang/Object;->()V .line 609 invoke-super {p0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v0 iput-object v0, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; .line 610 return-void .end method .method constructor (Ljava/lang/String;)V .locals 0 .prologue .line 600 invoke-direct {p0}, Ljava/lang/Object;->()V .line 601 iput-object p1, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; .line 602 return-void .end method .method public static anyOf(Ljava/lang/CharSequence;)Lcom/google/common/base/CharMatcher; .locals 5 .prologue const/4 v0, 0x0 .line 483 invoke-interface {p0}, Ljava/lang/CharSequence;->length()I move-result v1 packed-switch v1, :pswitch_data_0 .line 494 invoke-interface {p0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v1 invoke-virtual {v1}, Ljava/lang/String;->toCharArray()[C move-result-object v1 .line 495 invoke-static {v1}, Ljava/util/Arrays;->sort([C)V .line 496 new-instance v2, Ljava/lang/StringBuilder; const-string v3, "CharMatcher.anyOf(\"" invoke-direct {v2, v3}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V .line 497 array-length v3, v1 :goto_0 if-ge v0, v3, :cond_0 aget-char v4, v1, v0 .line 498 invoke-static {v4}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v4 invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 497 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 485 :pswitch_0 sget-object v0, Lcom/google/common/base/CharMatcher;->NONE:Lcom/google/common/base/CharMatcher; .line 501 :goto_1 return-object v0 .line 487 :pswitch_1 invoke-interface {p0, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v0 invoke-static {v0}, Lcom/google/common/base/CharMatcher;->is(C)Lcom/google/common/base/CharMatcher; move-result-object v0 goto :goto_1 .line 489 :pswitch_2 invoke-interface {p0, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v0 const/4 v1, 0x1 invoke-interface {p0, v1}, Ljava/lang/CharSequence;->charAt(I)C move-result v1 invoke-static {v0, v1}, Lcom/google/common/base/CharMatcher;->isEither(CC)Lcom/google/common/base/CharMatcher; move-result-object v0 goto :goto_1 .line 500 :cond_0 const-string v0, "\")" invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 501 new-instance v0, Lcom/google/common/base/CharMatcher$11; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v0, v2, v1}, Lcom/google/common/base/CharMatcher$11;->(Ljava/lang/String;[C)V goto :goto_1 .line 483 :pswitch_data_0 .packed-switch 0x0 :pswitch_0 :pswitch_1 :pswitch_2 .end packed-switch .end method .method private finishCollapseFrom(Ljava/lang/CharSequence;IICLjava/lang/StringBuilder;Z)Ljava/lang/String; .locals 3 .prologue .line 1318 move v0, p6 :goto_0 if-ge p2, p3, :cond_2 .line 1319 invoke-interface {p1, p2}, Ljava/lang/CharSequence;->charAt(I)C move-result v1 .line 1320 invoke-virtual {p0, v1}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-eqz v2, :cond_1 .line 1321 if-nez v0, :cond_0 .line 1322 invoke-virtual {p5, p4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; .line 1323 const/4 v0, 0x1 .line 1318 :cond_0 :goto_1 add-int/lit8 p2, p2, 0x1 goto :goto_0 .line 1326 :cond_1 invoke-virtual {p5, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; .line 1327 const/4 v0, 0x0 goto :goto_1 .line 1330 :cond_2 invoke-virtual {p5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public static forPredicate(Lcom/google/common/base/Predicate;)Lcom/google/common/base/CharMatcher; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/google/common/base/Predicate", "<-", "Ljava/lang/Character;", ">;)", "Lcom/google/common/base/CharMatcher;" } .end annotation .prologue .line 576 invoke-static {p0}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; .line 577 instance-of v0, p0, Lcom/google/common/base/CharMatcher; if-eqz v0, :cond_0 .line 578 check-cast p0, Lcom/google/common/base/CharMatcher; .line 581 :goto_0 return-object p0 .line 580 :cond_0 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "CharMatcher.forPredicate(" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, ")" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 .line 581 new-instance v0, Lcom/google/common/base/CharMatcher$14; invoke-direct {v0, v1, p0}, Lcom/google/common/base/CharMatcher$14;->(Ljava/lang/String;Lcom/google/common/base/Predicate;)V move-object p0, v0 goto :goto_0 .end method .method public static inRange(CC)Lcom/google/common/base/CharMatcher; .locals 2 .prologue .line 550 if-lt p1, p0, :cond_0 const/4 v0, 0x1 :goto_0 invoke-static {v0}, Lcom/google/common/base/Preconditions;->checkArgument(Z)V .line 551 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "CharMatcher.inRange(\'" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-static {p0}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "\', \'" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-static {p1}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "\')" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 554 invoke-static {p0, p1, v0}, Lcom/google/common/base/CharMatcher;->inRange(CCLjava/lang/String;)Lcom/google/common/base/CharMatcher; move-result-object v0 return-object v0 .line 550 :cond_0 const/4 v0, 0x0 goto :goto_0 .end method .method static inRange(CCLjava/lang/String;)Lcom/google/common/base/CharMatcher; .locals 1 .prologue .line 559 new-instance v0, Lcom/google/common/base/CharMatcher$13; invoke-direct {v0, p2, p0, p1}, Lcom/google/common/base/CharMatcher$13;->(Ljava/lang/String;CC)V return-object v0 .end method .method public static is(C)Lcom/google/common/base/CharMatcher; .locals 2 .prologue .line 415 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "CharMatcher.is(\'" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-static {p0}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "\')" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 416 new-instance v1, Lcom/google/common/base/CharMatcher$9; invoke-direct {v1, v0, p0}, Lcom/google/common/base/CharMatcher$9;->(Ljava/lang/String;C)V return-object v1 .end method .method private static isEither(CC)Lcom/google/common/base/CharMatcher; .locals 2 .prologue .line 519 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "CharMatcher.anyOf(\"" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-static {p0}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-static {p1}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "\")" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 521 new-instance v1, Lcom/google/common/base/CharMatcher$12; invoke-direct {v1, v0, p0, p1}, Lcom/google/common/base/CharMatcher$12;->(Ljava/lang/String;CC)V return-object v1 .end method .method public static isNot(C)Lcom/google/common/base/CharMatcher; .locals 2 .prologue .line 451 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "CharMatcher.isNot(\'" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-static {p0}, Lcom/google/common/base/CharMatcher;->showCharacter(C)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "\')" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 452 new-instance v1, Lcom/google/common/base/CharMatcher$10; invoke-direct {v1, v0, p0}, Lcom/google/common/base/CharMatcher$10;->(Ljava/lang/String;C)V return-object v1 .end method .method private static isSmall(II)Z .locals 1 .annotation build Lcom/google/common/annotations/GwtIncompatible; value = "SmallCharMatcher" .end annotation .prologue .line 879 const/16 v0, 0x3ff if-gt p0, v0, :cond_0 mul-int/lit8 v0, p0, 0x4 mul-int/lit8 v0, v0, 0x10 if-le p1, v0, :cond_0 const/4 v0, 0x1 :goto_0 return v0 :cond_0 const/4 v0, 0x0 goto :goto_0 .end method .method public static noneOf(Ljava/lang/CharSequence;)Lcom/google/common/base/CharMatcher; .locals 1 .prologue .line 539 invoke-static {p0}, Lcom/google/common/base/CharMatcher;->anyOf(Ljava/lang/CharSequence;)Lcom/google/common/base/CharMatcher; move-result-object v0 invoke-virtual {v0}, Lcom/google/common/base/CharMatcher;->negate()Lcom/google/common/base/CharMatcher; move-result-object v0 return-object v0 .end method .method private static precomputedPositive(ILjava/util/BitSet;Ljava/lang/String;)Lcom/google/common/base/CharMatcher; .locals 2 .annotation build Lcom/google/common/annotations/GwtIncompatible; value = "java.util.BitSet" .end annotation .prologue const/4 v0, 0x0 .line 861 packed-switch p0, :pswitch_data_0 .line 871 invoke-virtual {p1}, Ljava/util/BitSet;->length()I move-result v0 invoke-static {p0, v0}, Lcom/google/common/base/CharMatcher;->isSmall(II)Z move-result v0 if-eqz v0, :cond_0 invoke-static {p1, p2}, Lcom/google/common/base/SmallCharMatcher;->from(Ljava/util/BitSet;Ljava/lang/String;)Lcom/google/common/base/CharMatcher; move-result-object v0 :goto_0 return-object v0 .line 863 :pswitch_0 sget-object v0, Lcom/google/common/base/CharMatcher;->NONE:Lcom/google/common/base/CharMatcher; goto :goto_0 .line 865 :pswitch_1 invoke-virtual {p1, v0}, Ljava/util/BitSet;->nextSetBit(I)I move-result v0 int-to-char v0, v0 invoke-static {v0}, Lcom/google/common/base/CharMatcher;->is(C)Lcom/google/common/base/CharMatcher; move-result-object v0 goto :goto_0 .line 867 :pswitch_2 invoke-virtual {p1, v0}, Ljava/util/BitSet;->nextSetBit(I)I move-result v0 int-to-char v0, v0 .line 868 add-int/lit8 v1, v0, 0x1 invoke-virtual {p1, v1}, Ljava/util/BitSet;->nextSetBit(I)I move-result v1 int-to-char v1, v1 .line 869 invoke-static {v0, v1}, Lcom/google/common/base/CharMatcher;->isEither(CC)Lcom/google/common/base/CharMatcher; move-result-object v0 goto :goto_0 .line 871 :cond_0 new-instance v0, Lcom/google/common/base/CharMatcher$BitSetMatcher; const/4 v1, 0x0 invoke-direct {v0, p1, p2, v1}, Lcom/google/common/base/CharMatcher$BitSetMatcher;->(Ljava/util/BitSet;Ljava/lang/String;Lcom/google/common/base/CharMatcher$1;)V goto :goto_0 .line 861 :pswitch_data_0 .packed-switch 0x0 :pswitch_0 :pswitch_1 :pswitch_2 .end packed-switch .end method .method private static showCharacter(C)Ljava/lang/String; .locals 5 .prologue .line 229 const-string v1, "0123456789ABCDEF" .line 230 const/4 v0, 0x6 new-array v2, v0, [C fill-array-data v2, :array_0 .line 231 const/4 v0, 0x0 :goto_0 const/4 v3, 0x4 if-ge v0, v3, :cond_0 .line 232 rsub-int/lit8 v3, v0, 0x5 and-int/lit8 v4, p0, 0xf invoke-virtual {v1, v4}, Ljava/lang/String;->charAt(I)C move-result v4 aput-char v4, v2, v3 .line 233 shr-int/lit8 v3, p0, 0x4 int-to-char p0, v3 .line 231 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 235 :cond_0 invoke-static {v2}, Ljava/lang/String;->copyValueOf([C)Ljava/lang/String; move-result-object v0 return-object v0 .line 230 nop :array_0 .array-data 2 0x5cs 0x75s 0x0s 0x0s 0x0s 0x0s .end array-data .end method # virtual methods .method public and(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher; .locals 2 .prologue .line 677 new-instance v1, Lcom/google/common/base/CharMatcher$And; invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/google/common/base/CharMatcher; invoke-direct {v1, p0, v0}, Lcom/google/common/base/CharMatcher$And;->(Lcom/google/common/base/CharMatcher;Lcom/google/common/base/CharMatcher;)V return-object v1 .end method .method public apply(Ljava/lang/Character;)Z .locals 1 .annotation runtime Ljava/lang/Deprecated; .end annotation .prologue .line 1340 invoke-virtual {p1}, Ljava/lang/Character;->charValue()C move-result v0 invoke-virtual {p0, v0}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v0 return v0 .end method .method public bridge synthetic apply(Ljava/lang/Object;)Z .locals 1 .prologue .line 55 check-cast p1, Ljava/lang/Character; invoke-virtual {p0, p1}, Lcom/google/common/base/CharMatcher;->apply(Ljava/lang/Character;)Z move-result v0 return v0 .end method .method public collapseFrom(Ljava/lang/CharSequence;C)Ljava/lang/String; .locals 7 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue const/4 v1, 0x0 .line 1272 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v3 move v0, v1 .line 1273 :goto_0 if-ge v0, v3, :cond_3 .line 1274 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 .line 1275 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v4 if-eqz v4, :cond_1 .line 1276 if-ne v2, p2, :cond_2 add-int/lit8 v2, v3, -0x1 if-eq v0, v2, :cond_0 add-int/lit8 v2, v0, 0x1 invoke-interface {p1, v2}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-nez v2, :cond_2 .line 1279 :cond_0 add-int/lit8 v0, v0, 0x1 .line 1273 :cond_1 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 1281 :cond_2 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2, v3}, Ljava/lang/StringBuilder;->(I)V invoke-interface {p1, v1, v0}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence; move-result-object v1 invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; move-result-object v5 .line 1284 add-int/lit8 v2, v0, 0x1 const/4 v6, 0x1 move-object v0, p0 move-object v1, p1 move v4, p2 invoke-direct/range {v0 .. v6}, Lcom/google/common/base/CharMatcher;->finishCollapseFrom(Ljava/lang/CharSequence;IICLjava/lang/StringBuilder;Z)Ljava/lang/String; move-result-object v0 .line 1289 :goto_1 return-object v0 :cond_3 invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v0 goto :goto_1 .end method .method public countIn(Ljava/lang/CharSequence;)I .locals 3 .prologue const/4 v0, 0x0 .line 1039 move v1, v0 .line 1040 :goto_0 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v2 if-ge v0, v2, :cond_1 .line 1041 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-eqz v2, :cond_0 .line 1042 add-int/lit8 v1, v1, 0x1 .line 1040 :cond_0 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 1045 :cond_1 return v1 .end method .method public indexIn(Ljava/lang/CharSequence;)I .locals 3 .prologue .line 981 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v1 .line 982 const/4 v0, 0x0 :goto_0 if-ge v0, v1, :cond_1 .line 983 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-eqz v2, :cond_0 .line 987 :goto_1 return v0 .line 982 :cond_0 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 987 :cond_1 const/4 v0, -0x1 goto :goto_1 .end method .method public indexIn(Ljava/lang/CharSequence;I)I .locals 3 .prologue .line 1006 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v1 .line 1007 invoke-static {p2, v1}, Lcom/google/common/base/Preconditions;->checkPositionIndex(II)I move v0, p2 .line 1008 :goto_0 if-ge v0, v1, :cond_1 .line 1009 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-eqz v2, :cond_0 .line 1013 :goto_1 return v0 .line 1008 :cond_0 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 1013 :cond_1 const/4 v0, -0x1 goto :goto_1 .end method .method public lastIndexIn(Ljava/lang/CharSequence;)I .locals 2 .prologue .line 1027 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_1 .line 1028 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v1 invoke-virtual {p0, v1}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v1 if-eqz v1, :cond_0 .line 1032 :goto_1 return v0 .line 1027 :cond_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 1032 :cond_1 const/4 v0, -0x1 goto :goto_1 .end method .method public abstract matches(C)Z .end method .method public matchesAllOf(Ljava/lang/CharSequence;)Z .locals 2 .prologue .line 947 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_1 .line 948 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v1 invoke-virtual {p0, v1}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v1 if-nez v1, :cond_0 .line 949 const/4 v0, 0x0 .line 952 :goto_1 return v0 .line 947 :cond_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 952 :cond_1 const/4 v0, 0x1 goto :goto_1 .end method .method public matchesAnyOf(Ljava/lang/CharSequence;)Z .locals 1 .prologue .line 933 invoke-virtual {p0, p1}, Lcom/google/common/base/CharMatcher;->matchesNoneOf(Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_0 const/4 v0, 0x1 :goto_0 return v0 :cond_0 const/4 v0, 0x0 goto :goto_0 .end method .method public matchesNoneOf(Ljava/lang/CharSequence;)Z .locals 2 .prologue .line 967 invoke-virtual {p0, p1}, Lcom/google/common/base/CharMatcher;->indexIn(Ljava/lang/CharSequence;)I move-result v0 const/4 v1, -0x1 if-ne v0, v1, :cond_0 const/4 v0, 0x1 :goto_0 return v0 :cond_0 const/4 v0, 0x0 goto :goto_0 .end method .method public negate()Lcom/google/common/base/CharMatcher; .locals 1 .prologue .line 623 new-instance v0, Lcom/google/common/base/CharMatcher$NegatedMatcher; invoke-direct {v0, p0}, Lcom/google/common/base/CharMatcher$NegatedMatcher;->(Lcom/google/common/base/CharMatcher;)V return-object v0 .end method .method public or(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher; .locals 2 .prologue .line 720 new-instance v1, Lcom/google/common/base/CharMatcher$Or; invoke-static {p1}, Lcom/google/common/base/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/google/common/base/CharMatcher; invoke-direct {v1, p0, v0}, Lcom/google/common/base/CharMatcher$Or;->(Lcom/google/common/base/CharMatcher;Lcom/google/common/base/CharMatcher;)V return-object v1 .end method .method public precomputed()Lcom/google/common/base/CharMatcher; .locals 1 .prologue .line 765 invoke-static {p0}, Lcom/google/common/base/Platform;->precomputeCharMatcher(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher; move-result-object v0 return-object v0 .end method .method precomputedInternal()Lcom/google/common/base/CharMatcher; .locals 6 .annotation build Lcom/google/common/annotations/GwtIncompatible; value = "java.util.BitSet" .end annotation .prologue const/4 v5, 0x0 const/high16 v3, 0x10000 .line 792 new-instance v2, Ljava/util/BitSet; invoke-direct {v2}, Ljava/util/BitSet;->()V .line 793 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->setBits(Ljava/util/BitSet;)V .line 794 invoke-virtual {v2}, Ljava/util/BitSet;->cardinality()I move-result v0 .line 795 mul-int/lit8 v1, v0, 0x2 if-gt v1, v3, :cond_0 .line 796 iget-object v1, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; invoke-static {v0, v2, v1}, Lcom/google/common/base/CharMatcher;->precomputedPositive(ILjava/util/BitSet;Ljava/lang/String;)Lcom/google/common/base/CharMatcher; move-result-object v0 .line 805 :goto_0 return-object v0 .line 799 :cond_0 invoke-virtual {v2, v5, v3}, Ljava/util/BitSet;->flip(II)V .line 800 sub-int/2addr v3, v0 .line 801 const-string v0, ".negate()" .line 802 iget-object v1, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; invoke-virtual {v1, v0}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z move-result v1 if-eqz v1, :cond_1 iget-object v1, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; iget-object v4, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; invoke-virtual {v4}, Ljava/lang/String;->length()I move-result v4 invoke-virtual {v0}, Ljava/lang/String;->length()I move-result v0 sub-int v0, v4, v0 invoke-virtual {v1, v5, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String; move-result-object v0 .line 805 :goto_1 new-instance v1, Lcom/google/common/base/CharMatcher$NegatedFastMatcher; invoke-virtual {p0}, Lcom/google/common/base/CharMatcher;->toString()Ljava/lang/String; move-result-object v4 invoke-static {v3, v2, v0}, Lcom/google/common/base/CharMatcher;->precomputedPositive(ILjava/util/BitSet;Ljava/lang/String;)Lcom/google/common/base/CharMatcher; move-result-object v0 invoke-direct {v1, v4, v0}, Lcom/google/common/base/CharMatcher$NegatedFastMatcher;->(Ljava/lang/String;Lcom/google/common/base/CharMatcher;)V move-object v0, v1 goto :goto_0 .line 802 :cond_1 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V iget-object v4, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 goto :goto_1 .end method .method public removeFrom(Ljava/lang/CharSequence;)Ljava/lang/String; .locals 5 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue .line 1058 invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v0 .line 1059 invoke-virtual {p0, v0}, Lcom/google/common/base/CharMatcher;->indexIn(Ljava/lang/CharSequence;)I move-result v1 .line 1060 const/4 v2, -0x1 if-ne v1, v2, :cond_0 .line 1082 :goto_0 return-object v0 .line 1064 :cond_0 invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C move-result-object v3 .line 1065 const/4 v0, 0x1 .line 1069 :goto_1 add-int/lit8 v1, v1, 0x1 .line 1071 :goto_2 array-length v2, v3 if-ne v1, v2, :cond_1 .line 1082 new-instance v2, Ljava/lang/String; const/4 v4, 0x0 sub-int v0, v1, v0 invoke-direct {v2, v3, v4, v0}, Ljava/lang/String;->([CII)V move-object v0, v2 goto :goto_0 .line 1074 :cond_1 aget-char v2, v3, v1 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-eqz v2, :cond_2 .line 1080 add-int/lit8 v0, v0, 0x1 goto :goto_1 .line 1077 :cond_2 sub-int v2, v1, v0 aget-char v4, v3, v1 aput-char v4, v3, v2 .line 1078 add-int/lit8 v1, v1, 0x1 goto :goto_2 .end method .method public replaceFrom(Ljava/lang/CharSequence;C)Ljava/lang/String; .locals 3 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue .line 1117 invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v0 .line 1118 invoke-virtual {p0, v0}, Lcom/google/common/base/CharMatcher;->indexIn(Ljava/lang/CharSequence;)I move-result v1 .line 1119 const/4 v2, -0x1 if-ne v1, v2, :cond_0 .line 1129 :goto_0 return-object v0 .line 1122 :cond_0 invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C move-result-object v2 .line 1123 aput-char p2, v2, v1 .line 1124 add-int/lit8 v0, v1, 0x1 :goto_1 array-length v1, v2 if-ge v0, v1, :cond_2 .line 1125 aget-char v1, v2, v0 invoke-virtual {p0, v1}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v1 if-eqz v1, :cond_1 .line 1126 aput-char p2, v2, v0 .line 1124 :cond_1 add-int/lit8 v0, v0, 0x1 goto :goto_1 .line 1129 :cond_2 new-instance v0, Ljava/lang/String; invoke-direct {v0, v2}, Ljava/lang/String;->([C)V goto :goto_0 .end method .method public replaceFrom(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String; .locals 7 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue const/4 v0, 0x0 const/4 v6, -0x1 .line 1150 invoke-interface {p2}, Ljava/lang/CharSequence;->length()I move-result v1 .line 1151 if-nez v1, :cond_0 .line 1152 invoke-virtual {p0, p1}, Lcom/google/common/base/CharMatcher;->removeFrom(Ljava/lang/CharSequence;)Ljava/lang/String; move-result-object v0 .line 1176 :goto_0 return-object v0 .line 1154 :cond_0 const/4 v2, 0x1 if-ne v1, v2, :cond_1 .line 1155 invoke-interface {p2, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v0 invoke-virtual {p0, p1, v0}, Lcom/google/common/base/CharMatcher;->replaceFrom(Ljava/lang/CharSequence;C)Ljava/lang/String; move-result-object v0 goto :goto_0 .line 1158 :cond_1 invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v2 .line 1159 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->indexIn(Ljava/lang/CharSequence;)I move-result v1 .line 1160 if-ne v1, v6, :cond_2 move-object v0, v2 .line 1161 goto :goto_0 .line 1164 :cond_2 invoke-virtual {v2}, Ljava/lang/String;->length()I move-result v3 .line 1165 new-instance v4, Ljava/lang/StringBuilder; mul-int/lit8 v5, v3, 0x3 div-int/lit8 v5, v5, 0x2 add-int/lit8 v5, v5, 0x10 invoke-direct {v4, v5}, Ljava/lang/StringBuilder;->(I)V .line 1169 :cond_3 invoke-virtual {v4, v2, v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder; .line 1170 invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder; .line 1171 add-int/lit8 v0, v1, 0x1 .line 1172 invoke-virtual {p0, v2, v0}, Lcom/google/common/base/CharMatcher;->indexIn(Ljava/lang/CharSequence;I)I move-result v1 .line 1173 if-ne v1, v6, :cond_3 .line 1175 invoke-virtual {v4, v2, v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder; .line 1176 invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 goto :goto_0 .end method .method public retainFrom(Ljava/lang/CharSequence;)Ljava/lang/String; .locals 1 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue .line 1095 invoke-virtual {p0}, Lcom/google/common/base/CharMatcher;->negate()Lcom/google/common/base/CharMatcher; move-result-object v0 invoke-virtual {v0, p1}, Lcom/google/common/base/CharMatcher;->removeFrom(Ljava/lang/CharSequence;)Ljava/lang/String; move-result-object v0 return-object v0 .end method .method setBits(Ljava/util/BitSet;)V .locals 2 .annotation build Lcom/google/common/annotations/GwtIncompatible; value = "java.util.BitSet" .end annotation .prologue .line 912 const v0, 0xffff :goto_0 if-ltz v0, :cond_1 .line 913 int-to-char v1, v0 invoke-virtual {p0, v1}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v1 if-eqz v1, :cond_0 .line 914 invoke-virtual {p1, v0}, Ljava/util/BitSet;->set(I)V .line 912 :cond_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 917 :cond_1 return-void .end method .method public toString()Ljava/lang/String; .locals 1 .prologue .line 1349 iget-object v0, p0, Lcom/google/common/base/CharMatcher;->description:Ljava/lang/String; return-object v0 .end method .method public trimAndCollapseFrom(Ljava/lang/CharSequence;C)Ljava/lang/String; .locals 7 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue const/4 v6, 0x0 .line 1300 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v1 move v2, v6 .line 1304 :goto_0 if-ge v2, v1, :cond_0 invoke-interface {p1, v2}, Ljava/lang/CharSequence;->charAt(I)C move-result v0 invoke-virtual {p0, v0}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v0 if-eqz v0, :cond_0 add-int/lit8 v2, v2, 0x1 goto :goto_0 .line 1305 :cond_0 add-int/lit8 v0, v1, -0x1 :goto_1 if-le v0, v2, :cond_1 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v3 invoke-virtual {p0, v3}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v3 if-eqz v3, :cond_1 add-int/lit8 v0, v0, -0x1 goto :goto_1 .line 1307 :cond_1 if-nez v2, :cond_2 add-int/lit8 v1, v1, -0x1 if-ne v0, v1, :cond_2 invoke-virtual {p0, p1, p2}, Lcom/google/common/base/CharMatcher;->collapseFrom(Ljava/lang/CharSequence;C)Ljava/lang/String; move-result-object v0 :goto_2 return-object v0 :cond_2 add-int/lit8 v3, v0, 0x1 new-instance v5, Ljava/lang/StringBuilder; add-int/lit8 v0, v0, 0x1 sub-int/2addr v0, v2 invoke-direct {v5, v0}, Ljava/lang/StringBuilder;->(I)V move-object v0, p0 move-object v1, p1 move v4, p2 invoke-direct/range {v0 .. v6}, Lcom/google/common/base/CharMatcher;->finishCollapseFrom(Ljava/lang/CharSequence;IICLjava/lang/StringBuilder;Z)Ljava/lang/String; move-result-object v0 goto :goto_2 .end method .method public trimFrom(Ljava/lang/CharSequence;)Ljava/lang/String; .locals 3 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue .line 1195 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v2 .line 1199 const/4 v0, 0x0 move v1, v0 :goto_0 if-ge v1, v2, :cond_0 .line 1200 invoke-interface {p1, v1}, Ljava/lang/CharSequence;->charAt(I)C move-result v0 invoke-virtual {p0, v0}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v0 if-nez v0, :cond_2 .line 1204 :cond_0 add-int/lit8 v0, v2, -0x1 :goto_1 if-le v0, v1, :cond_1 .line 1205 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-nez v2, :cond_3 .line 1210 :cond_1 add-int/lit8 v0, v0, 0x1 invoke-interface {p1, v1, v0}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence; move-result-object v0 invoke-interface {v0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .line 1199 :cond_2 add-int/lit8 v0, v1, 0x1 move v1, v0 goto :goto_0 .line 1204 :cond_3 add-int/lit8 v0, v0, -0x1 goto :goto_1 .end method .method public trimLeadingFrom(Ljava/lang/CharSequence;)Ljava/lang/String; .locals 3 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue .line 1223 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v1 .line 1224 const/4 v0, 0x0 :goto_0 if-ge v0, v1, :cond_1 .line 1225 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v2 invoke-virtual {p0, v2}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v2 if-nez v2, :cond_0 .line 1226 invoke-interface {p1, v0, v1}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence; move-result-object v0 invoke-interface {v0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v0 .line 1229 :goto_1 return-object v0 .line 1224 :cond_0 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 1229 :cond_1 const-string v0, "" goto :goto_1 .end method .method public trimTrailingFrom(Ljava/lang/CharSequence;)Ljava/lang/String; .locals 2 .annotation runtime Ljavax/annotation/CheckReturnValue; .end annotation .prologue .line 1242 invoke-interface {p1}, Ljava/lang/CharSequence;->length()I move-result v0 .line 1243 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_1 .line 1244 invoke-interface {p1, v0}, Ljava/lang/CharSequence;->charAt(I)C move-result v1 invoke-virtual {p0, v1}, Lcom/google/common/base/CharMatcher;->matches(C)Z move-result v1 if-nez v1, :cond_0 .line 1245 const/4 v1, 0x0 add-int/lit8 v0, v0, 0x1 invoke-interface {p1, v1, v0}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence; move-result-object v0 invoke-interface {v0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String; move-result-object v0 .line 1248 :goto_1 return-object v0 .line 1243 :cond_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 1248 :cond_1 const-string v0, "" goto :goto_1 .end method .method withToString(Ljava/lang/String;)Lcom/google/common/base/CharMatcher; .locals 1 .prologue .line 775 new-instance v0, Ljava/lang/UnsupportedOperationException; invoke-direct {v0}, Ljava/lang/UnsupportedOperationException;->()V throw v0 .end method