lime
Lime is a C++ library implementing Open Whisper System Signal protocol
Loading...
Searching...
No Matches
tagging.hpp File Reference

Go to the source code of this file.

Classes

struct  jni::ObjectTag
struct  jni::StringTag
struct  jni::ClassTag
struct  jni::ArrayTag< T >
struct  jni::SuperTag< Tag, class >
struct  jni::SuperTag< Tag, decltype(std::declval< typename Tag::SuperTag >(), 0) >
struct  jni::TagTraits< Tag, Enable >
struct  jni::TagTraits< ObjectTag >
struct  jni::TagTraits< StringTag >
struct  jni::TagTraits< ClassTag >
struct  jni::TagTraits< ArrayTag< E >, std::enable_if_t< IsPrimitive< E >::value > >
struct  jni::TagTraits< ArrayTag< Object< Tag > > >

Namespaces

namespace  jni

Typedefs

template<class T>
using jni::UntaggedType = decltype(Untag(std::declval<T>()))

Functions

template<class T>
auto jni::Tag (JNIEnv &, T primitive) -> std::enable_if_t< IsPrimitive< T >::value, T >
template<class T, class U>
auto jni::Tag (JNIEnv &env, U *u) -> std::enable_if_t< !IsPrimitive< T >::value, Input< T > >
template<class T, class U>
auto jni::Tag (JNIEnv &env, U &u) -> std::enable_if_t< !IsPrimitive< T >::value, Input< T > >
template<class T>
auto jni::Untag (T primitive) -> std::enable_if_t< IsPrimitive< T >::value, T >
template<class T>
auto jni::Untag (const T &t) -> std::enable_if_t< !IsPrimitive< T >::value, decltype(t.get()) >