.class public final Landroidx/core/text/ICUCompat; .super Ljava/lang/Object; .source "ICUCompat.java" # static fields .field private static final TAG:Ljava/lang/String; = "ICUCompat" .field private static sAddLikelySubtagsMethod:Ljava/lang/reflect/Method; .field private static sGetScriptMethod:Ljava/lang/reflect/Method; # direct methods .method static constructor ()V .registers 5 .line 38 :try_start_0 const-string v0, "libcore.icu.ICU" invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class; move-result-object v0 .line 39 const-string v1, "addLikelySubtags" const/4 v2, 0x1 new-array v2, v2, [Ljava/lang/Class; const-class v3, Ljava/util/Locale; const/4 v4, 0x0 aput-object v3, v2, v4 invoke-virtual {v0, v1, v2}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v0 sput-object v0, Landroidx/core/text/ICUCompat;->sAddLikelySubtagsMethod:Ljava/lang/reflect/Method; :try_end_16 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_16} :catch_17 return-void :catch_17 move-exception v0 .line 42 new-instance v1, Ljava/lang/IllegalStateException; invoke-direct {v1, v0}, Ljava/lang/IllegalStateException;->(Ljava/lang/Throwable;)V throw v1 .end method .method private constructor ()V .registers 1 .line 142 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method private static addLikelySubtags(Ljava/util/Locale;)Ljava/lang/String; .registers 5 .line 125 const-string v0, "ICUCompat" invoke-virtual {p0}, Ljava/util/Locale;->toString()Ljava/lang/String; move-result-object p0 .line 127 :try_start_6 sget-object v1, Landroidx/core/text/ICUCompat;->sAddLikelySubtagsMethod:Ljava/lang/reflect/Method; if-eqz v1, :cond_1f .line 128 filled-new-array {p0}, [Ljava/lang/Object; move-result-object v2 const/4 v3, 0x0 .line 129 invoke-virtual {v1, v3, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 check-cast v1, Ljava/lang/String; :try_end_15 .catch Ljava/lang/IllegalAccessException; {:try_start_6 .. :try_end_15} :catch_1b .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_6 .. :try_end_15} :catch_16 return-object v1 :catch_16 move-exception v1 .line 136 invoke-static {v0, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_1f :catch_1b move-exception v1 .line 133 invoke-static {v0, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I :cond_1f :goto_1f return-object p0 .end method .method private static getScript(Ljava/lang/String;)Ljava/lang/String; .registers 4 .line 110 const-string v0, "ICUCompat" const/4 v1, 0x0 :try_start_3 sget-object v2, Landroidx/core/text/ICUCompat;->sGetScriptMethod:Ljava/lang/reflect/Method; if-eqz v2, :cond_1b .line 111 filled-new-array {p0}, [Ljava/lang/Object; move-result-object p0 .line 112 invoke-virtual {v2, v1, p0}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; move-result-object p0 check-cast p0, Ljava/lang/String; :try_end_11 .catch Ljava/lang/IllegalAccessException; {:try_start_3 .. :try_end_11} :catch_17 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_3 .. :try_end_11} :catch_12 return-object p0 :catch_12 move-exception p0 .line 119 invoke-static {v0, p0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_1b :catch_17 move-exception p0 .line 116 invoke-static {v0, p0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I :cond_1b :goto_1b return-object v1 .end method .method public static maximizeAndGetScript(Ljava/util/Locale;)Ljava/lang/String; .registers 5 .line 88 const-string v0, "ICUCompat" .line 90 :try_start_2 filled-new-array {p0}, [Ljava/lang/Object; move-result-object v1 .line 91 sget-object v2, Landroidx/core/text/ICUCompat;->sAddLikelySubtagsMethod:Ljava/lang/reflect/Method; const/4 v3, 0x0 invoke-virtual {v2, v3, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; move-result-object v1 check-cast v1, Ljava/util/Locale; invoke-virtual {v1}, Ljava/util/Locale;->getScript()Ljava/lang/String; move-result-object p0 :try_end_13 .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_2 .. :try_end_13} :catch_19 .catch Ljava/lang/IllegalAccessException; {:try_start_2 .. :try_end_13} :catch_14 return-object p0 :catch_14 move-exception v1 .line 95 invoke-static {v0, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_1d :catch_19 move-exception v1 .line 93 invoke-static {v0, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I .line 97 :goto_1d invoke-virtual {p0}, Ljava/util/Locale;->getScript()Ljava/lang/String; move-result-object p0 return-object p0 .end method