Loading...
Searching...
No Matches
native_method.hpp File Reference

Go to the source code of this file.

## Classes

struct | jni::NativeMethodTraits< R(Args...) >
struct | jni::NativeMethodTraits< R(*)(Args...) >
struct | jni::NativeMethodTraits< R(T::*)(Args...) const >
struct | jni::NativeMethodTraits< R(T::*)(Args...) >
struct | jni::NativeMethodTraits< M, std::enable_if_t< std::is_class< M >::value > >
struct | jni::NativeMethodMaker< R(T::*)(JNIEnv &, Subject, Args...) const >
struct | jni::NativeMethodMaker< void(T::*)(JNIEnv &, Subject, Args...) const >
struct | jni::NativeMethodMaker< R(JNIEnv &, Subject, Args...), method >
| High-level, function pointer. More...
struct | jni::NativeMethodMaker< void(JNIEnv &, Subject, Args...), method >
class | jni::NativePeerLambdaMethod< L, R(L::*)(JNIEnv &, P &, Args...) const >
class | jni::NativePeerFunctionPointerMethod< R(JNIEnv &, P &, Args...), method >
class | jni::NativePeerMemberFunctionMethod< R(P::*)(JNIEnv &, Args...), method >
struct | jni::NativePeerHelper< Peer, TagType, std::unique_ptr< Peer >(JNIEnv &, Args...) >

## Namespaces

namespace | jni

## Functions

template<class M>
auto | jni::MakeNativeMethod (const char *name, const char *sig, const M &m, std::enable_if_t< std::is_class< M >::value > *=nullptr)
| Low-level, lambda.
template<class M, M method>
auto | jni::MakeNativeMethod (const char *name, const char *sig)
| Low-level, function pointer.
template<class M>
auto | jni::MakeNativeMethod (const char *name, const M &m)
template<class M, M method>
auto | jni::MakeNativeMethod (const char *name)
template<class L>
auto | jni::MakeNativePeerMethod (const char *name, const L &lambda, std::enable_if_t< std::is_class< L >::value > *=nullptr)
template<class M, M method>
auto | jni::MakeNativePeerMethod (const char *name, std::enable_if_t< !std::is_member_function_pointer< M >::value > *=nullptr)
template<class M, M method>
auto | jni::MakeNativePeerMethod (const char *name, std::enable_if_t< std::is_member_function_pointer< M >::value > *=nullptr)
template<class Peer, class TagType, class... Methods>
void | jni::RegisterNativePeer (JNIEnv &env, const Class< TagType > &clazz, const char *fieldName, Methods &&... methods)
template<class Peer, class TagType, class Initializer, class... Methods>
void | jni::RegisterNativePeer (JNIEnv &env, const Class< TagType > &clazz, const char *fieldName, Initializer initialize, const char *initializeMethodName, const char *finalizeMethodName, Methods &&... methods)
template<class Peer, class... Args>
std::unique_ptr< Peer > | jni::MakePeer (jni::JNIEnv &env, Args... args)