aboutsummaryrefslogtreecommitdiffstats
# Keep classes and methods that have the @UsedForTesting annotation
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep @org.kelar.inputmethod.annotations.UsedForTesting class * {
    void <init>();
}
-keepclassmembers class * {
    @org.kelar.inputmethod.annotations.UsedForTesting *;
}

# Keep classes and methods that have the @ExternallyReferenced annotation
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep @org.kelar.inputmethod.annotations.ExternallyReferenced class * {
    void <init>();
}
-keepclassmembers class * {
    @org.kelar.inputmethod.annotations.ExternallyReferenced *;
}

# Keep native methods
-keepclassmembers class * {
    native <methods>;
}

# Keep classes that are used as a parameter type of methods that are also marked as keep
# to preserve changing those methods' signature.
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep class org.kelar.inputmethod.latin.AssetFileAddress {
    void <init>();
}
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep class org.kelar.inputmethod.latin.Dictionary {
    void <init>();
}
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep class org.kelar.inputmethod.latin.NgramContext {
    void <init>();
}
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep class org.kelar.inputmethod.latin.makedict.ProbabilityInfo {
    void <init>();
}
# TODO(b/373579455): Evaluate if <init> needs to be kept.
-keep class org.kelar.inputmethod.latin.utils.LanguageModelParam {
    void <init>();
}

# TODO: remove once used in code.
-keep class org.kelar.inputmethod.keyboard.KeyboardLayout { *; }