1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
6 #ifndef BASE_ANDROID_JNI_GENERATOR_JNI_GENERATOR_HELPER_H_
7 #define BASE_ANDROID_JNI_GENERATOR_JNI_GENERATOR_HELPER_H_
11 #include "base/android/jni_android.h"
12 #include "base/android/scoped_java_ref.h"
13 #include "base/basictypes.h"
14 #include "base/logging.h"
16 // Project-specific macros used by the header files generated by
17 // jni_generator.py. Different projects can then specify their own
18 // implementation for this file.
19 #define CHECK_NATIVE_PTR(env, jcaller, native_ptr, method_name, ...) \
20 DCHECK(native_ptr) << method_name;
22 #define CHECK_CLAZZ(env, jcaller, clazz, ...) \
25 namespace jni_generator
{
27 inline void HandleRegistrationError(JNIEnv
* env
, jclass clazz
,
28 const char* filename
) {
29 LOG(ERROR
) << "RegisterNatives failed in " << filename
;
32 inline void CheckException(JNIEnv
* env
) {
33 base::android::CheckException(env
);
36 } // namespace jni_generator
38 using base::android::ScopedJavaLocalRef
;
39 using base::android::JavaParamRef
;
41 #endif // BASE_ANDROID_JNI_GENERATOR_JNI_GENERATOR_HELPER_H_