# Copyright 2023 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # Keeps for method level annotations. -keepclasseswithmembers,allowaccessmodification class ** { @**org.jni_zero.AccessedByNative ; } -keepclasseswithmembers,includedescriptorclasses,allowaccessmodification,allowoptimization class ** { @**org.jni_zero.CalledByNative ; } -keepclasseswithmembers,includedescriptorclasses,allowaccessmodification,allowoptimization class ** { @**org.jni_zero.CalledByNativeUnchecked ; } # Allow unused native methods to be removed, but prevent renaming on those that # are kept. # TODO(crbug.com/315973491): Restrict the broad scope of this rule. -keepclasseswithmembernames,includedescriptorclasses,allowaccessmodification class ** { native ; } # Used when multiplexing. We don't package our own @UsedByReflection, so using this instead. -keepclasseswithmembers class !cr_allowunused,**J.N { public long *_HASH; }