text: // AUTOGENERATED FILE - DO NOT MODIFY!
  // This file was generated by Djinni from djinni_perf_benchmark.djinni
  
  #include "NativeDjinniPerfBenchmark.hpp"  // my header
  #include "DataRef_jni.hpp"
  #include "DataView_jni.hpp"
  #include "Marshal.hpp"
  #include "NativeEnumSixValue.hpp"
  #include "NativeObjectNative.hpp"
  #include "NativeObjectPlatform.hpp"
  #include "NativeRecordSixInt.hpp"
  
  namespace djinni_generated {
  
  NativeDjinniPerfBenchmark::NativeDjinniPerfBenchmark() : ::djinni::JniInterface<::snapchat::djinni::benchmark::DjinniPerfBenchmark, NativeDjinniPerfBenchmark>("com/snapchat/djinni/benchmark/DjinniPerfBenchmark$CppProxy") {}
  
  NativeDjinniPerfBenchmark::~NativeDjinniPerfBenchmark() = default;
  
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_nativeDestroy(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef)
  {
      try {
          delete reinterpret_cast<::djinni::CppProxyHandle<::snapchat::djinni::benchmark::DjinniPerfBenchmark>*>(nativeRef);
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_getInstance(JNIEnv* jniEnv, jobject /*this*/)
  {
      try {
          auto r = ::snapchat::djinni::benchmark::DjinniPerfBenchmark::getInstance();
          return ::djinni::release(::djinni_generated::NativeDjinniPerfBenchmark::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jlong JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1cppTests(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->cppTests();
          return ::djinni::release(::djinni::I64::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1baseline(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->baseline();
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argString(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jstring j_s)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argString(::djinni::String::toCpp(jniEnv, j_s));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argBinary(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jbyteArray j_b)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argBinary(::djinni::Binary::toCpp(jniEnv, j_b));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argDataRef(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, ::djinni::NativeDataRef::JniType j_r)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argDataRef(::djinni::NativeDataRef::toCpp(jniEnv, j_r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argDataView(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, ::djinni::NativeDataView::JniType j_d)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argDataView(::djinni::NativeDataView::toCpp(jniEnv, j_d));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argEnumSixValue(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_e)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argEnumSixValue(::djinni_generated::NativeEnumSixValue::toCpp(jniEnv, j_e));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argRecordSixInt(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_r)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argRecordSixInt(::djinni_generated::NativeRecordSixInt::toCpp(jniEnv, j_r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argListInt(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_v)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argListInt(::djinni::List<::djinni::I64>::toCpp(jniEnv, j_v));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argArrayInt(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_v)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argArrayInt(::djinni::Array<::djinni::I64, ::djinni::JavaClassName<'J'>>::toCpp(jniEnv, j_v));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argObject(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_c)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argObject(::djinni_generated::NativeObjectPlatform::toCpp(jniEnv, j_c));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argListObject(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_l)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argListObject(::djinni::List<::djinni_generated::NativeObjectPlatform>::toCpp(jniEnv, j_l));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argListRecord(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_l)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argListRecord(::djinni::List<::djinni_generated::NativeRecordSixInt>::toCpp(jniEnv, j_l));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT void JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1argArrayRecord(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jobject j_a)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          ref->argArrayRecord(::djinni::List<::djinni_generated::NativeRecordSixInt>::toCpp(jniEnv, j_a));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, )
  }
  
  CJNIEXPORT jlong JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnInt(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jlong j_i)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnInt(::djinni::I64::toCpp(jniEnv, j_i));
          return ::djinni::release(::djinni::I64::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jstring JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnString(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnString(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::String::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jbyteArray JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnBinary(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnBinary(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::Binary::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnObject(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnObject();
          return ::djinni::release(::djinni_generated::NativeObjectNative::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnListInt(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnListInt(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::List<::djinni::I64>::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnArrayInt(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnArrayInt(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::Array<::djinni::I64, ::djinni::JavaClassName<'J'>>::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnListObject(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnListObject(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::List<::djinni_generated::NativeObjectNative>::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnListRecord(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnListRecord(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::List<::djinni_generated::NativeRecordSixInt>::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jobject JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1returnArrayRecord(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jint j_size)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->returnArrayRecord(::djinni::I32::toCpp(jniEnv, j_size));
          return ::djinni::release(::djinni::List<::djinni_generated::NativeRecordSixInt>::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  CJNIEXPORT jstring JNICALL Java_com_snapchat_djinni_benchmark_DjinniPerfBenchmark_00024CppProxy_native_1roundTripString(JNIEnv* jniEnv, jobject /*this*/, jlong nativeRef, jstring j_s)
  {
      try {
          const auto& ref = ::djinni::objectFromHandleAddress<::snapchat::djinni::benchmark::DjinniPerfBenchmark>(nativeRef);
          auto r = ref->roundTripString(::djinni::String::toCpp(jniEnv, j_s));
          return ::djinni::release(::djinni::String::fromCpp(jniEnv, r));
      } JNI_TRANSLATE_EXCEPTIONS_RETURN(jniEnv, 0 /* value doesn't matter */)
  }
  
  }  // namespace djinni_generated
  